Linux NAT 工作方式

本文介绍了Linux中NAT的工作方式,包括基本NAT和NAPT,详细解析了全锥形、地址限制锥形、端口限制锥形和对称型NAT的特点。并通过测试案例test_case_1、test_case_2和test_case_3探讨了iptables对NAT类型的影响。同时,文章还探讨了UDP打洞的原理以及对称NAT为何难以实现P2P通信。
摘要由CSDN通过智能技术生成

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

  1. 内网主机(iAddr:iPort)首次向外网主机发送报文时创建地址映射会话,(iAddr:iPort)转换为(eAddr:ePort)。
  2. 所有后续的从内网主机(iAddr:iPort)发送出的报文,都会被转换为(eAddr:ePort)。不论目的外网主机的地址如何。
  3. 任何外网主机发送到(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

  1. 内网主机(iAddr:iPort)首次向外网主机发送报文时创建地址映射会话,(iAddr:iPort)转换为(eAddr:ePort)。
  2. 所有后续的从内网主机(iAddr:iPort)发送出的报文
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值