自建的 RustDesk 中转服务器( hbbs/hsts )遇到卡顿问题,连接类型一直显示“加密中继连接”。带宽充足,判断是 UDP 打洞失败,所有流量都走中继了。服务器部署在 OpenWrt 路由器上。目前怀疑是网络环境或运营商限制,希望大家能帮我看看。
我的环境: RustDesk 服务端( hbbs/hsts )运行在 OpenWrt 路由器上。
路由器有真实公网 IPv4 ,规则转发 tcp 生效。
上级光猫是桥接模式,OpenWrt WAN 口 IP 与 ip.cn 显示一致,已排除 CG-NAT 。
所有 RustDesk TCP 端口( 21115, 21117, 21118, 21119 )转发正常,公网可访问,文件传输等功能正常。
已排查步骤及结果: OpenWrt 防火墙设置:
端口转发: 所有 RustDesk 端口(包括 21116/udp )均已设置转发到路由器自身 IP ,并已启用。
防火墙区域:WAN 口到自身( Input )等默认策略均为“接受”。
通信规则: 未发现任何针对 UDP 21116 端口的显式拒绝规则。
结论:OpenWrt 防火墙配置看起来没问题。
Nmap 端口扫描 UDP 21116: 从外部客户端扫描 21116/udp 端口,结果是 open|filtered unknown 。
分析:Nmap 无法确定端口是开放还是被过滤,暗示 UDP 流量可能不稳定或受阻。
UDP 监听测试: 已确认 hbbs 在 OpenWrt 上监听 21116/udp 。我将进行实际测试:在路由器上运行 nc -ul 21116 ,同时从外部客户端 echo "hello test" | ncat -u ip 21116 来验证是否收到数据。
结果是未收到数据。
我的推论: 综合以上情况,特别是 TCP 正常、UDP open|filtered 以及 RustDesk 始终中继,我高度怀疑电信运营商对 UDP 流量(尤其是 P2P 打洞所需的)进行了隐性限制或 QoS 策略。 即使我路由器配置无误,流量可能在运营商网络层面就被丢弃或异常处理,导致打洞失败。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.