[WARN]huge packet, data_len > 1800,dropped
环境:ss+kcptun+udp2raw(20181113.0),udp2raw装在路由器上,路由器是用的ambian做的软路由,也就是arm路由器,非虚拟机,所以不存在桥接或NAT问题。
在看youtube时会大量出现这个警告,但似乎并不影响视频的正常播放,速度也还不错,在一些其它网站也会出现这个警告,但没有y2那么多,比如PC端的google play也会少量出现这个警告。
搜索到之前issue,怀疑可能是mtu问题,分别测试kcptun的mtu为1200,1000,500,都还有这个警告。
怀疑是否kcptun有BUG,在发送大包,于是抓发,发现在设置mtu值为1300的情况下,抓到的包最大也确实只有1300,udp2raw对外发送的最大包是1344,这说明udp2raw对包的处理会加44个字节?
所以应该不是kcptun发送了大包给udp2raw,请大佬看看是什么问题,抓的包放在二楼的,如果要其它日志请告诉我。
[2019-03-26 08:53:58][INFO]new packet from 127.0.0.1:47399,conv_id=1b7d13eb [2019-03-26 08:53:58][INFO]new packet from 127.0.0.1:51778,conv_id=59b87bba [2019-03-26 08:54:01][WARN]huge packet, data_len > 1800,dropped [2019-03-26 08:54:08][WARN]huge packet, data_len > 1800,dropped [2019-03-26 08:54:08][WARN]huge packet, data_len > 1800,dropped [2019-03-26 08:54:08][WARN]huge packet, data_len > 1800,dropped [2019-03-26 08:54:09][WARN]huge packet, data_len > 1800,dropped [2019-03-26 08:54:10][WARN]huge packet, data_len > 1800,dropped [2019-03-26 08:54:10][WARN]huge packet, data_len > 1800,dropped [2019-03-26 08:54:11][WARN]huge packet, data_len > 1800,dropped [2019-03-26 08:54:11][WARN]huge packet, data_len > 1800,dropped [2019-03-26 08:54:43][WARN]huge packet, data_len > 1800,dropped [2019-03-26 08:54:43][WARN]huge packet, data_len > 1800,dropped [2019-03-26 08:54:49][WARN]huge packet, data_len > 1800,dropped
08:54:49.075957 IP localhost.4000 > localhost.42406: UDP, length 1300 08:54:49.076128 IP localhost.4000 > localhost.42406: UDP, length 1300 08:54:49.076632 IP localhost.4000 > localhost.42406: UDP, length 1300 08:54:49.076811 IP localhost.4000 > localhost.42406: UDP, length 1300 08:54:49.077177 IP localhost.4000 > localhost.42406: UDP, length 1300 08:54:49.077404 IP localhost.4000 > localhost.42406: UDP, length 1300 08:54:49.077635 IP localhost.4000 > localhost.42406: UDP, length 1300 08:54:49.077818 IP localhost.4000 > localhost.42406: UDP, length 1300 08:54:49.078216 IP localhost.4000 > localhost.42406: UDP, length 1300 08:54:49.078446 IP localhost.4000 > localhost.42406: UDP, length 1300 08:54:49.078656 IP localhost.4000 > localhost.42406: UDP, length 1300 08:54:49.078656 IP localhost.42406 > localhost.4000: UDP, length 916 08:54:49.078985 IP localhost.4000 > localhost.42406: UDP, length 1300
09:10:02.242078 IP aml.27402 > ...: Flags [.], seq 147584:148496, ack 856081, win 41288, options [nop,nop,TS val 249260691 ecr 65055964], length 912 09:10:02.242556 IP aml.27402 > ...: Flags [.], seq 148496:149728, ack 856081, win 40963, options [nop,nop,TS val 249260692 ecr 65055964], length 1232 09:10:02.242578 IP aml.27402 > ...: Flags [.], seq 148496:149728, ack 856081, win 40963, options [nop,nop,TS val 249260692 ecr 65055964], length 1232 09:10:02.242724 IP aml.27402 > ...: Flags [.], seq 149728:151072, ack 856081, win 40981, options [nop,nop,TS val 249260692 ecr 65055964], length 1344 09:10:02.242747 IP aml.27402 > ...: Flags [.], seq 149728:151072, ack 856081, win 40981, options [nop,nop,TS val 249260692 ecr 65055964], length 1344 09:10:02.242889 IP aml.27402 > ...: Flags [.], seq 151072:152416, ack 856081, win 41151, options [nop,nop,TS val 249260692 ecr 65055964], length 1344 09:10:02.242911 IP aml.27402 > ...: Flags [.], seq 151072:152416, ack 856081, win 41151, options [nop,nop,TS val 249260692 ecr 65055964], length 1344 09:10:02.243043 IP aml.27402 > ...: Flags [.], seq 152416:153760, ack 856081, win 41121, options [nop,nop,TS val 249260692 ecr 65055964], length 1344
一个issue里给出了临时解决方案,就是关闭gso和gro,实测有效,具体原因和详情可以去这个issue里查看。 https://github.com/wangyu-/udp2raw-tunnel/issues/226 我这里就写下命令吧: 查看 ethtool --show-offload eth0 | egrep 'generic-segmentation-offload|generic-receive-offload' generic-segmentation-offload: on generic-receive-offload: on
关闭 ethtool -K eth0 gso off ethtool -K eth0 gro off
再查看 ethtool --show-offload eth0 | egrep 'generic-segmentation-offload|generic-receive-offload' generic-segmentation-offload: off generic-receive-offload: off
最后添加到开机启动就可以了。
但是,sstap 测试显示,upd 还是没有通过
手机开热点上网容易遇到这个错误,宽带从来没遇到过。执行了楼主提供的命令之后解决了🎉