请选择 进入手机版 | 继续访问电脑版

牛大大的个人博客

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 128|回复: 2

MTU 应该设置为多少,上网打不开网页,网页慢

[复制链接]

149

主题

201

帖子

643

积分

版主

Rank: 7Rank: 7Rank: 7

积分
643
发表于 2021-5-21 17:32:31 | 显示全部楼层 |阅读模式
本帖最后由 牛大舅 于 2021-5-21 17:34 编辑

MTU 应该设置为多少,上网打不开网页,网页慢

1、电信光纤上网方式PPPOE拨号上网,MTU应该设置为是  1480  或者1482。

2、电信光纤是自动连接DHCP方式,MTU是1500。

ping -l 1450 -f www.baidu.com


MTU的工作原理

1、MTU,即Maximum Transmission Unit(最大传输单元),此值设定TCP/IP协议传输数据报时的最大传输单元。

2、设置合适的MTU值可以解决“部分网站打不开”、“上网速度慢”等问题,并且可以适当提升上网速度。

3、对于各种路由器,最佳的MTU值通常都是默认值。

4、当连接不到ISP或者不能使用其他的因特网服务时,且他们的技术支持人员建议更改MTU值。

5、当您使用VPN,遇到性能问题时可以考虑更改MTU 。

6、为了提高网络的某些性能,使用了可优化MTU 值的应用程序,而这引起了连通性和其他性能方面的问题 。

7、一个信息包被发送到MTU值较小的设备时,将被分解为若干小块。理论上,在所有电脑、交换机、路由器及您能访问到的因特网的所有设备上的MTU值应该设置为同一大小。



回复

使用道具 举报

149

主题

201

帖子

643

积分

版主

Rank: 7Rank: 7Rank: 7

积分
643
 楼主| 发表于 2021-5-21 17:35:03 | 显示全部楼层
而一般ADSL宽带的MTU在1450与1492之间,系统与ISP之间MTU的不符就会直接导致数据在网络传输过程中不断地进行分包、组包,浪费了宝贵的传输时间,也严重影响了宽带的工作效率。这就要求我们必须将本机MTU值设为与ISP所使用的MTU值一样后才能快速浏览网页、下载数据。但是,每个地区的ISP所使用的MTU值都不相同,同时ISP也会不定期地更改局端MTU大小,这给我们设置本机MTU带来了很大的不便,那么我们怎样才能知道ISP的MTU是多少呢?其实,我们平时最常用的Ping命令就能很方便地帮我们测试出本地ISP的MTU大小,如果大家感兴趣,就请跟随笔者一起来看看吧。

  测试思路

  在广域网上,大小超出ISP要求的数据包将无法传输,而操作系统则会根据本机MTU值自动将大小不符合要求的数据进行分包处理再进行传输,所以我们可以通过向Internet上的某台主机发送一个定长数据包,并且不允许操作系统更改其大小的方式去检查该数据包能否被正常传输,如果数据包小于或等于ISP的MTU值时,传输就能正常进行,而如果发送的数据包大于ISP使用的MTU值时,传输就会失败,这样我们就能通过不断发送不同大小的数据包最终得到ISP端的MTU大小,而这个数据再加上28字节的包头信息就是我们需要的最终MTU值。

  测试步骤

  1. 拨号上网,并打开“开始”菜单→“程序→附件→命令提示符”

  2. 输入命令“ping –l 14xx –f www.jb51.net”,这里我们解释一下命令参数的含义

  * –l 14xx参数:发送一个定长数据包,14xx是要测试的包大小,如前所述,ADSL的MTU一般在1450与1492之间,第3步中将每次更换一次该值

  * –f 参数:通知操作系统不能私自更改该数据包大小

  * www.jb51.net:任意一台Internet上的主机,也可使用其它主机名或IP地址

  3. 观察反馈结果并判断ISP的MTU值(请注意图中标黄框部分)

  1) 第一次发送测试包,包长1450

  如图1,提示数据包过大,需要分包,因此判断该数值(1450)大于ISP的MTU,应降低包大小
  
2) 第二次发送测试包,包长1440

  如图2,数据包大小降为1440,提示应为数据包过大,因此判断该值(1440)仍大于ISP的MTU,还应继续降低
  
3) 第三次发送测试包,包长1430

  如图3,数据包大小降为1430,提示该数据包可以正常传输,因此判断ISP的MTU值在1440~1430之间
  
4) 第四次发送测试包,包长1435

  如图4,数据包大小升为1435,提示仍然可以正常传输,因此判断MTU数值在1440~1435之间
  
5) 第五次发送测试包,包长1438

  如图5,数据包大小升为1438,提示可正常传输,因此判断MTU数值在1440~1438之间
  
6) 第六次发送数据包,包长1439

  如图6,数据包大小升为1439,提示因数据包过大无法传输,因此,判断出该ISP的MTU值为1438
 
4. 计算本地电脑的MTU值

  上面得到的MTU值不能直接用于本地设置上,还应在此基础上加上28(包头大小),因此最终的MTU数值为1466

5. 修改本机MTU值

  修改本机默认的MTU值可以通过注册表来进行,但更直观稳妥的方法是使用一些系统优化软件,如“超级兔子”或“Windows优化大师”等,本例使用“超级兔子 V6.25”进行演示。如图7是进入魔法设置网络设置标签的画面,首先选中“使用最大传输单元”前面的勾,然后再从后面的数据栏中输入计算出的MTU值(1466)后点击确定并重启电脑即可。
  
总结

  如上所述,整个过程可能看起来挺烦琐,但思路十分简单,而且效果不错。笔者的电脑设置了MTU值后,浏览器打开页面的速度较未设置前提高了15%,效果还是很明显的。 朔ㄖ皇视糜赑PPOE的拨号ADSL,对于光纤接入或ISDN接入的宽带网络不适用此法。
回复

使用道具 举报

149

主题

201

帖子

643

积分

版主

Rank: 7Rank: 7Rank: 7

积分
643
 楼主| 发表于 2021-5-21 19:10:22 | 显示全部楼层
C:\Users\Administrator>ping -l 1453 -f pjgl.gree.com

正在 Ping pjgl.gree.com [157.122.146.151] 具有 1453 字节的数据:
需要拆分数据包但是设置 DF。
需要拆分数据包但是设置 DF。
需要拆分数据包但是设置 DF。

157.122.146.151 的 Ping 统计信息:
    数据包: 已发送 = 3,已接收 = 0,丢失 = 3 (100% 丢失),

C:\Users\Administrator>ping -l 1452 -f pjgl.gree.com

正在 Ping pjgl.gree.com [157.122.146.151] 具有 1452 字节的数据:
来自 157.122.146.151 的回复: 字节=1452 时间=35ms TTL=244
来自 157.122.146.151 的回复: 字节=1452 时间=35ms TTL=244
来自 157.122.146.151 的回复: 字节=1452 时间=35ms TTL=244
来自 157.122.146.151 的回复: 字节=1452 时间=35ms TTL=244

157.122.146.151 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 35ms,最长 = 35ms,平均 = 35ms

MTU = 1452+28 =1480




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|牛大大的个人博客 ( 苏ICP备17043571号-2 )

GMT+8, 2021-6-15 11:40 , Processed in 0.177593 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表