如何设置路由器里的MTU值

2011年04月05日   硬件发烧   0条评论   8429人围观过  
  昨天刚刚给自己的无线路由器升级了固件,突然想起来一个值没有设置,即MTU值,于是赶紧登录管理界面设置,同时讲解一下,方便各位设置。

  先来说一下什么是MTU值。最大传输单元(Maximum Transmission Unit)缩写为MTU,是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位)。最大传输单元这个参数通常与通信接口有关(网络接口卡、串口等)。MTU值如果设置不当,有可能会造成无法访问某些网站。为什么会这样说,之前我说的我接路由器无法使用FireFox 4上某些网站,我咨询TP-LINK官方,给的一个答案就是更改MTU值。想到了这个东西,我刚升级完自己的路由器固件,于是顺便再次更改,使得工作更加正常。

  对于时下大多数使用以太网的局域网来说,最大传输单元的值是1500字节。像我的路由器里面的默认值为1480。但是像PPPoE这样的系统会减小这个数值,这就使得在使用最大传输单元发现方法时可能会产生这样的结果:一些处于配置不当的防火墙之后的站点变得不可达了。对于这种情况,还是可能找到变通的方法的,但这取决于你控制的是网络的哪一部分。这些方法包括改变用来在防火墙一端建立TCP连接的第一个分组的MSS(Maximum Segment Size,最大分段大小)。

  TP-LINK官方让我更改我的路由器MTU值为1400,但是为什么是这个值呢?经过搜索,找到了测试出这个MTU值的方法,经过测试,该值不是1400,最佳值为1472。

  测试方法如下,打开命令行窗口,输入:

[sourcecode language="c"]
ping -f -l 1480 192.168.1.1
[/sourcecode]

  回车后得到一些结果。其中1480为你假设的MTU值,192.168.1.1为你的网关,即路由器IP,如果得到的结果提示为:

[sourcecode language="c"]
Packet needs to be fragmented but DF set.
[/sourcecode]

  那么说明你的假设值大了,需要改小,你可以从1479、1478……这样测试下去,直到提示:

[sourcecode language="c"]
Reply from 192.168.1.1: bytes=1472 time<1ms TTL=64
[/sourcecode]

  则说明你假设的值正确,即最大MTU值为1472。以下是本机的测试结果:

[sourcecode language="c"]
C:\Documents and Settings\UserName>ping -f -l 1473 192.168.1.1

Pinging 192.168.1.1 with 1473 bytes of data:

Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.

Ping statistics for 192.168.1.1:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),

C:\Documents and Settings\UserName>ping -f -l 1472 192.168.1.1

Pinging 192.168.1.1 with 1472 bytes of data:

Reply from 192.168.1.1: bytes=1472 time<1ms TTL=64
Reply from 192.168.1.1: bytes=1472 time<1ms TTL=64
Reply from 192.168.1.1: bytes=1472 time<1ms TTL=64
Reply from 192.168.1.1: bytes=1472 time<1ms TTL=64

Ping statistics for 192.168.1.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
[/sourcecode]

  如此确定了你路由器的最佳MTU值为1472。打开路由器管理界面,找到“网络参数”-“WAN口设置”,出现的界面中点击“高级设置”按钮,弹出的界面中,“数据包MTU(字节):”设置为1472。



  点击保存,然后到“系统工具”-“重启路由器”里重启你的路由器即可。
关键字: MTU,设置,路由器

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。