linux下使用ping测试MTU

转载地址:http://blog.csdn.net/momomi_2005/article/details/22868745
MTU:MTU是Maximum Transmission Unit的缩写;意思是网络上传送的最 大数据 包。MTU的单位是字节。大部分网络设备的MTU都是1500。

把本机的MTU设成比网关的MTU小或相同,就可以减少丢包。如果本机的MTU比网关的MTU大,大的数据包就会被拆开来传送,这样会产生很多数据包碎片,增加丢包率;

如果检测到网关的MTU值是1500,从1400到1472之间多试几次,就能找到合适的数据包长度了;把数据包长度加上数据包头28字节,就得到MTU的值。

测试

当包是1472字节并且不拆包,能够传送正确;
[root@rhmn ~]# ping -c 3 -s 1472 -M do 10.1.0.230
PING 10.1.0.230 (10.1.0.230) 1472(1500) bytes of data.
1480 bytes from 10.1.0.230: icmp_seq=1 ttl=64 time=0.345 ms
1480 bytes from 10.1.0.230: icmp_seq=2 ttl=64 time=0.303 ms
1480 bytes from 10.1.0.230: icmp_seq=3 ttl=64 time=0.314 ms

--- 10.1.0.230 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.303/0.320/0.345/0.027 ms

当包是1473字节并且不拆包,加上28字节的包头,大于设定值1500,发生错误。

[root@rhmn ~]# ping -c 3 -s 1473 -M do 10.1.0.230
PING 10.1.0.230 (10.1.0.230) 1473(1501) bytes of data.
From 10.1.34.1 icmp_seq=1 Frag needed and DF set (mtu = 1500)
From 10.1.34.1 icmp_seq=1 Frag needed and DF set (mtu = 1500)
From 10.1.34.1 icmp_seq=1 Frag needed and DF set (mtu = 1500)

--- 10.1.0.230 ping statistics ---
0 packets transmitted, 0 received, +3 errors

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值