Netgear WNDR4300固件刷openwrt/LEDE

TL;DR Netgear WNDR4300 (v1) 是最经典的能刷openwrt及其分支的路由器,属于性价比比较好的那种。本文将介绍如何使用TFTP刷固件:特别适合于刷机失败了,连不上路由器,想要重新刷的情况。当然也可以用于第一次刷机。

之所以选择使用TFTP刷机方式,是因为这种刷机方式非常靠谱,无论你怎么把你的路由器折腾挂的:网连不上/ping不通都是可以使用的,你可以认为这个是刷机方案中的终极武器也是最后方案。

准备材料

首先你得需要一个openwrt/LEDE的启动镜像,这里推荐你使用官方的镜像,不要使用各种修改版本或者个人制作的镜像:不安全。官方镜像下载的地址如下:openwrt,LEDE,进去之后寻找你自己的设备,并下载相关的factory镜像和sysupgrade镜像)。个人推荐LEDE,有大量正统的openwrt开发者参与。

Recovery mode

无论你的路由器挂成什么样了,都能恢复到工厂设置(Factory settings)。

  • 关闭路由器电源
  • 用牙签等按住”Reset”键不放
  • 接通电源,等待指示灯从黄灯->黄灯闪烁->绿灯->绿灯闪烁
  • 松开”Reset”键

安装TFTP

这个根据各个发行版自行安装就可以了。

设置客户端

这时的路由器并没有开始DHCP服务,所以需要用户手动设置客户端的IP配置。

  • IP地址:192.168.1.2 - 192.168.1.244 任选一个,一般选择192.168.1.2
  • 网络掩码Mask:255.255.255.0
  • Gateway:192.168.1.1

使用FTP

我使用的是Linux TFTP,使用过程中遇到一个坑:你直接使用默认的TFTP设置上传镜像是会提示Transfer timeouted错误。我以为我的路由器彻底成砖头了,或者是我的网络设置有问题。后来发现Linux的TFTP需要改成binary模式才能正常上传。

连接TFTP

1
tftp 192.168.1.1

这样就会进入TFTP模式,你会看到命令提示行变成了tftp>

设置binary

设定传输模式

1
tftp> binary

设置详细模式(可选)

设定详细模式,这样你能看到更多详细的输出

1
tftp> verbose

上传image

1
tftp> put <openwrt_or_lede_factory_image>

注意这里使用的是factory镜像,不是sysupgrade镜像。另外最好不要修改image的名字,请使用官方下载时的名字,否则可能会造成无法识别的情况

重启路由

上传成功后(保险起见,稍等一分钟左右),重启服务器,即可用有线网络连接路由器。注意这个时候路由器的无线网络可能是没有打开的(因为我记不得这个细节了),无线可能找不到网络(如果能找到,那么无线网络的名字很有可能是LEDE),保险起见还是使用有线来连接服务器。连接后,注意你需要修改路由器密码和配置无线网络设置。最重要的是:默认情况下,即使你需改了无线网络的配置,但路由器的无线网络是没有打开的,你需要按下路由器的硬件上的一个有WI-FI标识的按钮,就可以访问无线路由器了。如果你不知道这个事情,你可能会认为你的路由器坏了,因为你搜索不到无线信号!

升级系统

进入管理网页界面后,选择系统,然后选择上传镜像升级。注意这里使用的是sysupgrade镜像(不是factory镜像),最好不要修改镜像的文件名。等待系统重启,大功告成!