NAT64前缀
设备通过判断IPv6报文的目的地址中是否包含NAT64前缀来初步判断是否对该IPv6报文进行NAT64处理。
NAT64前缀分为以下两种形式。
知名前缀
即64:ff9b::/96,缺省情况下已存在,无需配置。
自定义前缀
前缀长度为32、40、48、56、64或96。
根据前缀长度不同,IPv4地址嵌入IPv6地址时,嵌入的位置存在差异,具体差异如图1所示,其中PL(Prefix Length)表示前缀长度;suffix表示后缀,可以任意取值,设备不处理该字段;U为保留位,取值必须为0。
图1 IPv4地址嵌入IPv6地址
以IPv4地址为192.168.0.1,NAT前缀为2001:db8::/64为例,该IPv4地址对应的IPv6地址为2001:0db8:0000:0000:00c0:a800:0100:0000,即2001:db8::c0:a800:100:0。
配置DNS64设备时,需要确保NAT64前缀和前缀长度与NAT64设备上的配置相同。
当前缀长度为32位时,IPv4地址嵌入IPv6地址的位置为32位~63位。
当前缀长度为40位时,24位的IPv4地址被嵌入到IPv6地址的40位~63位,剩余8位的IPv4地址被嵌入到IPv6地址的72位~79位。
当前缀长度为48位时,16位的IPv4地址被嵌入到IPv6地址的48位~63位,剩余16位的IPv4地址被嵌入到IPv6地址的72位~87位。
当前缀长度为56位时,8位的IPv4地址被嵌入到IPv6地址的56位~63位,剩余24位的IPv4地址被嵌入到IPv6地址的72位~95位。
当前缀长度为64位时,IPv4地址被嵌入到IPv6地址的72位~103位。
当前缀长度为96位时,IPv4地址被嵌入到IPv6地址的96位~127位。前缀中64位~71位必须设置为0。
以IPv4地址为192.168.0.1,NAT前缀为2001:db8::/64为例,该IPv4地址对应的IPv6地址为2001:0db8:0000:0000:00c0:a800:0100:0000,即2001:db8::c0:a800:100:0。
配置DNS64设备时,需要确保NAT64前缀和前缀长度与NAT64设备上的配置相同。