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 字节,否则程序会返回前述错误。