Redmi AX1800折腾记录
从朋友那儿嫖来的竞斗云r619ac最近刷机之后发现跑不满宽带了,然后电信的送的tr609居然能PPPoE + NAT下跑满千兆,于是起了用tr609替换r619ac的想法;然而习惯了局域网CName解析,所以有了这次的一番折腾。
0x00 设备准备
电信的tr609对应到小米的红米AX1800,CPU是联发科雷凌的MT7621AT,知名劳模了,这个机器能跑满千兆在于它有HWNAT,而r619ac我没找到相关固件启用类似能力。
首先把tr609刷成小米系统,把系统包手动下载下来使用小米的刷机工具按照流程按Reset健以及插拔电源线,就能搞定。
0x01 启用UART
这个折腾了我老久,原因是小米自带的u-boot禁用了UART/串口的输入。
拆机
用螺丝刀在背后贴纸的左右上角摸索,能找到两个螺丝洞洞,戳进去就能找到螺丝,然后拧松螺丝。
接着用扁平卡片一类的把上盖打开,揭开头盖骨就能看到内里了,散热板的螺丝不用拧,机器放平网口为上,左上角有四个PCB穿孔,就是TTL的针脚,依次是TX|GND|RX|VCC。
TTL
按照惯例VCC不接线,TX|RX和TTL的RX|TX接线,在屋里翻了一会儿没找到排针,就没有给上焊接,拿杜邦线和杜邦针接着,然后戳进PCB穿孔里面,微微倾斜就接触了。
电脑上打开串口终端程序,譬如putty、MobaXterm等,波特率115200、关掉流控,开连~~
然后路由插电就能看到串口在打印了,然而输入死活没反应!!
几经搜索,在CSDN找到:小米u-boot禁用了串口输入。
- 启动后怼Reset,观察输出报GPIO按钮计时,然后会重启
- 重启后Reset继续别松,u-boot界面会报GPIO计时15秒,直到报
BOOTP broadcast
表示进入恢复模式 - 多次按下
Ctrl+C
以打断恢复模式 - 在开始BOOT后立刻断掉路由器的电源
- 插入电源并一直
Enter
直到进入=>
输入模式,也就是停下自动启动后 - 输入命令以启用UART
- setenv uart_en 1
- saveenv
- boot
- 等待路由器引导,一直输入回车,直到出现“ARE U OK”表示进入系统
- 然后尽快开启ssh,串口输入只有本次启动才有效,重启后就没了
0x02 启用SSH
串口需要密码,默认密码咱们不知道;因为是定制机,刷机后序列号也不知道是啥了也没法去网站上算出密码,所以直接passwd
设置个新密码。
然后输入
nvram set ssh_en=1
nvram commit
sed -i 's/channel=.*/channel=\"debug\"/g' /etc/init.d/dropbear
/etc/init.d/dropbear start
然后可以netstat -lnpt
查看开启的端口,如果22/ssh
在就表示开启成功了。
然后松开因为压着杜邦针已经有点麻木的手,电脑插上网线开始ssh~~
0x03 配置
我所要的局域网CName功能,需要dnsmasq
的option domain 'lan'
参数。
- 打开
/etc/config/dhcp
在config dnsmasq
组里面添加上述参数。 - 继续配置一大堆的
cname
。
config cname
option cname 'alias.lan'
option target 'origin.lan'
至此已经配置完毕,可以保存关机拔电,上盖子上螺丝了~~
0x04 固化
SSH想要开启挺麻烦的,如果有长期使用的需求,那还得把SSH开启固化。
目前有两个思路,
- 刷定制u-boot,然后方便进去启用UART,不过这样得每次接TTL输命令启用。
- dump系统nand里面的配置,传输到电脑上,改完配置算完CRC32,再导回去。