
一. NAT分类
根据STUN协议(RFC3489),NAT大致分为下面四类:
1) Full Cone
这种NAT内部的机器A连接过外网机器C后,NAT会打开一个端口.然后外网的任何发到这个打开的端口的UDP数据报都可以到达A.不管是不是C发过来的.
例如 A:192.168.8.100 NAT:202.100.100.100 C:292.88.88.88
A(192.168.8.100:5000) -> NAT(202.100.100.100:8000) -> C(292.88.88.88:2000)
任何发送到 NAT(202.100.100.100:8000)的数据都可以到达A(192.168.8.100:5000)
2) Restricted Cone
这种NAT内部的机器A连接过外网的机器C后,NAT打开一个端口.然后C可以用任何端口和A通信.其他的外网机器不行.

本文介绍了UDP打洞(UDP Hole Punching)原理,包括NAT的四种类型:Full Cone、Restricted Cone、Port Restricted Cone和Symmetric。重点讲解了在Cone NAT下如何利用UDP打洞进行通信,并详细阐述了打洞的过程,以及同一NAT后的情况。最后对比了UDP打洞与TCP打洞的区别。
最低0.47元/天 解锁文章
807





