Windows Vista及以上版本查看网卡MTU值的命令:
netsh interface ipv4 show subinterfaces
Windows XP及以下版本查看网卡MTU值方法:
1. 先启用服务RemoteAccess,该服务默认是禁用状态,运行以下两条命令启动
sc config RemoteAccess start= auto
net start RemoteAccess
2.运行以下命令查看MTU值:
netsh interface ip show interface
Windows Vista及以上版本设置网卡MTU值的命令:
netsh interface ipv4 set subinterface “网卡名称” mtu=1480 store=persistent
Windows XP及以下版本设置MTU值的方法:
1. 运行 regedit 命令,启动注册表。
2. 在注册表中找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces子类,在Interfaces下有一些类似于{124698A8-6B19-4B1F-9056-ADBCF56D47F6}这样的分支,点击这些分支在右边可以看到对于的信息,找到与当前系统IP信息一致的一个分支,右键点击选择,新建->DWORD值->名称填写“MTU”,修改其值为:十进制,1480。然后退出注册表编辑器。
3. 重启系统。
如何得到符合当前实际情况的MTU值呢?
1. 打开CMD窗口, 运行以下命令:
ping -f -l 1472 192.168.1.1
说明:上面命令中,-l是字母L的小写,并非数字1。1472是数据包的长度,MTU值=数据包长度+数据包头28字节。192.168.1.1是网关地址。
如果能ping通,则表示数据包不需要拆包,可以通过网关发送出去。 如果出现: Packet needs to be fragmented but DF set. 表示数据包需要拆开来发送。此时,减少数据包长度,再执行上面的ping命令。从1400到1472之间多试几次,就能找到合适的数据包长度了。