NAT 工作方式的分类
现实中的很多NAT设备是将这些转换方式混合在一起工作的,而不单单使用一种,所以这些术语只适合描述一种工作方式,而不是一个设备。
1. 基本的 NAT (Network Address Translator)
1.1. 动态NAT
1.2. 静态NAT
2. NAPT (Network Address/Port Translator)
2.1. 锥型 (cone) NAT
2.1.1. 完全 锥型 (full cone) NAT
2.1.2. (地址)受限制 锥型 (restricted cone) NAT
2.1.3. 端口受限制 锥型 (port restricted cone) NAT
2.2. 对称型 (symmetrie) NAT
由于现在大部分都属于 NAPT。
NAT 工作方式的特点
基本的 NAT (Network Address Translator)
仅仅转换IP地址,不转换TCP/UDP端口。
NAPT (Network Address/Port Translator)
不但会转换IP地址,还会转换的TCP/UDP端口。
全锥形 NAT
- 内网主机(iAddr:iPort)首次向外网主机发送报文时创建地址映射会话,(iAddr:iPort)转换为(eAddr:ePort)。
- 所有后续的从内网主机(iAddr:iPort)发送出的报文,都会被转换为(eAddr:ePort)。不论目的外网主机的地址如何。
- 任何外网主机发送到(eAddr:ePort)的报文,都会转换为(iAddr:iPort)。
xAddr:xPort
xAddr:zPort
/-----------------[xPC]
iAddr:iPort eAddr:ePort /
[iPC]------------------[SNAT]--------------[SW]
\ yAddr:yPort
\-----------------[yPC]
Direction | Before NAT | After NAT | Case |
---|---|---|---|
original | iAddr:iPort --> xAddr:xPort | eAddr:ePort --> xAddr:xPort | 特定主机,第一个连接,可以转换 |
reply | xAddr:xPort --> eAddr:ePort | xAddr:xPort --> iAddr:iPort | 特定主机,第一个连接,可以转换 |
original | xAddr:zPort --> eAddr:ePort | xAddr:zPort --> iAddr:iPort | 特定主机,不同端口,可以转换 |
reply | iAddr:iPort --> xAddr:zPort | eAddr:ePort --> xAddr:zPort | 特定主机,不同端口,可以转换 |
original | yAddr:yPort --> eAddr:ePort | yAddr:yPort --> iAddr:iPort | 任意主机,任意端口,可以转换 |
reply | iAddr:iPort --> yAddr:yPort | eAddr:ePort --> yAddr:yPort | 任意主机,任意端口,可以转换 |
地址限制锥形 NAT
- 内网主机(iAddr:iPort)首次向外网主机发送报文时创建地址映射会话,(iAddr:iPort)转换为(eAddr:ePort)。
- 所有后续的从内网主机(iAddr:iPort)发送出的报文