v2 大佬多,请教个软路由 mtu 设置问题

2019-04-11 16:52:02 +08:00
 brMu
1.现在设置 mtu 还有意义吗?
2.北京移动宽带,测出 mtu 是 1480,ppp0 已经设置成 1480,那内网 eth0 还要设置成 1480 吗?
5338 次点击
所在节点    宽带症候群
14 条回复
tia
2019-04-11 18:36:21 +08:00
没啥意义,你可以自己用电脑拨号然后看看,MTU 会自动下发的,不用你设置。
yexm0
2019-04-11 18:56:17 +08:00
@tia windows 那个真不是,永远都是固定 1480 的,只有光猫的路由配置里的那个才是运营商帮你写进去的。
bclerdx
2019-04-11 23:52:29 +08:00
@tia 怎么会没意义的。当然有意义了。而且非常重要。
nocover
2019-04-12 13:42:24 +08:00
杭州电信测试:桥接 ping -f -l 1452 192.168.1.1 通过; MTU 1452+28=1480 ; MSS=MTU-40 ;修改系统 MTU。
下文中提到 1480 也不起作用,最后修改却是 tcp mss:1440 ?那最后的 MTU/MRU 还是 1440+40,不解。本人 mt ros 1to4;小白一个。
备注:修改哪一个接口的值?是修改 ppoe in 还是 ppoe out 的值,还是修改 ppoe server list 里面列出来的端口的 mtu 和 mru 的值?

以下仅供参考,来源:网络 2007 年。

最近发现很多关于 MSS 值的问题。我刚装上 ROS 的时候也是遇到这样的问题(我用的是 pppoe-client+NAT 方式),主要表现在打开一部分国内网站(比如淘宝)和大部分国外网站(比如 yahoo 和 Microsoft ),打开这些网页的速度慢得出奇,基本上打不开。而其它的就用则没有什么不正常。开始我也想到了是 MSS 设置的问题,但是按照很多人说的"将 MSS 值改成 1400、1440、1480 等等"都不起作用。最后打到一篇文章,说是 DSL 方式 MTU 值默认是"1492"(不是 MSS 值)。这才解决了问题:
 打开 winbox,在 PPP 中选择你添加的"pppoe-client"接口,将"MAX   MTU"和"MAX   MRU"都设置成"1492",然后在"IP - firewall - mangle"中添加一条改变默认 MSS 值的规则:general 选项里:chain:forword;protocol:6(tcp);  Advanced 选项里面:tcp flags:syn; Action 选项里面:action:change mss;New tcp mss:1440
brMu
2019-04-12 16:25:57 +08:00
@nocover
哪有这么复杂,设置个 mtu 就可以了,那篇文章我估计他用的 linux 内核太老了,导致这些问题。
raysonx
2019-04-12 17:41:59 +08:00
某些网站打不开或很慢是因为链路上存在 PMTUD 黑洞,一般情况下只需要配置好 TCP MSS clamping 就足够了。
brMu
2019-04-12 19:58:42 +08:00
@nocover 好像是这样的,我目前的理解是:
mtu 一般和 mru 相同,所以在 ppp0 参数里设置 mtu=1480 就可以了,eth0 不用管,如果内网设备过来的包超过了 1480,路由器会分解它的。

另外关于 tcp mss,这个值是内网设备和你要访问的网站服务器协商的,如果协商的值大于 mtu-40,那这个网站就无法访问,解决方法就是加个 iptable 规则,这个规则就是在中间做调解,不会让 mss 值超过 mtu-40。
bclerdx
2019-04-15 07:29:38 +08:00
似乎你在 windows 注册表添加自动路径发现就行吧。
10935336
2019-04-15 13:06:46 +08:00
同样是北京移动桥接 ping -f -l 1464 baidu.com
MTU 1464+28=1492 测出来可以用
brMu
2019-04-16 08:44:45 +08:00
@10935336 你是哪个区的?看来每个区不一样啊
10935336
2019-04-16 15:39:12 +08:00
@brMu #10 顺义的
brMu
2019-04-17 15:23:51 +08:00
@10935336 好吧,我是房山,看来每个区还不一样
brMu
2019-04-17 15:25:55 +08:00
@10935336

root@aml:~# ping -c 3 -s 1452 -M do www.163.com
PING www.163.com.lxdns.com (183.201.225.115) 1452(1480) bytes of data.
1460 bytes from 183.201.225.115 (183.201.225.115): icmp_seq=1 ttl=54 time=14.9 ms
1460 bytes from 183.201.225.115 (183.201.225.115): icmp_seq=2 ttl=54 time=14.6 ms
1460 bytes from 183.201.225.115 (183.201.225.115): icmp_seq=3 ttl=54 time=14.3 ms


root@aml:~# ping -c 3 -s 1453 -M do www.163.com
PING www.163.com.lxdns.com (183.201.234.164) 1453(1481) bytes of data.
ping: local error: Message too long, mtu=1480
ping: local error: Message too long, mtu=1480
ping: local error: Message too long, mtu=1480
bclerdx
2019-04-19 16:05:02 +08:00
@brMu 我怎么感觉 1480 是机房新设备,而 1492 的是较老的早期机房设备。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/554155

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX