FlashFig
FlashFig 是一个 Windows 实用工具,通过在二层网络中于数秒内传输 RouterOS 设置,实现 MikroTik RouterBOARD 的快速批量配置。它支持 flash-boot 模式用于自动化置备,并包含在较旧型号上启用它及使用脚本的详细说明。
FlashFig
描述
FlashFig 是一个基于 Windows 的实用工具,专为 MikroTik RouterBOARD 的批量配置而设计。它面向 MikroTik 经销商、互联网服务提供商,以及需要向多台设备快速部署 RouterOS 配置的其他组织。
当 RouterBOARD 被置于 flash-boot 模式,并在承载 FlashFig 的二层广播域内上电时,该应用会在约三秒内把目标 RouterOS 配置文件传输到设备。因此,把每台 RouterBOARD 连接到同一个二层网络并为启用了 FlashFig 的设备供电,即可同时置备一批路由器。
FlashFig 实用工具可从 MikroTik 下载 页面获取。
自 2010 年 3 月起生产的所有 RouterBOARD 默认都启用 FlashFig 模式。对于较旧型号,可以在 RouterBOARD 设置中把 boot-device 设置为 flash-boot 或 flash-boot-once-then-nand 来激活 FlashFig:
/system/routerboard/settings/set boot-device=flash-boot-once-then-nand
# 或
/system/routerboard/settings/set boot-device=flash-boot
信息
每次从软件发起系统重置,或使用 reset 按钮重置路由器后,都会进入 flash boot 模式。
如果你在上电前按住 reset 按钮,则会使用备用 booter。 全新 RouterBOARD 上的 FlashFig 模式只有在首次成功用户登录或成功完成 FlashFig 尝试后,才会在后续启动中禁用,以避免日后发生非预期的重新配置。要在同一台路由器上第二次使用 FlashFig,你需要在 RouterBOARD 设置中启用 flash-boot(成功更改配置或任何用户登录该板后,该设置会恢复为 NAND)。
如果之后使用了 RouterOS reset-configuration 命令(或使用 Reset 按钮进行配置重置),会加载 FlashFig 配置。要永久覆盖,请使用 Netinstall 流程并勾选 Apply default configuration,或在基于 Linux 的命令行中使用 -r 标志。
从 RouterOS/FlashFig 7.22 起,你可以使用 Mode 脚本配置 device-mode、protected-routerboot 和其他设置。Mode 脚本会在任何自定义或默认配置脚本之前执行。执行完成后,脚本会自动从设备中移除。如果脚本修改了 device-mode,设备会在执行后立即重启。
你可以在 MikroTik YouTube 频道观看 FlashFig 视频教程。
FlashFig 示例
以下是把选定的 MikroTik RouterOS 配置应用到“全新出厂”RouterBOARD 的 FlashFig 流程分步示例。
要求
Windows 计算机必须配备以下端口并包含以下文件:
- 一个可用的以太网端口。
- 有效的 Config 和/或 Mode 脚本文件,其中包含类似于 export/import 文件 的 MikroTik RouterOS 配置。除了有效的 MikroTik RouterOS CLI 命令外,你还可以使用只读变量 $defconfPassword 和 $defconfWifiPassword 重新应用出厂密码;
- 始终使用 下载 页面上提供的最新 FlashFig 程序。
- RouterBOARD 必须处于 flash-boot 模式。如果这是首次启动,则无需做任何操作。
信息
请注意文本编辑器对 CR/LF 字符的处理,并在使用 FlashFig 应用之前,先在相同版本的 RouterOS 上正常应用该配置以测试其中没有错误,因为运行时错误是不可见的!
预配置
Windows 计算机
- 运行 FlashFig。
- 准备 Config 和/或 Mode 脚本 .rsc 文件。Config 和/或 Mode 脚本文件是常规/import 文件,它接受有效的 MikroTik RouterOS CLI 命令。你可以用任何文本编辑器程序(Notepad、Notepad++、Text Editor、TextEdit、Microsoft Word、OpenOffice Writer)创建 .rsc 文件。

- 指定 Boot Client Address,它应是计算机以太网接口上所配置的同一子网内的地址。

- 浏览 Config 和/或 Mode 脚本 .rsc 文件

- 高亮 Config 脚本文件并 Select Config,高亮 Mode 脚本文件并 Select Mode。

- 激活 FlashFig 服务器。现在它已准备好进行 FlashFig。当网络中任何 RouterBOARD 上电且 boot-device 配置为 flash-boot 或 flash-boot-once-then-nand 时,它就会被 FlashFig。

RouterBOARD
-
每台 RouterBOARD 出厂时默认启用 FlashFig 模式,这意味着 RouterBOARD 上无需任何配置。
-
如果你的路由器未启用 FlashFig,请使用 WinBox/Console 访问 RouterBOARD 并把 boot-device 改为 flash-boot 或 flash-boot-once-then-nand:
/system/routerboard/settings/set boot-device=flash-boot
或者使用更可取的选项,即单次启动 flash-boot:
/system/routerboard/settings/set boot-device=flash-boot-once-then-nand
你的路由器现在已准备好进行 FlashFig。
连接
把 RouterBOARD 的 Boot 端口和 FlashFig 计算机连接到同一个局域网。
运行 FlashFig
- 为 RouterBOARD 插上电源。
- 在 FlashFig 程序上检查状态。

消息日志显示 "Flashfigged",并且 RouterBOARD 反复发出字符 "/" 的摩尔斯电码声音("_.._." 并闪烁 LED)——现在可以安全地拔掉电源 / 关闭路由器:
- FlashFig 配置已应用到 RouterBOARD,它已准备好带着这个新配置投入生产使用。
故障排查
FlashFig 找不到路由器
如果 PC 与路由器之间还有另一台设备(路由器/交换机),请确保对该设备:
- DHCP server 已禁用。
- 如果所用端口位于 bridge 中,请把 bridge 的 protocol-mode 设为 none。
- 所用端口的 HW-offload 已禁用。
FlashFig 找到路由器,但没有执行刷写(没有 TFTP 请求)
确保运行 FlashFig 的计算机只有一个活动的网络接口。
FlashFig 已完成,但配置未应用
如果所有过程都成功,但 .rsc 文件中的 RouterOS 配置未应用,请在 *.rsc 配置文件中添加启动延迟。原因可能是配置脚本在所有接口启动之前就被执行了。
Not enough flash space, ignoring
FlashFig 配置的最大文件大小可达 4000 字节,否则程序会返回前述错误。