Upgrade

本页介绍 MikroTik 设备的 RouterOS 升级流程,涵盖基于发布通道(Long term、Stable、Testing、Development)的自动更新、通过 WinBox/WebFig/FTP 手动升级,以及引导加载器升级建议。文中解释了版本编号规则、更新工作流,并给出关键安全步骤的故障排查警告。

Upgrade(升级)

MikroTik 设备出厂即预装 RouterOS,因此通常无需安装——除非要在裸机 x86 PC 上安装 RouterOS,或使用 CHR 镜像在虚拟机上安装。对已安装的设备而言,升级过程非常简单。

版本编号

RouterOS 版本按顺序编号,用句点分隔各段。句点不代表小数点,各段也不具有位权意义。例如标识 2.5 不是 "两点五",也不是 "接近版本三的一半",而是第二个一级修订的第 5 个二级修订。因此 v5.2 比 v5.18 旧,v5.18 更新。

RouterOS 版本通过若干“发布通道”发布:Long term、Stable、Testing 和 Development。升级 RouterOS 时,你可以选择从哪个发布通道安装新软件包:

  • Long term:发布频率低,仅包含最关键的修复。同一编号分支内的升级不包含新功能。当 Stable 版本发布一段时间并显得足够稳定后,会被晋升到 long-term 分支,替换掉较旧的版本,后者则移入归档。这会持续不断地引入新功能。
  • Stable:每隔几个月发布一次,包含所有经过测试的新功能和修复。
  • Testing:每隔几周发布一次,只经过基本的内部测试,不应在生产环境中使用。
  • Development:必要时发布。包含原始改动,供软件爱好者测试新功能。
<center>![](https://manual.mikrotik.com/getting-started/installation-and-upgrade/img/upgrade-01.webp)</center>

标准升级

package 升级功能会从路由器通过 HTTPS 连接到 MikroTik 下载服务器,检查所选发布通道中是否有更新的 RouterOS 版本。该菜单也可用于降级——只需把通道切换到提供更旧但更稳定版本的通道。该功能是从路由器而非你的电脑发起连接,因此路由器本身需要具备到 MikroTik 服务器的 HTTPS 连接。

在 QuickSet 或 System → Packages 菜单中点击 Check for Updates 按钮后,会打开 Check for Updates 窗口,显示当前更新日志,或(如果存在更新版本)最新更新日志。如果有更新版本,会出现 Download 和 Download&Install 按钮。选择 Download 会下载最新版本(需要手动重启设备),选择 Download&Install 则会开始下载,并在下载成功后自动重启设备。

提供的版本取决于所选发布通道。并非所有版本都可用。使用 check-for-updates 方式无法从旧版本一步升级到最新版本。例如,如果运行的是 RouterOS v6.x,即使选择名为 "Upgrade" 的大版本升级通道,你也只会看到 v7.12.1 可用。你必须先升级到该中间版本,之后更新版本才会出现在各通道中。这个中间步骤也可以用 check for updates 完成;只需在首次更新到中间版本后再次执行 check for updates。

如果安装了自定义软件包,下载器会考虑这一点,并下载所有必要的软件包。

Check for Updates 设置

可以通过 System → Packages → Check for Updates 窗口,或 /system/package/update/set 命令微调与 MikroTik 下载服务器的连接:

  • Channel:检查新版本时使用的升级通道。各发布通道在版本编号一节中有说明。
  • Mode:连接 MikroTik 下载服务器使用的协议。仅当你的网络封锁 HTTPS 时才使用 http。推荐使用 HTTPS。
  • IP version:连接 MikroTik 下载服务器时优先使用的 IP 版本。
  • Check certificate:是否以及如何校验服务器 SSL 证书。请始终使用 yes 以确保连接安全。可用 yes-without-crl 跳过 CRL 校验。
/system/package/update/set channel=stable mode=https ip-version=auto check-certificate=yes

警告

强烈建议在 RouterOS 更新后升级引导加载器(bootloader)。要升级引导加载器,请在 CLI 中执行 /system/routerboard/upgrade 命令,然后重启。也可以进入 GUI 的 System → RouterBOARD 菜单,点击 "Upgrade" 按钮,然后重启设备。 你可以在系统调度器中运行脚本来自动化升级过程。该脚本会向 MikroTik 升级服务器查询新版本。如果收到的响应是 "New version is available",脚本随后执行下面的升级命令。如果你是在较旧版本上首次运行,这一方式不会生效。它可能看不到最新版本——如果你运行的是 v6.x,你必须先手动选择 "Upgrade" 通道,执行一次大版本升级到 v7.12.1 中间版本,之后较新的 v7 版本才会出现在升级通道中。

/system/package/update/check-for-updates
:delay 3s;
:if ( [/system/package/update get status] = "New version is available") do={ /system/package/update/install }

故障排查

如果设备未检测到可用升级,请确认它能解析并访问升级服务器。

:put [:resolve upgrade.mikrotik.com]

结果应为 159.148.147.251。如果该地址无法解析,或解析到其他 IP,请检查你的 DNS 设置。更多信息请参阅 DNS 一文。

确认 DNS 解析正常后,验证设备能否访问服务器:

/tool/ping address=159.148.147.251

如果 ping 失败,请检查防火墙规则、路由或上游连接。

确认 IP 连接正常后,验证 443 端口是否可达:

[admin@MikroTik] > /system/telnet 159.148.147.251 port=443
Connecting to 159.148.147.251
Connected to 159.148.147.251

手动升级

你可以通过以下方式升级 RouterOS:

  • WinBox —— 把文件拖放到 Files 菜单。
  • WebFig —— 从 Files 菜单上传文件。
  • FTP —— 把文件上传到根目录。

警告

强烈建议在升级 RouterOS 后升级引导加载器。要升级引导加载器,请在 CLI 中执行 /system/routerboard/upgrade 命令,然后重启。也可以进入 GUI 的 System → RouterBOARD 菜单,点击 "Upgrade" 按钮,然后重启设备。

警告: RouterOS 无法通过串口线升级。只有 RouterBOOT 可以用这种方式升级。

手动升级流程

  • 访问 www.mikrotik.com,进入 Software 页面,选择你安装 RouterOS 的系统架构(系统架构可在 System → Resource 区域查看)。
  • 下载 routeros (main) 以及设备上已安装的附加软件包。
  • 用上述任一方法把软件包上传到设备。

如果你需要跳过某些特定包的升级,或某个包文件已不再提供,可使用 /system/package/update/install ignore-missing 跳过缺失的包。

使用 WinBox

选择你的系统类型并下载升级包。用 WinBox 连接到路由器。用鼠标选中下载的文件,把它拖到 Files 菜单。如果已有一些文件,请确保把包放在根菜单中,而不是 hotspot 文件夹内!上传随即开始。

<center>![](https://manual.mikrotik.com/getting-started/installation-and-upgrade/img/upgrade-02.webp)</center>

上传完成后,重启设备。新版本号会显示在 WinBox 标题栏和 Packages 菜单中。

使用 S/FTP

  • 打开 S/FTP 客户端,选择软件包并上传到路由器。
  • 你可以检查文件是否成功传输到路由器(可选)。
[admin@MikroTik] >/file/print
Columns: NAME, TYPE, SIZE, CREATION-TIME
#  NAME                  TYPE       SIZE     CREATION-TIME       
0  routeros-7.9-arm.npk  package    13.0MiB  2023-05-18 16:16:18
1  pub                   directory           2022-11-04 11:22:19
2  ramdisk               directory           1970-01-01 03:00:24
  • 重启设备以开始升级。
[admin@MikroTik] >/system/reboot
Reboot, yes? [y/N]: y

  • 重启后,你的路由器即为最新版本,可以在下面的菜单中查看:
/system/package/print

  • 如果路由器未能正确升级,请务必查看 log
/log/print without-paging

RouterOS 本地升级

你可以在本地网络中,使用一台拥有所有所需软件包的设备上的 /system/package/local-update 工具,升级一台或多台 MikroTik 路由器。下面是一个包含 3 台路由器的简单示例(相同方法适用于任意数量的路由器):

  • 在主路由器的 Files 菜单下放置所需的软件包:
<center>![](https://manual.mikrotik.com/getting-started/installation-and-upgrade/img/upgrade-03.webp)</center>

可选: 你可以在主设备之间设置一台镜像设备。如果不需要,请跳过此步骤:

  • 选择 Local Package Sources 并启用 Mirror device。设置软件包所在的 Primary Server(10.155.136.50)。Check Interval 的最小值可设为 00:07:12,届时设备会通过 WinBox 连接到主设备并检查软件包。 如果有新软件包可用,它会开始下载。下载过程较慢,文件较多时可能需要一些时间。如果出现某些失败,下载会在下次 Check 时继续。
<center>![](https://manual.mikrotik.com/getting-started/installation-and-upgrade/img/upgrade-04.webp)</center>
  • 会创建一个新的 packs 文件夹,镜像设备将在其中存储软件包:
<center>![](https://manual.mikrotik.com/getting-started/installation-and-upgrade/img/upgrade-05.webp)</center>
  • 在将要升级的设备上新增一个软件包来源,本示例中使用镜像设备 10.155.136.71:
<center>![](https://manual.mikrotik.com/getting-started/installation-and-upgrade/img/upgrade-06.webp)</center>
  • 当你在 Local Update 的 packages 选项卡中点击 Refresh 时,WinBox 中的设备会连接到来源并检查是否有新软件包。
<center>![](https://manual.mikrotik.com/getting-started/installation-and-upgrade/img/upgrade-07.webp)</center>
  • 选择软件包并点击 Download。下载完成后,重启设备。
<center>![](https://manual.mikrotik.com/getting-started/installation-and-upgrade/img/upgrade-08.webp)</center>
  • 使用 /system/package/local-update/refresh 可以在脚本中自动执行此操作。Fetch 工具可用于从我们的网页下载软件包,例如:
/tool/fetch url=https://download.mikrotik.com/routeros/7.16.1/routeros-7.16.1-arm.npk