我有 D-Link DIR-300 (Rev.A1),已刷入 OpenWRT “BARRIER BREAKER”(Bleeding Edge,r41531) 固件。刷机过程按照以下指南进行:http://wiki.openwrt.org/toh/d-link/dir-300
不幸的是 - 此固件不稳定。尝试使用 opkg、sysupgrade 甚至 wget 等命令会导致路由器重新启动。此时路由器无法使用,因为我需要 Web 界面 (LuCI) 而无法安装。
我认为正确的做法是刷新到另一个版本,也许是预装了 LuCI 的版本。为此,我需要访问引导加载程序,因为每次尝试使用 sysupgrade 都失败了(路由器重新启动)。
此时如何访问引导加载程序?
在原始固件中,有一秒钟的时间窗口,在此期间我可以通过 WAN 端口通过 192.168.20.81 端口 9000 上的 telnet 进入引导加载程序。这不再可能。
在启动过程中,路由器似乎有 5 秒钟的时间响应对 192.168.1.1 的 ping 命令,但在此期间我尝试通过端口 9000 进行 telnet 时出现“连接被拒绝”的情况。
在http://www.dd-wrt.com/wiki/index.php/Micro_Redboot我发现:
在电源循环时,在开关 LED 亮起后按住重置按钮 2 秒钟以启用 redboot 访问。几秒钟后,您可以通过 Telnet 在 192.168.1.1 端口 9000 上访问它,时间在“启动脚本超时”中设置。
...但这不起作用。启动脚本超时设置为“5”,它似乎与我看到的 5 秒 ping 响应一致。
我做可以通过 SSH 访问路由器。也许我可以做些什么来将引导加载程序置于“初始启动”模式?或者也许我误解了上面引用的说明?任何有关访问引导加载程序或其他刷新设备选项的帮助都将不胜感激。
答案1
您需要在进行初始刷新时密切关注 fconfig 的输出,以检查此特定映像使用了哪个地址。如果您没有日志,请查看特定硬件的 openwrt 安装文档,它们通常有每个命令的完整输出。
http://wiki.openwrt.org/toh/d-link/dir-300:
DD-WRT>fconfig
Run script at boot: true
[...]
Local IP address: 192.168.1.10
您可以通过 Telnet 访问 192.168.1.10 端口 9000 上的引导加载程序五秒钟。在单独的终端中使用 ping 来确定地址何时可用。