想写一个类似于 VPN 的项目来练手熟悉一下网络原理,类似于 zerotier
暂时的架构是 1 server 非转发模式,仅打洞, n client 。。
想请教一下运营商的 UDP 限制到底是基于什么,怎么绕过?打洞的成功率靠什么。
暂时的架构是 1 server 非转发模式,仅打洞, n client 。。
想请教一下运营商的 UDP 限制到底是基于什么,怎么绕过?打洞的成功率靠什么。
|
vfsJan 4, 2024
1
直接建议放弃,没有服务器中转肯定不行
|
|
cleaneryJan 4, 2024
2
因为 UDP 无状态, 易伪造, 所以很多地方对 udp 的限制都比较多, 主要体现在丢包, 限速
udp 的限制一般都是有时效性的, 针对 ip 和端口号进行限制 NAT 穿透简单过程可以参考 https://www.cnblogs.com/yorkyang/p/9995441.html 成功率主要取决于 NAT 类型和防火墙限制 |
|
AoEiuV020JPJan 4, 2024
3
一个核心是,双方列出自己所有 ip ,包括服务器看到的 remote ip port ,然后各自监听端口,对方一个一个 ip 尝试发送 udp 包看这边能不能收到能不能回复,能就打洞成功了,
udp 二元组,本该是与 source 无关的,但运营商可能会去判断,这个入网 udp 的 source 不是刚才出网 udp 的 destination ,那就不给转发,这就是限制了,具体不同的限制罗辑就表现不同的 nat 级别, |
|
diansoJan 4, 2024
4
可以的
成本太高了 UPnP 靠穷举是可以连接的 |
|
dodeJan 4, 2024
5
运营商 UDP 限制,大概是 UDP 通信随机丢包&限速
|
|
AcofficeJan 4, 2024 via Android
6
买下运营商
|
|
yulonJan 4, 2024
7
丢包策略要写好,不能太暴力,异常流量会被盯上,也不能太弱,不然包全丢了,可能还是得看当地情况
|
|
ac169Jan 4, 2024
8
用 tcp
另外, 你准备弄新项目, 所以建议应该侧重考虑基于 v6 环境下来做! |
|
cnbatchJan 4, 2024
9
打洞?那不如造个 STUN Server / Client 程序吧,有现成的标准可以参考
|