Mike Wang
Mike Wang
关于 UDP,RFC3489 中有配有流程图: https://www.rfc-editor.org/rfc/rfc3489#page-22 RFC 中确实没有对 TCP 进行分类,并且在 RFC5389 中废弃了原定的 UDP 分类。 > Furthermore, classic STUN's algorithm for classification of NAT types was found to be faulty, as many NATs...
> 理论上TCP的NAT分类和UDP的NAT分类应该保持一致,但是一些场景下出现不一致的情况。 理论上 TCP 和 UDP 的 NAT 情况会出现不一致。例如 OpenWRT 中常用的一个内核模块 [Chion82/netfilter-full-cone-nat](https://github.com/Chion82/netfilter-full-cone-nat) ,这个模块只实现了 UDP 的 Fullcone NAT,那么检测 TCP 结果就是 NAT 3,UDP 为 NAT 1。 同样的,ISP 处的 CGNAT 也会有类似情形。如果怀疑检测结果不准,可以用 stunclient 等工具手动测试。
如果 NatterCheck 检测不通过,那么便没有办法打通了。 具体的情况比较复杂,比如运营商有流量穿透等情况,比如根据不同路由线路有多个 IP 出口等等,都会造成检测结果的不一致。
可以先使用 NatterCheck (https://github.com/MikeWang000000/Natter/tree/master/natter-check) 对当前网络进行测试,达标后才能正常使用 Natter 打洞。需要全锥型网络(NAT 1)
是的,Windows 上面需要 `.bat` 脚本。后续会逐渐完善文档的说明。