在不打洞的情况下,如果对方没有公网 ip 的话不还是连不上吗.之前的 mt 大包我这里 nat1 但是没有 v4 公网地址,好多国内 v4 的 peer 都连不上,能连上的都是有公网 ipv4 地址的(端口号是默认 transmission 端口,查 ip 也是家宽.
1
heiher 2023-02-24 10:22:38 +08:00 1
一边是 NAT1 ,另一边不是公网还是连不上,这主要是因为客户端上报的端口号与映射的公网端口号不一致。
具体来说客户端上报的是内网监听端口号,通过公网映射后分配了另外一个不同的端口号,Peers 拿的内网端口号并上公网 IP 地址尝试去建立连接显然是不行的。 解决办法最直接的当然是改客户端,使其上报公网端口,比如先用 STUN 获取。折中一点的是使用 Natter/NATMap 等工具,先获得公网端口号,再通知客户端修改本地监听端口号与公网的一致。在内网相同的情况下,即使 Peers 拿的是内网端口号,连接也能建立起来。 |
2
Mythologyli 2023-02-25 13:31:08 +08:00
|
3
ccbikai 2023-02-25 14:40:06 +08:00
用 1F 的方法,和公网 IPv4 几乎没区别
https://github.com/heiher/natmap |
4
mikewang 2023-02-26 23:15:03 +08:00
楼上几位已经总结得很好了,NAT1 想玩公网端口速速进群:
https://t.me/hellonatter |
5
LisaSue OP @mikewang 你说得对,但是我去年就在群里面了,综上所述 nat1 在 p2p 方面除了可以打洞,如果对面没公网 ip 的话还是没啥用.
|
6
mikewang 2023-02-27 02:30:34 +08:00
@LisaSue
不应该啊,在群的话,我觉得群友分析的比我还全面... 关于标题:NAT1 对于 BT/PT 显然是有帮助的,“一点帮助没有”夸张了。 如果真的“除了打洞”,确实 NAT1/2/3/4 没有任何区别,因为 NAT1/2/3/4 就是为 “好不好打洞” 做区分的🤔 使用了 Natter / NATMap 辅助工具,就是有帮助。 另外 BT 是可以自己打洞,前提是要有 DHT+μTP 。禁 DHT ,相当于自废武功,能连上的就少。 |
7
shawnoob 2023-02-27 10:58:38 +08:00
没设置成功吧,实测跟公网差不多,ratio 随便 10+
|