Re: [问答] 关于 gigabit 网络卡

楼主: gn00618777 (非常念旧)   2015-11-11 13:36:12
我前面有发关于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?
搞得我到现在仍一团混乱.... 恳请赐教,谢谢。
作者: kenduest (小州)   2015-11-11 15:24:00
我认为你可以先确认一下这几个问题点1. sysctl -a 看一下 net.ipv4.tcp_ecn 设定一般设定为 2, 你看看你数值设定为何...ecn 前几年讨论很多,目前就比较少讨论了2. MTU 部分问题,可以 man iptables 部分有 TCPMASS项目,主要搭配 -j TCPMSS --clamp-mss-to-pmtu详细说明与语法 manpage 有说了,你看一下套用即可使用
楼主: gn00618777 (非常念旧)   2015-11-11 15:30:00
k大谢,我ecn 为 2,关于 iptables 知道关于 mss 设定但我对于我遭遇的问题,无法合理解释。况且,我也不需要用到iptables 有解阿
作者: birdy590 (Birdy)   2015-11-11 15:47:00
作者: asdfghjklasd (好累的大一生活)   2015-11-11 16:23:00
这种事常常发生在自己干PPTP VPN Server 时发生...
作者: birdy590 (Birdy)   2015-11-11 16:44:00
其实就是大水管中间经过一段小水管要怎么处理
作者: asdfghjklasd (好累的大一生活)   2015-11-12 10:18:00
不过其实TCPMSS 问题也不是只有 PPTP才会有.
作者: Wishmaster ( )   2015-11-12 23:20:00
ping带参数是你ping这个包的内容大小,你封包出去当然还是要加20+8,所以你上面文字叙述错误+28不是最佳MTU大小,是你用ping封包出去的大小
楼主: gn00618777 (非常念旧)   2015-11-16 20:55:00
原来如此,谢谢

Links booklink

Contact Us: admin [ a t ] ucptt.com