MTU的问题? '请求超时'

我一直在试图弄清为什么一些(很less)访问我的网站的人有随机的减速和错误页面('页面无法加载')。 随机减速和错误页面从来没有发生我和大多数访问我的网站的人。 该网站是负载均衡(这解释了“随机”),由于某种原因,我认为降低MTU可能会有所帮助(我不记得我从那里得到的想法)。

然后我想看看从我的办公室到网站最好的MTU是什么。 这是奇怪的地方。 使用'ping www.example.com -f -l xxxx':

MTU of 1500: Packet needs to be fragmented but DF set (ok) MTU of 1490: Packet needs to be fragmented but DF set (ok) MTU of 1480: Packet needs to be fragmented but DF set (ok) MTU of 1470: Request timed out (hu?) MTU of 1475: Packet needs to be fragmented but DF set (ok) MTU of 1474: Packet needs to be fragmented but DF set (ok) MTU of 1473: Packet needs to be fragmented but DF set (ok) MTU of 1472: Request timed out (???) MTU of 1400: Request timed out (???) MTU of 1300: Request timed out (???) MTU of 1200: Request timed out (???) MTU of 1100: Request timed out (???) MTU of 1000: Packet needs to be fragmented but DF set (ok) MTU of 1024: Packet needs to be fragmented but DF set (ok) MTU of 1025: Request timed out (???) 

因此,如果MTU小于1473或大于1024,我的网站似乎没有响应。它不应该与“数据包需要被分割,但..”而不是响应?

这是一个实际的问题? 或者是它应该如何? 会有一些不好的硬件或不正确的设置软件造成的?

数据包1473或更大的“数据包需要被分割但DF设置”的响应对于以太网是正常的,所以这些对于AFAIK来说是没有什么担心的。 只要path中的每一跳支持该MTU,都应该经过1472或更低。 对于小于1472的数据包,随机的“数据包需要被分段但DF集”使我认为ping是多条path,并且这些path中的一个或多个具有小于分段消息出现的分组的MTU (1000和1024)。 “请求超时”是没有道理的,除非(正如gregaskew所提到的)path中的东西阻塞了ICMP。

试试从你的办公室这个工具到你的networking服务器,看看你是否能得到任何见解:

http://www.elifulkerson.com/projects/mturoute.php

1500的MTU意味着最大的ping有效载荷将是1472(MTU减去20个字节用于IP报头,8个字节用于ICMP报头)。

请求超时可能只是意味着ICMP没有被转发到某处,或者被防火墙阻止。

您可以将networking接口的MTU设置为1400,就像一些众所周知的WEB服务器所做的那样。

或者,closurespathMTU发现,所以你的服务器的回复将不被DF标记。