在制作路由器固件过程中, 由于操作不当可能导致路由器变成"砖头", 无法正常启动。在这种情况下, 我们可以通过串口连接和 TFTP 恢复固件。下面以 WITI 路由器为例, 介绍如何用 TFTP 恢复路由器。
准备工作
-
你需要准备好要烧写的
.bin
文件 -
下载并安装 tftpd32 下载地址
-
把下载好的固件
.bin
文件复制到 tftpd32 的同级目录下。这一步很重要 -
连接好路由器的串口线, 确保你知道 COM 端口和波特率 (在本例中波特率为 57600)
烧录固件步骤
连接到路由器的串口
使用 Putty 连接到路由器的串口, 协议选择 Serial
在 Putty 配置中设置 COM 端口和波特率 (57600)
连接进入自己的板子
进入 CFE (Common Firmware Environment)
在连接成功后, 执行 reboot
重启路由器。系统会进入 CFE, 它就是一个 bootloader, 类似 u-boot, redboot 之类, 这时会显示一个提示, 在 1~2 秒内等待由 TFTP 上传固件并烧写到 flash 上
你会看到一个选择菜单, 选择 2
后按 Y
继续
看到这里, 有一个 server IP
, 这个就是我们需要填写 tftpd32 的 ip 地址
配置 IP 地址
网线连接到路由器, 配置路由器的 IP 地址和子网掩码, 确保它与本地机器在同一个网段。
例如, 设置路由器的 IP 为 10.10.10.3
。如图填写 IP 地址和子网掩码
启动 TFTP 服务器
打开 tftpd32 软件, 选择之前设置的 10.10.10.3
作为服务器 IP
OK, 现在可以进行烧写了
烧写固件
由于之前我们将 .bin 文件放在了 tftpd32 的同级目录下, 输入要烧写的固件文件名称 (如 test.bin
), 然后回车开始烧写
在这里, tftpd32 会使用我们的 test.bin
, 会看到 Got it
, 表示正在开始烧写过程
烧写完成后, tftpd32 会显示 done
信息, 表示固件已成功写入路由器的 Flash 存储。
现在已经成功将 “成砖” 的路由器恢复正常。此时可以开始重新配置和研究你的路由器了!
原文