如何在 hEX PoE Lite (RB750UPr2) 上刷入 OpenWRT

重要提示:刷入 OpenWRT 会永久破坏 PoE 输出功能,即使重新安装 RouterOS 后也是如此!PoE 在 OpenWRT 上也不工作!

我在按照 OpenWRT wiki 上所述的官方说明在 MikroTik hEX PoE Lite 上刷入 OpenWRT 时遇到了重大问题。我使用 RouterOS 7.4.1 和 Linux 主机进行刷入过程。

具体来说,从 RouterOS 内通过 System -> RouterBoard -> Settings 启动刷入过程**不起作用,**无论是有备份引导加载程序还是没有,无论是 DHCP 还是 BOOTP。这导致了启动和 DHCP 请求循环,日志如下所示

在 RB750UPr2 上刷入 OpenWRT 的步骤

… 可能还有大多数其他 RouterOS 板。对固件版本没有特定要求。RouterOS 6.47 可以工作。RouterOS 7.4.1 可以工作。我没有检查除此之外的任何版本,但很可能不会有区别。具体来说,如果使用此方法,不需要降级!RouterOS 降级仅对于一些较旧的基于 Windows 的刷入方法是必要的。 1 - 从你的刷入计算机连接以太网电缆到路由器的第一个以太网连接器。

PXE 只在此特定端口上工作,在其他端口上不工作!

2 - 设置你的刷入计算机的 IP 接口配置。

在此示例中我们将使用 eth0。确保使用正确的接口

flash_openwrt_hex_poe.sh
sudo ifconfig eth0 192.168.1.10 netmask 255.255.255.0

我在某处读到 MikroTik 期望 PXE 主机位于 IP 192.168.1.10 - 这肯定有效。其他 IP 地址可能也可能工作,我没有检查。就用那个。

3 - 设置 dnsmasq

install_dnsmasq.sh
sudo apt -y install dnsmasq

然后不要忘记停止 dnsmasq 并删除默认配置

disable_move_dnsmasq.sh
sudo systemctl disable --now dnsmasq
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.default.conf

4 - 从 OpenWRT 下载正确的镜像

Google 搜索 OpenWRT + 你的 RouterBoard 类型,例如 OpenWRT RB750UPr2。这将带你到类似这个的网站。向下滚动并下载**Firmware OpenWrt Install URLFirmware OpenWrt Upgrade URL 两者!最终你两者都需要,但现在我们需要以 ...-initramfs-kernel.img 结尾的那个!**

使用原始名称保存该文件。**名称不重要 - 重要的是你使用正确的镜像,而不是用于 PXE 启动的 ...-sysupgrade.bin!**绝对不需要将文件命名为 vmlinux 等。

5 - 启动 dnsmasq 服务器

在以下命令中,确保在 --dhcp-boot 行中设置正确的镜像名称

dnsmasq_pxe_command.sh
sudo /usr/sbin/dnsmasq \
--no-daemon \
--listen-address 192.168.1.10 \
--bind-interfaces \
-p0 \
--dhcp-authoritative \
--dhcp-range=192.168.1.100,192.168.1.200 \
--bootp-dynamic \
--dhcp-boot=openwrt-19.07.10-ar71xx-mikrotik-rb-nor-flash-16M-initramfs-kernel.bin \
--log-dhcp \
--enable-tftp \
--tftp-root=$(pwd)

6 - 将路由器重置为 PXE 启动模式

如上所述,通过 RouterOS 重置对我来说根本不起作用。我只能推荐此方法,我也在我的博客文章如何使 MikroTik 路由器使用 PXE (netboot) / BOOTP 启动中描述过

  1. 拔掉路由器的所有 (!) 电源。这包括 PoE(如果使用)。检查所有 LED 是否都关闭。
  2. 按下重置按钮,你应该听到一个小咔嗒声。有时这些按钮有点难按,有时你以为按了但实际上没有,因为按钮有时比孔小。我用镊子按它。保持重置按钮按下直到你完成整个过程。
  3. 插入电源时保持按住重置按钮
  4. 同时仍然保持重置按钮按下,等待以下重置阶段:
    1. 约 5 秒后,其中一个 LED 将开始闪烁
    2. 再过 5 秒后,LED 将停止闪烁并永久亮起
    3. 再过 5 秒后,LED 将永久关闭。
  5. 只有在这三个阶段(大约 15 秒)后你看到 LED 变暗后,释放重置按钮
  6. 路由器现在应该使用 PXE 启动

7 - 继续 OpenWRT

如果重置和 PXE 启动成功,OpenWRT 运行在 192.168.1.1 上。**在大多数 MikroTik 设备上,你需要将以太网插入其中一个 LAN 端口(通常是除第一个端口外的每个端口)才能访问 OpenWRT。**注意默认情况下 DHCP 未激活。

下一步基本上是检查 OpenWRT 是否正常工作,然后使用我们之前下载的 ...-sysupgrade.bin 镜像将其安装到闪存。这相当简单,使用 Web UI 执行,最好查看 OpenWRT wiki 页面了解更多详情

通过 RouterOS 启动 PXE 刷入时的错误日志

有关有效的过程,请参见上文。此错误发生在我没有通过重置按钮启动 PXE 过程时

pxe_boot_loop_log.txt
dnsmasq-dhcp: 1534706347 vendor class: Mips_boot
dnsmasq-dhcp: 1534706347 DHCPDISCOVER(eth1) dc:2c:6e:d7:60:9d
dnsmasq-dhcp: 1534706347 tags: eth1
dnsmasq-dhcp: 1534706347 DHCPOFFER(eth1) 192.168.1.100 dc:2c:6e:d7:60:9d
dnsmasq-dhcp: 1534706347 requested options: 1:netmask, 3:router
dnsmasq-dhcp: 1534706347 bootfile name: rb-nor-flash-16M-initramfs-kernel.bin
dnsmasq-dhcp: 1534706347 next server: 192.168.1.10
dnsmasq-dhcp: 1534706347 sent size:  1 option: 53 message-type  2
dnsmasq-dhcp: 1534706347 sent size:  4 option: 54 server-identifier  192.168.1.10
dnsmasq-dhcp: 1534706347 sent size:  4 option: 51 lease-time  1h
dnsmasq-dhcp: 1534706347 sent size:  4 option: 58 T1  30m
dnsmasq-dhcp: 1534706347 sent size:  4 option: 59 T2  52m30s
dnsmasq-dhcp: 1534706347 sent size:  4 option:  1 netmask  255.255.255.0
dnsmasq-dhcp: 1534706347 sent size:  4 option: 28 broadcast  192.168.1.255
dnsmasq-dhcp: 1534706347 sent size:  4 option:  3 router  192.168.1.10
dnsmasq-dhcp: 4257818828 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 4257818828 vendor class: Mips_boot
dnsmasq-dhcp: 4257818828 DHCPDISCOVER(eth1) dc:2c:6e:d7:60:9d
dnsmasq-dhcp: 4257818828 tags: eth1
dnsmasq-dhcp: 4257818828 DHCPOFFER(eth1) 192.168.1.100 dc:2c:6e:d7:60:9d
dnsmasq-dhcp: 4257818828 requested options: 1:netmask, 3:router
dnsmasq-dhcp: 4257818828 bootfile name: rb-nor-flash-16M-initramfs-kernel.bin
dnsmasq-dhcp: 4257818828 next server: 192.168.1.10
dnsmasq-dhcp: 4257818828 sent size:  1 option: 53 message-type  2
dnsmasq-dhcp: 4257818828 sent size:  4 option: 54 server-identifier  192.168.1.10
dnsmasq-dhcp: 4257818828 sent size:  4 option: 51 lease-time  1h
dnsmasq-dhcp: 4257818828 sent size:  4 option: 58 T1  30m
dnsmasq-dhcp: 4257818828 sent size:  4 option: 59 T2  52m30s
dnsmasq-dhcp: 4257818828 sent size:  4 option:  1 netmask  255.255.255.0
dnsmasq-dhcp: 4257818828 sent size:  4 option: 28 broadcast  192.168.1.255
dnsmasq-dhcp: 4257818828 sent size:  4 option:  3 router  192.168.1.10
dnsmasq-dhcp: 1683968382 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 1683968382 vendor class: Mips_boot
dnsmasq-dhcp: 1683968382 DHCPDISCOVER(eth1) dc:2c:6e:d7:60:9d
dnsmasq-dhcp: 1683968382 tags: eth1
dnsmasq-dhcp: 1683968382 DHCPOFFER(eth1) 192.168.1.100 dc:2c:6e:d7:60:9d
dnsmasq-dhcp: 1683968382 requested options: 1:netmask, 3:router
dnsmasq-dhcp: 1683968382 bootfile name: rb-nor-flash-16M-initramfs-kernel.bin
dnsmasq-dhcp: 1683968382 next server: 192.168.1.10
dnsmasq-dhcp: 1683968382 sent size:  1 option: 53 message-type  2
dnsmasq-dhcp: 1683968382 sent size:  4 option: 54 server-identifier  192.168.1.10
dnsmasq-dhcp: 1683968382 sent size:  4 option: 51 lease-time  1h
dnsmasq-dhcp: 1683968382 sent size:  4 option: 58 T1  30m
dnsmasq-dhcp: 1683968382 sent size:  4 option: 59 T2  52m30s
dnsmasq-dhcp: 1683968382 sent size:  4 option:  1 netmask  255.255.255.0
dnsmasq-dhcp: 1683968382 sent size:  4 option: 28 broadcast  192.168.1.255
dnsmasq-dhcp: 1683968382 sent size:  4 option:  3 router  192.168.1.10
dnsmasq-dhcp: 424531201 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 424531201 vendor class: Mips_boot
dnsmasq-dhcp: 424531201 DHCPDISCOVER(eth1) dc:2c:6e:d7:60:9d
dnsmasq-dhcp: 424531201 tags: eth1
dnsmasq-dhcp: 424531201 DHCPOFFER(eth1) 192.168.1.100 dc:2c:6e:d7:60:9d
dnsmasq-dhcp: 424531201 requested options: 1:netmask, 3:router
dnsmasq-dhcp: 424531201 bootfile name: rb-nor-flash-16M-initramfs-kernel.bin
dnsmasq-dhcp: 424531201 next server: 192.168.1.10
dnsmasq-dhcp: 424531201 sent size:  1 option: 53 message-type  2
dnsmasq-dhcp: 424531201 sent size:  4 option: 54 server-identifier  192.168.1.10
dnsmasq-dhcp: 424531201 sent size:  4 option: 51 lease-time  1h
dnsmasq-dhcp: 424531201 sent size:  4 option: 58 T1  30m
dnsmasq-dhcp: 424531201 sent size:  4 option: 59 T2  52m30s
dnsmasq-dhcp: 424531201 sent size:  4 option:  1 netmask  255.255.255.0
dnsmasq-dhcp: 424531201 sent size:  4 option: 28 broadcast  192.168.1.255
dnsmasq-dhcp: 424531201 sent size:  4 option:  3 router  192.168.1.10
dnsmasq-dhcp: 3459997603 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3459997603 vendor class: Mips_boot
dnsmasq-dhcp: 3459997603 DHCPDISCOVER(eth1) dc:2c:6e:d7:60:9d
dnsmasq-dhcp: 3459997603 tags: eth1
dnsmasq-dhcp: 3459997603 DHCPOFFER(eth1) 192.168.1.100 dc:2c:6e:d7:60:9d
dnsmasq-dhcp: 3459997603 requested options: 1:netmask, 3:router
dnsmasq-dhcp: 3459997603 bootfile name: rb-nor-flash-16M-initramfs-kernel.bin
dnsmasq-dhcp: 3459997603 next server: 192.168.1.10
dnsmasq-dhcp: 3459997603 sent size:  1 option: 53 message-type  2
dnsmasq-dhcp: 3459997603 sent size:  4 option: 54 server-identifier  192.168.1.10
dnsmasq-dhcp: 3459997603 sent size:  4 option: 51 lease-time  1h
dnsmasq-dhcp: 3459997603 sent size:  4 option: 58 T1  30m
dnsmasq-dhcp: 3459997603 sent size:  4 option: 59 T2  52m30s
dnsmasq-dhcp: 3459997603 sent size:  4 option:  1 netmask  255.255.255.0
dnsmasq-dhcp: 3459997603 sent size:  4 option: 28 broadcast  192.168.1.255
dnsmasq-dhcp: 3459997603 sent size:  4 option:  3 router  192.168.1.10
dnsmasq-dhcp: 657189184 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 657189184 vendor class: Mips_boot
dnsmasq-dhcp: 657189184 DHCPDISCOVER(eth1) dc:2c:6e:d7:60:9d
dnsmasq-dhcp: 657189184 tags: eth1
dnsmasq-dhcp: 657189184 DHCPOFFER(eth1) 192.168.1.100 dc:2c:6e:d7:60:9d
dnsmasq-dhcp: 657189184 requested options: 1:netmask, 3:router
dnsmasq-dhcp: 657189184 bootfile name: rb-nor-flash-16M-initramfs-kernel.bin
dnsmasq-dhcp: 657189184 next server: 192.168.1.10
dnsmasq-dhcp: 657189184 sent size:  1 option: 53 message-type  2
dnsmasq-dhcp: 657189184 sent size:  4 option: 54 server-identifier  192.168.1.10
dnsmasq-dhcp: 657189184 sent size:  4 option: 51 lease-time  1h
dnsmasq-dhcp: 657189184 sent size:  4 option: 58 T1  30m
dnsmasq-dhcp: 657189184 sent size:  4 option: 59 T2  52m30s
dnsmasq-dhcp: 657189184 sent size:  4 option:  1 netmask  255.255.255.0
dnsmasq-dhcp: 657189184 sent size:  4 option: 28 broadcast  192.168.1.255
dnsmasq-dhcp: 657189184 sent size:  4 option:  3 router  192.168.1.10
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot
dnsmasq-dhcp: 3031796432 available DHCP range: 192.168.1.100 -- 192.168.1.200
dnsmasq-dhcp: 3031796432 vendor class: Mips_boot

Check out similar posts by category: MikroTik, Networking, OpenWRT