作者gn00618777 (非常念旧)
看板Network
标题Re: [问答] 关於 gigabit 网路卡
时间Wed Nov 11 13:36:12 2015
我前面有发关於MTU值的问题,查了网路上许多人的见解,还有封包的一些结构。
我这边还有一个例子,却不知道怎麽解释。
我开发板(linux)移植了 pptp server ,然後所有 source(包含 ppp0) 都透过 eth0 出
去外网
当电脑(windows)透过区网(和 pptp server同网段) 连进去vpn client,看了开发板上
的网路介面
ifconfig
eth0 MTU=1500
ppp0 MTU=1396
我电脑透过VPN再透过eth0, yahoo 上不去,但可以连 google 或者其他网页。 我照
着网路的说明测 MTU
在 Windows cmd 下 ping -f -l XXXX www.yahoo.com.tw
ping -f -l 1373 www.yahoo.com.tw
需要切割封包,但设定DF旗标
需要切割封包,但设定DF其标
ping -f -l 1372 www.yahoo.com.tw
要求等候逾时
要求等候逾时
,测得 XXXX为 1372 ,但还是不能ping 通 yahoo ,网路上
说 1372 还需加上 20 byte IP包和 8 byte ICMP,才是最佳 MTU,
所以 1372+28 =1400,我至 server ,ppp0界面 改成 MTU 为 1400
我就可以在 windows 下
ping -f -l 1372 www.yahoo.com.tw
回覆自124.108.105.150: 位元组:1372 TTL=50
1 我的解读是,yahoo server 回应透过 eth0 再透过 ppp0 它可能回传太大的封包给
ppp0 ,但是 ppp0 却给 1396 ,所以封包被 dropped 掉,以致 yahoo 上不去,这样
解读是对的吗? 那其他 google怎能上?
2 使用 ping -f -l 方法测出来的值不就已经是 MTU 了,MTU已经有包含 TCP包和IP包了
为啥他还需要加上 20 byte IP 包和 8 byte 的 ICMP?
搞得我到现在仍一团混乱.... 恳请赐教,谢谢。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.220.220.235
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Network/M.1447220175.A.6BF.html
※ 编辑: gn00618777 (61.220.220.235), 11/11/2015 13:36:38
※ 编辑: gn00618777 (61.220.220.235), 11/11/2015 14:02:36
※ 编辑: gn00618777 (122.146.76.147), 11/11/2015 14:20:31
※ 编辑: gn00618777 (61.220.220.235), 11/11/2015 14:37:43
※ 编辑: gn00618777 (61.220.220.235), 11/11/2015 14:40:58
1F:→ kenduest: 我认为你可以先确认一下这几个问题点 11/11 15:24
2F:→ kenduest: 1. sysctl -a 看一下 net.ipv4.tcp_ecn 设定 11/11 15:26
3F:→ kenduest: 一般设定为 2, 你看看你数值设定为何... 11/11 15:27
4F:→ kenduest: ecn 前几年讨论很多,目前就比较少讨论了 11/11 15:27
5F:→ kenduest: 2. MTU 部分问题,可以 man iptables 部分有 TCPMASS 11/11 15:27
6F:→ kenduest: 项目,主要搭配 -j TCPMSS --clamp-mss-to-pmtu 11/11 15:28
7F:→ kenduest: 详细说明与语法 manpage 有说了,你看一下套用即可使用 11/11 15:28
8F:→ gn00618777: k大谢,我ecn 为 2,关於 iptables 知道关於 mss 设定 11/11 15:30
9F:→ gn00618777: 但我对於我遭遇的问题,无法合理解释。 11/11 15:30
10F:→ gn00618777: 况且,我也不需要用到iptables 有解阿 11/11 15:36
12F:推 asdfghjklasd: 这种事常常发生在自己干PPTP VPN Server 时发生... 11/11 16:23
13F:推 birdy590: 其实就是大水管中间经过一段小水管要怎麽处理 11/11 16:44
14F:→ asdfghjklasd: 不过其实TCPMSS 问题也不是只有 PPTP才会有. 11/12 10:18
15F:推 Wishmaster: ping带参数是你ping这个包的内容大小,你封包出去当然 11/12 23:20
16F:→ Wishmaster: 还是要加20+8,所以你上面文字叙述错误 11/12 23:21
17F:→ Wishmaster: +28不是最佳MTU大小,是你用ping封包出去的大小 11/12 23:21
18F:→ gn00618777: 原来如此,谢谢 11/16 20:55