uboot下tftp在tp-link路由器上不通

在UBoot环境下,使用TFTP在TP-link路由器上无法下载升级,而Kernel环境下则正常。排查过程包括抓包分析,发现UBoot下未计算UDP校验和,可能是导致路由器丢弃包的原因。解决方案是在构建UDP包时添加校验和计算,经测试问题得到解决。总结指出,TP-link路由器可能要求强制启用UDP校验和。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述

1、Uboot下执行tftp命令,在交换机上可以下载升级;在tp-link路由器上失败。

2、Kernel下执行tftp命令,交换机上和tp-link路由器上均可成功。

3、Uboot下,tp-link路由器上一个包也抓不到,TFTP_RRQ包也没发过来。

4、均可以ping通。

uboot下现象:

HKVS # updateb
*******************************************************
*    ATTENTION: PLEASE READ THIS NOTICE CAREFULLY!    *
* DO NOT reset the device, or disrupt this process.   *
* If this process fails, the device might be unusable.*
* If you find this too risky, power off device now.   *
* or press the SPACE key to start the process now     *
*******************************************************

Trying eth0
link up on port 0, speed 100, full duplex
Using eth0 device
TFTP from server 10.15.2.44; our IP address is 10.15.2.45
Filename 'u-boot_8127.bin'.
Load address: 0x81000000
Loading: T T T T T T T T T T T T T T T T T T T 

wireshark抓包:

Wireshark抓不到包 

问题重现

使用TP-link路由器,uboot下用tftp进行升级可重现此问题


排查过程


原因分析

不死uboot-tplink703n,说下使用方法 1:先刷我编译的u-boot分区可以写的版本,对应压缩包里面的mtd_write_able.bin这个固件, 2:ssh登陆到路由器,用winscp拷贝gen_uboot.sh和tuboot.bin到/tmp文件夹中. 3:putty中执行脚本 命令是 sh gen_uboot.sh 4:会在/tmp文件夹中生成128kb并且保存了你mac信息的完整uboot uboot.bin这个文件 在这里,用Winscp登陆路由将/tmp/uboot.bin拷贝到自己电脑里面,用UltraEdit打开,找到最后面有很多FF的地方,再慢慢向前找到FF开始的地方就可以看到MAC地址了,将其进行修改即可(建议在原来的基础上面修改一位即可,可减少因MAC地址不符而变砖机的风险),改完记得删除路由/tmp/uboot.bin,再把改过的重新上传到/tmp。可参考下图: 5:执行 mtd -r write uboot.bin u-boot 6:路由器会自动重启,如果可以成功引导,说明你刷新成功了,一般不会错的,淡定 7:开机前,按着reset键再开机会进入uboot的救援模式,设置本机ip 192.168.1.2 掩码255.255.255.0 访问192.168.1.1 就可以看到救援模式了.切记使用火狐可以刷新成功 8:压缩包里面还提供了最新trunk_luci的编译版本,因为mtd_write_able.bin这个版本使用dreambox的源码编译,无线驱动不起来,所以同学们不要以为自己的无线挂了,刷新trunk+luci版后可以确定无线是好的 9:必须用以上说的办法生成完整版128kb的uboot再刷新,不然丢失mac信息,无线必
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值