vps 上 UDP 转发的问题

2017-03-10 23:07:50 +08:00
 blues9

有一台 vps 用来kexue上网($$-tunnel),但是 dns 请求死活转发不了。原因可能是 udp 转发不通。 用 do 或者 vultr 的机器就没问题,估计应该是 vps 本身内网 nat 导致的问题。 应该怎么解决?

1196 次点击
所在节点    VPS
16 条回复
chanssl
2017-03-14 21:49:50 +08:00
我用 Vultr 转发不了 UDP 数据流,不知道是什么原因, ss-libev 已经开启了 UDP 转发, UDP 端口也开放了,就是转发不了 UDP ,楼主有解决方法吗
blues9
2017-03-14 21:59:20 +08:00
@chanssl
TCP 可以转发吗?
你起服务的命令贴上来看看。我用 vultr 是没问题的。
chanssl
2017-03-14 22:02:43 +08:00
@blues9 #2 TCP 可以转发。
chanssl
2017-03-14 22:07:03 +08:00
启动 ss-server 的命令:
chanssl
2017-03-14 22:09:07 +08:00
sockscap 代理后运行 NatTypeTester 的结果:
搬瓦工的一键搭的可以 UDP 转发
blues9
2017-03-14 23:08:05 +08:00
@chanssl

vultr 上有没有允许 udp 13645 端口的连接?比如:
iptables -A INPUT -i eth0 -p udp --dport 13645 -j ACCEPT
chanssl
2017-03-14 23:14:34 +08:00
@blues9 #6 有的, iptables 已经允许 UDP 端口 13645
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:13645
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:13645
chanssl
2017-03-14 23:30:09 +08:00
贴一下 iptables -L -n 的输出结果:
blues9
2017-03-16 09:45:00 +08:00
@chanssl
实在想不出什么原因。。你的 vultr 用的什么系统?
前面有人说 MTU 的设置会导致 UDP 转发失败,你搜一下。
chanssl
2017-03-16 11:51:14 +08:00
@blues9 #9 Centos 7 X64 安装 shadowsocks-libev 3.0.3 。我试过全新安装,还是一样。刚才尝试--mtu 1492 或者更高更低的值也还是一样。我也不知道什么问题了,等有空试试装 python 版本如何
chanssl
2017-03-16 12:00:15 +08:00
@blues9 #9 刚才开了台测试机,安装了 python 版本,可以正常 udp 转发。
blues9
2017-03-16 13:13:01 +08:00
@chanssl
看来还是实现机制不一样
chanssl
2017-03-16 13:24:40 +08:00
@blues9 #12 嗯。不清楚什么问题,在 libev 的 issues 搜索到了类似的问题#354/#941 ,但是都没有解决。
你装的也是 python 版本吗?
blues9
2017-03-16 13:34:25 +08:00
@chanssl
我 server 端是装的 python 版, 路由器上是用的 ss-libv ;路由器连其他的 server 都是正常的,唯独这台 GCE 的服务器有问题, DNS 解析不了。
chanssl
2017-03-16 14:04:52 +08:00
@blues9 #14 是不是你的 UDP 端口被禁用了?就像 Vultr 会默认禁用一些端口,无法开启。
blues9
2017-03-16 15:22:42 +08:00
@chanssl
你是说 ss-server 的监听端口吗? 我已经在 gce 的防火墙上打开了。

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

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

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

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

© 2021 V2EX