tftp的一次问题分析

问题描述

我在使用usb转网络的时候,发现能ping通但是,不能通过tftp进行下载文件,就很奇怪,按道路网络通,其tftp也应该能用。

对比

我拿正常的网口设备进行抓包测试
在这里插入图片描述

  1. 请求文件下载
  2. 回复文件大小
  3. 回复ack
  4. tftp服务器发送文件数据
  5. 设备回复ack

过程很美丽,正常的tftp数据传输过程

再来看异常的设备网络进行tftp的抓包分析
tftp的一次问题分析_第1张图片
发现每次设备请求tftp服务器的时候,服务器都回复一个icmp的端口不可达错误,
tftp的一次问题分析_第2张图片

问题解决

这里本来怀疑和ip地址有关,后来发现和ip没关系,其实还是和端口有关。
UDP的规则之一是,如果收到一份UDP数据报而目的端口与某个正在使用的进程不相符,那么UDP返回一个ICMP不可达报文

那么还是和tftp服务器的配置看看有没有关系。
tftp的一次问题分析_第3张图片
这里有信息,我的usb转网络的ip是169.254网段的name这个tftp绑定的是10.64.网段,把这个下拉框选着165.254网段的tftpip后重启tftp 服务,就能解决这个问题,同样,你这里修改成169.254网段后,你的之前10.64网段的那个设备进行tftp服务下载同样也会报端口不可达的icmp错误。

你可能感兴趣的:(udp,linux)