NAT64前缀是长度为32、40、48、56、64或96位的IPv6地址前缀,用于在NAT46/NAT64转换过程中构造IPv4节点在IPv6网络中的地址,实现IPv4网络与IPv6网络之间的通信。IPv4侧发起访问时,设备可利用NAT64前缀将报文的源IPv4地址转换为IPv6地址;IPv6侧发起访问时,设备可根据NAT64前缀从报文的目的IPv6地址中提取出转换后的IPv4地址。
图1-1 不同NAT64前缀长度对应的IPv6地址格式
说明
PL(Prefix Length)表示前缀长度。
以IPv4地址为192.168.1.10,NAT前缀为3001::/64为例,该IPv4地址对应的IPv6地址为3001:0000:0000:0000:00C0:A801:0A00:0000,即3001::C0:A801:A00:0。
NAT-PT(Network Address Translation-Protocol Translation,网络地址转换-协议转换)是为了实现IPv6与IPv4网络互通而提出的一种网络地址与协议转换技术,由SIIT(Stateless IP/ICMP Translation,无状态IP/ICMP翻译)协议转换技术和动态地址翻译(NAT)技术结合和演进而来;SIIT提供IPv4和IPv6一对一的地址映射转换,而NAT-PT支持在SIIT基础上实现多对一或多对多的地址转换。
NAT-PT分为静态和动态两种方式:
l 静态NAT-PT
静态NAT-PT使用手工配置的一对一静态映射规则来实现IPv4地址和IPv6地址之间的转换;对于IPv4网络节点需要访问的每一个IPv6网络节点,都需要在NAT-PT设备上预先配置好地址映射规则。
图1-2 静态NAT-PT转换工作过程举例
以IPv4侧发起访问为例,静态NAT-PT的基本工作过程为:
(1) IPv4网络主机向IPv6网络主机发送的IPv4数据包经过NAT-PT设备。
(2) NAT-PT设备接收到IPv4主机发出的数据包后,根据配置的映射规则,把源IPv4和目的IPv4地址转换成对应的IPv6地址,然后将数据包发往目的IPv6主机。
(3) IPv6主机根据源IPv6地址进行回应,IPv6数据包被发往NAT-PT设备。
(4) NAT-PT设备接收到IPv6数据包后,把源和目的IPv6地址转换成相应的IPv4地址,返回给IPv4主机。
l 动态NAT-PT
动态NAT-PT的转换过程与静态NAT-PT相似,但不同于静态NAT-PT,动态NAT-PT中IPv6和IPv4地址之间的映射关系是动态生成、可变的。NAT-PT设备接收到IPv6主机发出的IPv6数据包后对报文头进行修改,取出其中的目的IPv6地址信息,替换为指定目的IPv4地址;并从定义的IPv4地址池中取出一个空闲地址来替换IPv6报文的源地址,从而完成从IPv6地址到IPv4地址的转换。
动态NAT-PT还支持通过NAPT-PT(Network Address Port Translation-Protocol Translation,附带协议转换的网络地址端口转换)方式同时进行地址和端口转换,让同一个IPv4地址通过不同的端口号映射不同的IPv6地址,从而增加了地址的转化范围,节省IPv4地址空间。