CMD ping 请求不允许发送超过 1000 个字节

CMD ping 请求不允许发送超过 1000 个字节

google.com我可以通过使用以下命令成功 ping 通cmd

ping {IP ADDRESS} -T -L 1000

但如果我使用的数据包大小大于“1001”,我会收到请求超时错误。我知道我可以发送的最大字节数是 65500。

为什么是这样?

PS 我的网络很好,我可以通过浏览器访问所有网站。

答案1

正如 Gravity 所说在评论中当你的数据包大于 MTU 大小时碎片化会发生这种情况。由于 ICMP 数据包包含非常短的消息,因此没有正当理由对 ICMP 数据包进行分段。如果 ICMP 数据包太大而必须进行分段,则一定有问题。出于这个原因,一些网络管理员会阻止任何设置了更多分段标志或在偏移字段中指示偏移值的 ICMP 数据包。

来源

在此处输入图片描述

答案2

这看起来像是 MTU 问题。如果到达目的地的路径上有任何路由器不支持巨型帧,那么您发送远大于 1k(总帧大小为 1500)的能力将恰好在该点停止,并且最终会在该跳之外丢失帧。即使是巨型帧也限制为 9000 字节,因此如果您想发送 65500 字节的帧,那么该路径上的每个路由器都需要启用超级巨型帧。引用的维基百科文章应该会澄清这个问题。

相关内容