测试局域网路的MTU最大值

测试Linux主机与局域网路由器192.168.1.1之间的MTU最大值

sudo ping  -c 3 -s 1472 -M do 192.168.1.1

测试Linux主机与中国电信公共DNS主机114.114.114.114之间的MTU最大值

sudo ping  -c 3 -s 1472 -M do 114.114.114.114

空白
空白
空白
空白
空白
空白
空白


参考文档 (以下文章内容尚未获得原作者许可我就转载了, 请见谅)

原文标题:路径MTU(PMTU)发现控制与DF位

2018年05月15日 17:46:18 redwingz 阅读数:3132

标签:

  • PMTU
  • MTU发现

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_20184565/article/details/80326262

路径MTU发现是用来确定到达目的地的路径中最大传输单元(MTU)的大小。通过在IP报头中设置不分片DF(Don't Fragment)标志来探测路径中的MTU值, 如果路径中设备的MTU值小于此报文长度,并且发现DF标志,就会发回一个Internet控制消息协议(ICMP)(类型3、代码4需要分片的消息ICMP_FRAG_NEEDED),消息中包含它可接受的MTU值。

测试PMTU策略

使用ping命令即可测试PMTU策略:

ping 命令的手册页
-M pmtudisc_opt
Select Path MTU Discovery strategy. pmtudisc_option may be
either do (prohibit fragmentation, even local one), want (do PMTU
discovery, fragment locally when packet size is large), or dont
(do not set DF flag).

例如发送长度超过超过MTU值(1500)的数据包,并且设置IP头的DF位,系统提示message too long:

ping -c 3 -s 1473 -M do 192.168.1.133
PING 192.168.1.133 (192.168.1.133) 1473(1501) bytes of data.
ping: local error: Message too long, mtu=1500
ping: local error: Message too long, mtu=1500
ping: local error: Message too long, mtu=1500

--- 192.168.1.133 ping statistics ---

3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 1999ms

内核版本

linux-3.10.0

你可能感兴趣的:(测试局域网路的MTU最大值)