
不太懂网络 NAT 的原理。
如果是对称型 NAT ,假设有两台主机 A 和 B
A 有公网 IPv4 没有 IPv6 ,B 只有一个 NAT IP, IPv4 NAT OUT. IPv6 NAT IN.
现在我希望让 A 通过这个 NAT OUT 的 IP 连接到 B ,但是又不太能通过反向连接的方式实现。也就是常见的内网穿透,因为一些网络审计的原因,从 B 到 A 没法走加速包加速,丢包严重,但是从 A 到 B 是有加速包的。
这种情况下有可能让 B 打个洞出来让 A 主动连接么?
1 kirafreedom 5 天前 我家里网络就是内网 ipv4 ,用 stun 穿透打开一个 ipv4 公网端口,在外面通过这个端口回家 |
2 mooyo OP @kirafreedom 我知道 NAT1 ,2 可以这样做,但是 NAT4 也行么? |
3 basncy 5 天前 能跑通的第一个包是从 B 到 A ,可以再开个贴先解决审计丢包问题。 |
4 totoro625 5 天前 @mooyo #2 NAT4 只能靠猜测,历遍端口进行碰撞,参考: https://github.com/MikeWang000000/n4 |
5 yiranw09 5 天前 对称型 NAT 要怎么打洞? 靠猜吗... |
6 lmmir 5 天前 还有就是走 upnp |
7 cmj2010 5 天前 To hit a 99.9% chance of success, we need each side to send 170,000 probes. At 100 packets/sec, that’s 28 minutes of trying before we can communicate. source: https://tailscale.com/blog/how-nat-traversal-works |
8 v2er119 5 天前 B 提供 SSH Server |
9 wanghanthu 5 天前 @yiranw09 UDP 可以靠穷举,TCP 估计是不现实了 |
10 superkkk 5 天前 要不让 b 连 a 开个 ssh 隧道? |
11 n43635 4 天前 B 开 ssh 服务器,通过 frpc ( A 做服务端,B 做客户端)等将 ssh 端口映射到 A 上,A 再通过映射的 ssh 端口连接 B ,必要时可以使用 ssh 隧道 |
13 Ipsum 4 天前 via Android B 需要至少主动向 A 发送一次数据,不然防火墙不会连接映射。如果只要是 B 主动发起的都吃不到加速包,那基本上可以放弃了。 |
14 dream2cast 3 天前 NAT4 打洞在 EasyTier 中有个选项可以禁用的,不禁用的话,纯靠猜。NAT4 还有个 EasyInc 的类型,好像有规律,容易猜中一点。 |
15 flynaj 2 小时 57 分钟前 via Android 看你 b 的 Nat 等级。fullclone 可以,目前只有 EasyTier 可以实现,你自己下载测试一下,可以配合 Natmap. |