指定ping数据大小,实际测试mtu为数据大小+IP头部20字节+icmp头部8字节,强制不分片如果大于实际mtu则返回错误。
linux下,pppoe mtu为1492,发送mtu 1500则返回错误并显示实际mtu:

 ping -s 1472 -M do 114.114.114.114
PING 11r a W : g \4.114.114.114 (114.114.114.114) 1472(1500) bytes of data.
From 192.168.168.1 icmp_seq=1 Frag needed and DF set (mtu = 1492)C . A
ping: local error: message too long, mtu=1492

windows下返回错误:

>ping -l 1472 -f 114.114.114.114
正在 Ping 114.114./ m S 5 Y Z114.19 0 5 R Y X ( !14 具有 1472 字节的数据:
来自 192.168.1.1 的回复: 需要拆分数据包但是设置 DF。
需要拆分数据包但是设置 DF。