MTU是什么?基本概念与故障排查方法

请按照以下顺序逐一排查。

  1. 理解MTU的概念

    MTU(Maximum Transmission Unit,最大传输单元)指网络中一次能发送的数据包的最大尺寸(字节数)。常见的有线以太网默认MTU为1500字节,超过这个大小的数据会被拆分成多个片段(分片)后再发送。

  2. PPPoE环境下MTU会降到1492字节

    如果宽带以PPPoE方式拉线,数据前面会额外加上8字节的PPPoE头,因此实际可用的MTU会从1500字节降为1492字节。大多数路由器会自动处理这个数值,但手动配置网络的设备或部分VPN客户端可能出现数值不匹配的问题。

  3. 通过症状怀疑是否是MTU问题

    如果普通网页浏览和ping测试都没问题,但VPN连接总是掉线、某个网站一直加载不出来、或者打开较大的附件就卡死,很可能是路径中间某处MTU数值不匹配,导致较大的数据包被悄悄丢弃,这种现象常被称为MTU黑洞。特征是小数据包(ping)能通过,只有大数据包会被拦下。

  4. 用ping测试确认实际能通过的最大尺寸

    在Windows上可以在命令提示符中输入类似 ping -f -l 1472 目标地址 的命令,用-f禁止分片、用-l指定数据大小进行测试。找到不报错能通过的最大数值,再加上28字节(IP和ICMP头),就是实际的最大MTU;在PPPoE环境下,通常payload在1464字节左右是分界点(1464+28+8=1500)。

  5. 在路由器或设备上手动调整MTU值

    在路由器管理页面的互联网(WAN)设置菜单中找到MTU选项,可以直接填入1492,或者填入通过测试确认的数值。有些路由器只用自动选项就足够了,但如果问题持续存在,手动调低数值往往值得一试。

  6. NAS、服务器环境中的巨型帧(Jumbo Frame)

    如果内部有线网络经常需要和NAS之间传输大文件,可以把MTU调高到最多9000字节的巨型帧,以提升传输效率。不过,路径上的交换机、网卡、NAS等所有设备都必须支持巨型帧,只要有一个不支持,反而可能引发新的问题。

别忘了检查路由器的WAN设置

MTU的调整归根结底属于路由器互联网(WAN)设置菜单里的一项。如果不清楚怎样进入管理页面,可以先查看路由器说明书或设置界面的引导说明。

如果使用的是IPv6

在IPv6环境下,路径中间的设备无法随意拆分数据包,因此MTU不匹配的问题反而会更容易显现出来。

常见问题

把MTU值设得很大,网速会更快吗?

不会,反而可能因为路径中间的设备不支持这么大的数据包,导致数据包被悄悄丢弃或分片增多,速度变得更慢。MTU不是设置得越大越快,而是需要和实际路径精确匹配的数值。

普通用户也需要关心MTU吗?

大多数情况下路由器和运营商设备会自动处理好合适的数值,不需要额外关心。但如果VPN连接反复掉线,或者某个网站始终打不开,就值得按照本文的方法排查一下。