简述
- network address translation
- 一般将私有地址转换为公有地址实现访问公网的目的
分类
- 基本NAT
– static NAT
– dynamic NAT - NAPT(network address port translation,网络地址端口转换)
– 锥形(cone)NAT
–1)完全锥形(full cone)
–2)地址限制锥形(address restricted):只有向公网IP发送数据后才能收到该IP发给自身的数据
–3)端口限制锥形(port restricted):只有向公网IP:port发送数据后才能收到该IP:port发给自身的数据
– 对称(symmetric)NAT:将四元组(源IP、源端口、目的IP、目的端口)映射成一个公网IP:port,只要其中一个元素变化映射后的公网IP都会发生变化
基于UDP的P2P交互过程
以锥形NAT举例
- C1和C2分别和具有公网IP的server建立连接
- server可以获得C1和C2映射的公网IP和port
- server通知C1向C2的公网IP和port发送数据,之后C1就能收到C2向C1公网IP和port发送的数据了
- server通知C2向C1的公网IP和port发送数据,之后C2就能收到C1向C2的公网IP和port发送的数据了
- 之后,C1和C2可以直接向对方的公网IP和端口发送数据