15-AFT配置
本章节下载 (399.84 KB)
目 录
1.5.1 具有IVI地址的IPv6主机主动访问IPv4主机配置举例
1.6.1 非IVI地址的IPv6主机发起访问时AFT地址转换失败
1.6.2 IVI地址的IPv6主机发起访问时AFT地址转换失败
IPv6的应用是个循序渐进的过程,在很长一段时间内,IPv4网络和IPv6网络还会同时存在且需要相互通信。在IPv4网络完全过渡到IPv6网络之前,AFT(Address Family Translation,地址族转换)可以用来实现两个网络之间的直接通信。例如,使用AFT技术可以使IPv6网络中的主机(以下简称为IPv6主机,类似地,IPv4网络中的主机简称为IPv4主机)直接访问IPv4网络中的FTP服务器。
如图1-1所示,AFT作用于IPv4网络和IPv6网络之间的边缘设备上。配置了AFT功能的边缘设备(AFT设备)对接收到的IPv6(或IPv4)报文进行地址和协议转换,将其转变为IPv4(或IPv6)报文后,发送给报文的目的端,从而实现IPv6主机与IPv4主机的通信。地址和协议转换过程都在AFT设备上实现,对IPv4和IPv6网络来说是透明的,即用户不必改变IPv6主机和IPv4主机的配置就可实现IPv6网络与IPv4网络的通信。
图1-1 AFT典型组网示意图
AFT允许IPv6主机主动向任何IPv4主机发起访问,IPv4主机只能主动向IVI地址的IPv6主机发起访问。IVI地址的详细介绍,请参见“1.1.2 2. IVI前缀和IVI地址”。
DNS64前缀是长度为32、40、48、56、64或96位的IPv6地址前缀,用来将IPv4主机的地址转换为IPv6地址。如图1-2所示,DNS64前缀长度不同时,地址转换方法有所不同。其中,DNS64前缀长度为32、64和96位时,IPv4地址作为一个整体添加到IPv6地址中;DNS64前缀长度为40、48和56位时,IPv4地址被拆分成两部分,分别添加到64~71位的前后。
图1-2 利用DNS64前缀将IPv4地址转换为IPv6地址
DNS64前缀具有以下几个作用:
· 将IPv4报文的源地址转换为IPv6地址:IPv4主机主动发送报文给IPv6主机时,AFT设备利用DNS64前缀将源IPv4地址转换为IPv6地址。
· 将IPv6报文的目的地址转换为IPv4地址:IPv6主机主动发送报文给IPv4主机时,报文的目的IPv6地址为IPv4主机地址通过DNS64前缀转换的IPv6地址。AFT设备可以从目的IPv6地址中直接获取IPv4主机的IPv4地址,实现报文目的地址从IPv6到IPv4的转换。
IVI前缀是长度为32位的IPv6地址前缀,用来将IPv6主机的地址转换为IPv4地址。由IVI前缀构成的IVI地址格式如图1-3所示。
图1-3 IVI地址格式
IVI前缀具有以下几个作用:
· 将IPv6报文的源地址转换为IPv4地址:IPv6主机主动发送报文给IPv4主机时,如果报文的源IPv6地址符合IVI地址格式(前缀为IVI前缀,且32~39位为全1),则AFT设备从IVI地址中直接获取内嵌的IPv4地址,实现报文源地址从IPv6到IPv4的转换。
· 将IPv4报文的目的地址转换为IPv6地址:IPv4主机主动发送报文给IPv6主机时,AFT设备可以利用IVI前缀将目的IPv4地址转换为IPv6主机的IPv6地址。
IVI地址是IPv6主机实际使用的IPv6地址;DNS64前缀构成的IPv6地址是IPv4主机地址对应的IPv6地址,网络中并不存在使用该IPv6地址的主机。
AFT有以下几种实现机制:
· 无状态AFT转换
无状态AFT转换是指IPv4地址和IPv6地址映射关系是固定的、AFT设备上不需要保存地址映射关系的转换过程。利用DNS64前缀或IVI前缀实现IPv4地址和IPv6地址转换时,IPv4地址内嵌在IPv6地址中,地址映射关系是固定的,这种转换方式即为无状态AFT转换。
· 有状态AFT转换
有状态AFT转换是指动态建立IPv4地址和IPv6地址的映射关系、AFT设备上需要保存地址映射关系的转换过程。
IPv6主机主动发送报文给IPv4主机,且报文源IPv6地址不是IVI地址时,AFT设备根据配置的IPv6侧到IPv4侧的AFT策略,动态选择源IPv6地址转换后的IPv4地址。IPv6地址和IPv4地址的映射关系不是固定的,这种转换方式即为有状态AFT转换。
只有IPv6主机发送报文给IPv4主机,且报文源IPv6地址不是IVI地址时,才会使用有状态AFT将报文的源IPv6地址转换为IPv4地址。其余情况下,均采用无状态AFT实现地址转换。
在IP地址进行有状态AFT转换的基础上,还可以对TCP、UDP的端口号进行转换,这个过程称为PAT(Port Address Translation,端口地址转换)。采用这种“IP地址+端口号”的映射方式,不同的IPv6地址可以转换为同一个IPv4地址,通过不同的端口号来区分不同的IPv6地址,从而节省IPv4地址资源。
IPv6侧发起访问和IPv4侧发起访问的报文转换过程有所不同,下面将分别介绍。
图1-4 IPv6侧发起访问的AFT报文转换过程
如图1-4所示,IPv6侧发起访问时AFT设备对报文的转换过程为:
(1) 判断是否进行AFT转换:AFT设备接收到IPv6主机发送给IPv4主机的报文后,判断该报文是否要转发到IPv4网络。如果报文目的IPv6地址前缀与设备上预先配置的DNS64前缀相同或者匹配预先配置的静态映射,则该报文需要转发到IPv4网络,需要进行AFT转换。
(2) 转换源IP地址:检查源IPv6地址是否符合IVI地址格式。如果符合IVI地址格式,则从源IPv6地址中取出内嵌的IPv4地址,作为转换后报文的源IPv4地址;如果不符合,则根据配置的IPv6侧到IPv4侧的AFT策略将报文的源IPv6地址转换为IPv4地址,并在AFT地址映射表中保存该地址映射关系。
(2) 转换目的IP地址:若配置IPv4地址到IPv6地址静态映射,可根据静态映射转换,否则根据DNS64前缀的长度,从目的IPv6地址中取出内嵌的IPv4地址,作为转换后报文的目的IPv4地址。
(3) 转发报文并记录映射关系:报文的源IPv6地址和目的IPv6地址都转换为IPv4地址后,设备对报文进行协议转换(例如,将IPv6报文头转换为IPv4报文头),按照正常的转发流程将转换后的IPv4报文转发给IPv4主机。同时,AFT设备将保存IPv6地址与IPv4地址的映射关系。
(4) 根据记录的映射关系转发应答报文:IPv4主机发送给IPv6主机的报文到达AFT设备后,设备将根据已保存的映射关系进行相反的转换,从而将报文发送给IPv6主机。
通过display session table命令可以查看AFT设备上保存的IPv6地址与IPv4地址的映射关系。display session table命令的详细介绍,请参见“安全配置指导”中的“会话管理”。
图1-5 IPv4侧发起访问的AFT报文转换过程
如图1-5所示,IPv4侧发起访问时AFT设备对报文的转换过程为:
(1) 判断是否需要进行AFT转换:AFT设备接收到IPv4主机发送给IPv6主机的报文后,判断该报文是否要转发到IPv6网络。如果报文目的IPv4地址符合配置的IPv4侧到IPv6侧目的地址AFT转换策略,则需要进行AFT转换。
(2) 转换源IP地址:检查报文是否符合配置的IPv4侧到IPv6侧源地址AFT转换策略。如果符合,则根据策略中指定的DNS64前缀将报文的源IPv4地址转换为IPv6地址。如果不符合,则根据配置的第一个DNS64前缀将报文的源IPv4地址转换为IPv6地址。
(3) 转换目的IP地址:如果报文目的IPv4地址符合IPv4侧到IPv6侧的目的地址AFT转换策略,则根据该策略中指定的IVI前缀将报文的目的IPv4地址转换为IPv6地址。
(4) 转发报文并记录映射关系:报文的源IPv4地址和目的IPv4地址都转换为IPv6地址后,设备对报文进行协议转换(例如,将IPv4报文头转换为IPv6报文头),按照正常的转发流程将报文转发给IPv6主机。同时,AFT设备将保存IPv4地址与IPv6地址的映射关系。
(5) 根据记录的映射关系转发应答报文:IPv6主机发送给IPv4主机的报文到达AFT设备后,设备根据已保存的映射关系进行相反的转换,从而将报文发送给IPv4主机。
通过display session table命令可以查看AFT设备上保存的IPv4地址与IPv6地址的映射关系。display session table命令的详细介绍,请参见“安全配置指导”中的“会话管理”。
DNS服务器位于IPv4网络时,由于报文格式存在差异,IPv6网络中的DNS客户端不能和DNS服务器通信。AFT支持DNS64功能可以用来实现IPv6网络中DNS客户端与IPv4网络中的DNS服务器通信,从而实现IPv6主机通过域名访问IPv4主机。
AFT支持DNS64功能的工作过程为:
(1) IPv6主机向DNS服务器发送AAAA类(将域名解析为IPv6地址)的域名解析请求。其中,域名解析请求报文的目的IPv6地址为DNS服务器IPv4地址通过DNS64前缀转换后的IPv6地址。
(2) AFT设备接收到AAAA类的域名解析请求后,根据“1.1.4 1. IPv6侧发起访问”中所述的过程将报文的源和目的IPv6地址转换为IPv4地址。
(3) AFT设备将AAAA类请求转换为A类(将域名解析为IPv4地址)请求,并将地址转换后的AAAA类请求报文和转换后的A类请求报文同时发送给DNS服务器。
(4) AFT设备接收到DNS服务器回复的应答报文后,根据记录的映射关系将报文的源和目的IPv4地址转换为IPv6地址。
(5) 如果AFT设备收到A类的应答报文,则检查域名解析结果(域名对应的IPv4地址)是否符合IPv4侧到IPv6侧的源地址AFT转换策略。如果符合,则根据策略中指定的DNS64前缀,将IPv4地址转换为IPv6地址;否则,根据配置的第一个DNS64前缀,将IPv4地址转换为IPv6地址。之后,AFT设备将A类应答转换为AAAA类应答,发送给IPv6主机。
(6) 如果AFT设备收到AAAA类型的应答报文,则将其直接发送给IPv6主机。
(7) IPv6主机收到应答报文,并获取到IPv4主机域名对应的IPv6地址后,通过该IPv6地址与IPv4主机通信,通信过程与“1.1.4 1. IPv6侧发起访问”中所述的过程相同。
AFT具有以下一些局限性:
· 属于同一会话的请求和响应都必须通过同一台AFT设备,才能正确地进行AFT转换。
· 协议转换过程中可能会丢失部分信息,例如,不能转换IPv4报文头的可选项部分。
· 如果IPv4主机和IPv6主机通过AFT设备通信,则无法利用IPsec(IP Security,IP安全)等协议为IPv4主机和IPv6主机之间的通信提供端到端的安全性。
· 不支持对IPv4分片报文和ICMPv6分片报文进行处理。
· 目前,可以转换的协议包括ICMP、DNS、FTP以及与网络层协议相关但协议字段不涉及IP地址信息的协议。对于其他协议的报文,不能进行协议转换。
与AFT相关的协议规范有:
· draft-ietf-behave-v6v4-xlate-stateful-11
· draft-xli-behave-ivi-07
如表1-2所示,配置IPv4地址到IPv6地址静态映射静态映射时,AFT设备上需要配置以下内容。
表1-1 AFT静态映射配置任务简介
配置任务 |
说明 |
详细配置 |
使能AFT功能 |
必选 |
|
配置IPv4地址到IPv6地址静态映射 |
必选 |
如表1-2所示,IPv6主机主动向IPv4主机发起访问时,AFT设备上需要配置以下内容。
表1-2 IPv6侧发起访问时AFT配置任务简介
配置任务 |
说明 |
详细配置 |
使能AFT功能 |
必选 |
|
配置DNS64前缀 |
必选 |
|
配置IVI前缀 |
二者必选其一 |
|
配置IPv6侧到IPv4侧的AFT转换策略 |
如表1-3所示,IPv4主机主动向IPv6主机发起访问时,AFT设备上需要配置以下内容。
表1-3 IPv4侧发起访问时AFT配置任务简介
配置任务 |
说明 |
详细配置 |
使能AFT功能 |
必选 |
|
配置DNS64前缀 |
必选 |
|
配置IVI前缀 |
必选 |
|
配置IPv4侧到IPv6侧的AFT转换策略 |
必选 |
在配置AFT之前,需要先在设备上完成以下配置任务:
· 使能IPv6转发功能,详细配置请参见“三层技术-IP业务配置指导”中的“IPv6基础”。
· 根据实际情况在连接IPv4网络或IPv6网络的接口上配置IPv4或IPv6地址。
在连接IPv4网络和IPv6网络的接口上都使能AFT功能后,才能实现IPv4报文和IPv6报文之间的相互转换。
表1-4 使能AFT功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
- |
使能AFT功能 |
aft enable |
必选 缺省情况下,AFT功能处于关闭状态 |
· 执行aft enable命令后,会同时使能NAT-PT(Network Address Translation-Protocol Translation,附带协议转换的网络地址转换)功能。NAT-PT的详细介绍,请参见“三层技术-IP业务配置指导”中的“NAT-PT”。
· 建议不要在同一台设备上同时配置AFT转换策略和NAT-PT转换策略。
表1-5 配置AFT静态映射
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置IPv4地址到IPv6地址静态映射 |
aft static ipv4-address ipv6-address |
必选 缺省情况下,不存在任何IPv4地址到IPv6地址静态映射 |
· AFT静态映射的优先级高于IVI前缀和动态映射。
· 静态IPv6映射地址不受prefix-dns64前缀限制。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置DNS64前缀 |
aft prefix-dns64 dns64-prefix prefix-length |
必选 缺省情况下,不存在任何DNS64前缀 |
· DNS64前缀不能和IPv6主机同网段。
· DNS64前缀不能和IVI前缀相同。
· 通过重复执行aft prefix-dns64命令,可以在设备上配置多个DNS64前缀。
表1-7 配置IVI前缀
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置IVI前缀 |
aft prefix-ivi ivi-prefix |
必选 缺省情况下,不存在任何IVI前缀 |
· 配置的DNS64前缀和IVI前缀不能相同。
· 通过重复执行aft prefix-ivi命令,可以在设备上配置多个IVI前缀。
IPv6主机主动访问IPv4主机时,如果报文的源IPv6地址不是IVI地址,则根据IPv6侧到IPv4侧的AFT转换策略将源IPv6地址转换为IPv4地址。
IPv6侧到IPv4侧的AFT转换策略是指对于IPv6主机发起的访问,如果报文的源IPv6地址符合指定的IPv6 ACL规则或者目的IPv6地址前缀与指定的DNS64前缀相同,则会把源IPv6地址转换为指定AFT地址池中的IPv4地址或者指定接口的IPv4地址。
设备支持如下几种映射方式:
(1) 方式1:IPv6 ACL与地址池关联的方式
如果IPv6报文的源IPv6地址符合指定的IPv6 ACL规则,源IPv6地址就会转换为与IPv6 ACL关联的地址池中的IPv4地址。如果配置中指定了no-pat关键字,则只转换报文的IP地址,不转换报文的端口号;否则,同时对报文的地址和端口号进行转换,以节省IPv4地址。
(2) 方式2:IPv6 ACL与接口地址关联的方式
如果IPv6报文的源IPv6地址符合指定的IPv6 ACL规则,源IPv6地址就会转换为与IPv6 ACL关联的接口的IPv4地址。在这种方式下,AFT设备同时对报文的地址和端口号进行转换。
(3) 方式3:DNS64前缀与地址池关联的方式
如果IPv6报文的目的IPv6地址前缀与策略中指定的DNS64前缀相同,源IPv6地址就会转换为与DNS64前缀关联的地址池中的IPv4地址。如果配置中指定了no-pat关键字,则只转换报文的IP地址,不转换报文的端口号;否则,同时对报文的地址和端口号进行转换。
(4) 方式4:DNS64前缀与接口地址关联的方式
如果IPv6报文的目的IPv6地址前缀与策略中指定的DNS64前缀相同,源IPv6地址就会转换为与DNS64前缀关联的接口的IPv4地址。在这种方式下,AFT设备同时对报文的地址和端口号进行转换。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置AFT地址池 |
aft address-group group-number start-ipv4-address end-ipv4-address |
采用方式1或方式3时,为必选;采用方式2或方式4时,不需要执行本配置 |
配置IPv6 ACL与地址池关联方式的AFT转换策略 |
aft v6tov4 acl6 number acl6-number address-group group-number [ no-pat ] |
四者必选其一 |
配置IPv6 ACL与接口地址关联方式的AFT转换策略 |
aft v6tov4 acl6 number acl6-number interface interface-type interface-number |
|
配置DNS64前缀与地址池关联方式的AFT转换策略 |
aft v6tov4 prefix-dns64 dns64-prefix prefix-length address-group group-number [ no-pat ] |
|
配置DNS64前缀与接口地址关联方式的AFT转换策略 |
aft v6tov4 prefix-dns64 dns64-prefix prefix-length interface interface-type interface-number |
· AFT地址池包含一组连续的IPv4地址,用于IPv6地址到IPv4地址的转换。当报文从IPv6网络发送到IPv4网络时,如果采用方式1或者方式3的AFT转换策略,则设备会从地址池中选择一个IPv4地址作为IPv6报文转换后的源地址。
· 在配置IPv6侧到IPv4侧的AFT转换策略时,指定的DNS64前缀必须是通过aft prefix-dns64命令配置的前缀。
· 关于ACL规则的详细配置请参见“ACL和QoS配置指导”中的“ACL”。
IPv4侧到IPv6侧的AFT转换策略用来在IPv4主机主动访问IPv6主机时,将IPv4报文的源和目的IPv4地址转换为IPv6地址。
IPv4侧到IPv6侧的AFT转换策略分为两部分:
· 源IPv4地址的转换策略:如果报文符合策略中指定的ACL规则,则根据该策略中指定的DNS64前缀将源IPv4地址转换为IPv6地址。如果报文不符合任何策略中的ACL规则,则根据系统视图下配置的第一个DNS64前缀将源IPv4地址转换为IPv6地址。
· 目的IPv4地址的转换策略:如果报文的目的IPv4地址符合策略中指定的ACL规则,则根据该策略中指定的IVI前缀将目的IPv4地址转换为IPv6地址。如果报文的目的IPv4地址不符合任何策略中的ACL规则,则不进行AFT转换,直接根据报文的目的IPv4地址转发报文。
表1-9 配置IPv4侧到IPv6侧的AFT转换策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置IPv4侧到IPv6侧的源地址AFT转换策略 |
aft v4tov6 acl number acl-number prefix-dns64 dns64-prefix prefix-length |
可选 |
配置IPv4侧到IPv6侧的目的地址AFT转换策略 |
aft v4tov6 acl number acl-number prefix-ivi ivi-prefix |
必选 |
· 在配置IPv4侧到IPv6侧的AFT转换策略时,策略中指定的DNS64前缀和IVI前缀,必须是通过aft prefix-dns64和aft prefix-ivi命令配置的前缀。
· 使用AFT支持DNS64功能时,如果DNS服务器应答的域名解析结果为IPv4地址,则AFT设备根据IPv4侧到IPv6侧的源地址AFT转换策略,选择DNS64前缀,将IPv4地址转换为IPv6地址。
· 配置IPv4侧到IPv6侧的目的地址AFT转换策略时,指定的ACL规则需要配置为匹配报文目的地址;配置IPv4侧到IPv6侧的源地址AFT转换策略时,对指定的ACL规则没有限制。
· 不同的AFT转换策略中不能指定相同的ACL规则。
· 关于ACL规则的详细配置请参见“ACL和QoS配置指导”中的“ACL”。
在完成上述配置后,在任意视图下执行display命令可以显示配置后AFT的运行情况,用户可以通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除AFT地址映射信息及统计信息。
表1-10 AFT显示和维护
操作 |
命令 |
显示AFT的所有相关信息 |
display aft all [ | { begin | exclude | include } regular-expression ] |
显示AFT地址池配置信息 |
display aft address-group [ | { begin | exclude | include } regular-expression ] |
显示AFT的地址映射信息 |
display aft address-mapping [ | { begin | exclude | include } regular-expression ] |
显示AFT的统计信息 |
display aft statistics [ | { begin | exclude | include } regular-expression ] |
清除所有的AFT统计信息 |
reset aft statistics |
IPv6网络内地址为6:0:ff06:606:200::的Host A希望访问IPv4网络内地址为4.4.4.2的Host C。
图1-6 具有IVI地址的IPv6主机主动访问IPv4主机组网图
由于Host A的IPv6地址为IVI地址,因此,在IPv4网络和IPv6网络之间部署AFT设备Router B,并在Router B上配置DNS64前缀和IVI前缀,即可实现Host A访问Host C。
(1) 配置AFT设备Router B
# 使能IPv6转发功能。
<RouterB> system-view
[RouterB] ipv6
# 配置接口GigabitEthernet3/0/1和GigabitEthernet3/0/2的地址,并在两个接口上使能AFT功能。
[RouterB] interface gigabitethernet 3/0/1
[RouterB-GigabitEthernet3/0/1] ipv6 address 6:0:ff06:606:100::/64
[RouterB-GigabitEthernet3/0/1] aft enable
[RouterB-GigabitEthernet3/0/1] quit
[RouterB] interface gigabitethernet 3/0/2
[RouterB-GigabitEthernet3/0/2] ip address 4.4.4.1 24
[RouterB-GigabitEthernet3/0/2] aft enable
[RouterB-GigabitEthernet3/0/2] quit
# 配置DNS64前缀。
[RouterB] aft prefix-dns64 2000:: 32
# 配置IVI前缀。
[RouterB] aft prefix-ivi 6::
(2) 配置IPv6侧主机Host A
在Host A上需要完成以下配置,具体配置过程略。
· 配置IPv6地址6:0:ff06:606:200::/64。
· 配置到达DNS64前缀2000::/32对应网段的静态路由,静态路由的下一跳地址为6:0:ff06:606:100::。
(3) 配置IPv4侧主机Host C
在Host C上需要完成以下配置,具体配置过程略。
· 配置IPv4地址4.4.4.2/24。
· 配置到达IVI地址内嵌的IPv4网段(6.6.6.0/24网段)的静态路由,静态路由的下一跳地址为4.4.4.1。
Host C的IPv4地址(4.4.4.2)通过DNS64前缀(2000::/32)转换后为2000:0:404:402::。配置完成后,在Host A上执行命令ping ipv6 2000:0:404:402::,可以收到Host C的响应报文。
# 在设备Router B上通过display session table verbose命令可以看到建立的会话信息。
[RouterB] display session table verbose
Initiator:
Source IP/Port : 0006:0:ff06:0606:0200::/32768
Dest IP/Port : 2000:0:0404:0402::/43982
VPN-Instance/VLAN ID/VLL ID:
Responder:
Source IP/Port : 4.4.4.2/0
Dest IP/Port : 6.6.6.2/43982
VPN-Instance/VLAN ID/VLL ID:
Pro: ICMPv6(58) App: unknown State: ICMP-CLOSED
Start time: 2010-12-21 16:06:44 TTL: 14s
Root Zone(in):
Zone(out): Management
Received packet(s)(Init): 5 packet(s) 520 byte(s)
Received packet(s)(Reply): 5 packet(s) 420 byte(s)
Total find: 1
IPv4网络内地址为4.4.4.2的Host C希望访问IPv6网络内地址为6:0:ff06:606:200::的Host A。
图1-7 IPv4主机主动访问IPv6主机组网图
由于是IPv4侧发起访问,因此,在IPv4网络和IPv6网络之间部署AFT设备Router B,在Router B上配置DNS64前缀和IVI前缀,并配置IPv4侧到IPv6侧的AFT转换策略,即可实现Host C主动访问Host A。
(1) 配置AFT设备Router B
# 使能IPv6转发功能。
<RouterB> system-view
[RouterB] ipv6
# 配置接口GigabitEthernet3/0/1和GigabitEthernet3/0/2的地址,并在两个接口上使能AFT功能。
[RouterB] interface gigabitethernet 3/0/1
[RouterB-GigabitEthernet3/0/1] ipv6 address 6:0:ff06:606:100::/64
[RouterB-GigabitEthernet3/0/1] aft enable
[RouterB-GigabitEthernet3/0/1] quit
[RouterB] interface gigabitethernet 3/0/2
[RouterB-GigabitEthernet3/0/2] ip address 4.4.4.1 24
[RouterB-GigabitEthernet3/0/2] aft enable
[RouterB-GigabitEthernet3/0/2] quit
# 配置DNS64前缀。
[RouterB] aft prefix-dns64 2000:: 32
# 配置IVI前缀。
[RouterB] aft prefix-ivi 6::
# 创建ACL规则3000,匹配目的地址为6.6.6.0/24网段(IVI地址内嵌的IPv4网段)的IP报文。
[RouterB] acl number 3000
[RouterB-acl-adv-3000] rule permit ip destination 6.6.6.0 0.0.0.255
[RouterB-acl-adv-3000] quit
# 配置IPv4侧到IPv6侧的目的地址AFT转换策略:如果报文目的地址属于6.6.6.0/24网段,则根据IVI前缀6::,将报文的目的IPv4地址转换为IPv6地址。
[RouterB] aft v4tov6 acl number 3000 prefix-ivi 6::
# 创建ACL规则2000,匹配源地址为4.4.4.0/24网段(Host C所在网段)的报文。(此步骤可选)
[RouterB] acl number 2000
[RouterB-acl-basic-2000] rule permit source 4.4.4.0 0.0.0.255
[RouterB-acl-basic-2000] quit
# 配置IPv4侧到IPv6侧的源地址AFT转换策略:如果报文源地址属于4.4.4.0/24网段,则根据DNS64前缀2000::/32,将报文的源IPv4地址转换为IPv6地址。(此步骤可选)
[RouterB] aft v4tov6 acl number 2000 prefix-dns64 2000:: 32
IPv4侧到IPv6侧的源地址AFT转换策略为可选配置步骤。如果未配置,则采用配置的第一个DNS64前缀将报文的源IPv4地址转换为IPv6地址。
(2) 配置IPv6侧主机Host A
在Host A上需要完成以下配置,具体配置过程略。
· 配置IPv6地址6:0:ff06:606:200::/64。
· 配置到达DNS64前缀2000::/32对应网段的静态路由,静态路由的下一跳地址为6:0:ff06:606:100::。
(3) 配置IPv4侧主机Host C
在Host C上需要完成以下配置,具体配置过程略。
· 配置IPv4地址4.4.4.2/24。
· 配置到达IVI地址内嵌的IPv4网段(6.6.6.0/24网段)的静态路由,静态路由的下一跳地址为4.4.4.1。
Host A的IPv6地址(6:0:ff06:606:200::)内嵌的IPv4地址为6.6.6.2。配置完成后,在Host C上执行命令ping 6.6.6.2,可以收到Host A的响应报文。
# 在设备Router B上通过display session table verbose命令可以看到建立的会话信息。
[RouterB] display session table verbose
Initiator:
Source IP/Port : 4.4.4.2/2048
Dest IP/Port : 6.6.6.2/1
VPN-Instance/VLAN ID/VLL ID:
Responder:
Source IP/Port : 0006:0:ff06:0606:0200::/33024
Dest IP/Port : 2000:0:0404:0402::/1
VPN-Instance/VLAN ID/VLL ID:
Pro: ICMP(1) App: unknown State: ICMP-CLOSED
Start time: 2010-12-21 16:27:00 TTL: 23s
Root Zone(in): Management
Zone(out):
Received packet(s)(Init): 5 packet(s) 420 byte(s)
Received packet(s)(Reply): 5 packet(s) 520 byte(s)
Total find: 1
· Host C位于IPv4网络,IPv4地址为4.4.4.2,域名为hostc.com。
· Host A位于IPv6网络,IPv6地址为6::2。
· DNS服务器位于IPv4网络,地址为3.3.3.5。DNS服务器上存在域名hostc.com和地址4.4.4.2的对应关系。
IPv6网络内的Host A希望通过域名hostc.com访问IPv4网络内的Host C。
图1-8 AFT支持DNS64功能组网图
为了实现上述需求,需要进行以下配置:
· 在IPv4网络和IPv6网络之间部署AFT设备Router B,在Router B上配置DNS64前缀。由于Host A的IPv6地址不是IVI地址,因此需要在Router B上配置IPv6侧到IPv4侧的AFT转换策略。
· 在Host A上指定域名服务器地址为IPv4地址3.3.3.5通过DNS64前缀转换后的IPv6地址2000:0:303:305::。
(1) 配置AFT设备Router B
# 使能IPv6转发功能。
<RouterB> system-view
[RouterB] ipv6
# 配置接口GigabitEthernet3/0/1、GigabitEthernet3/0/2和GigabitEthernet3/0/3的地址,并在三个接口上使能AFT功能。
[RouterB] interface gigabitethernet 3/0/1
[RouterB-GigabitEthernet3/0/1] ipv6 address 6::1/64
[RouterB-GigabitEthernet3/0/1] aft enable
[RouterB-GigabitEthernet3/0/1] quit
[RouterB] interface gigabitethernet 3/0/2
[RouterB-GigabitEthernet3/0/2] ip address 4.4.4.1 24
[RouterB-GigabitEthernet3/0/2] aft enable
[RouterB-GigabitEthernet3/0/2] quit
[RouterB] interface gigabitethernet 3/0/3
[RouterB-GigabitEthernet3/0/3] ip address 3.3.3.1 24
[RouterB-GigabitEthernet3/0/3] aft enable
[RouterB-GigabitEthernet3/0/3] quit
# 配置DNS64前缀。
[RouterB] aft prefix-dns64 2000:: 32
# 配置AFT地址池。
[RouterB] aft address-group 1 6.6.6.10 6.6.6.20
# 配置IPv6侧到IPv4侧的AFT转换策略:如果报文的目的地址前缀为DNS64前缀(2000::/32),则将源IPv6地址转换为AFT地址池1中的地址,并同时进行地址和端口转换。
[RouterB] aft v6tov4 prefix-dns64 2000:: 32 address-group 1
# 创建ACL规则2000,匹配源地址为4.4.4.0/24网段(Host C所在网段)的报文。(此步骤可选)
[RouterB] acl number 2000
[RouterB-acl-basic-2000] rule permit source 4.4.4.0 0.0.0.255
[RouterB-acl-basic-2000] quit
# 配置IPv4侧到IPv6侧的源地址AFT转换策略:如果域名解析结果中的IPv4地址属于4.4.4.0/24网段,则根据DNS64前缀2000::/32,将此IPv4地址转换为IPv6地址。(此步骤可选)
[RouterB] aft v4tov6 acl number 2000 prefix-dns64 2000:: 32
在本配置举例中,IPv4侧到IPv6侧的源地址AFT转换策略用来将域名解析结果中的IPv4地址转换为IPv6地址。本配置步骤为可选。如果未配置,则采用配置的第一个DNS64前缀将域名解析结果中的IPv4地址转换为IPv6地址。
(2) 配置IPv6侧主机Host A
在Host A上需要完成以下配置,具体配置过程略。
· 配置IPv6地址6::2/64。
· 配置到达DNS64前缀2000::/32对应网段的静态路由,静态路由的下一跳地址为6::1。
· 配置DNS服务器的IPv6地址为IPv4地址3.3.3.5经过DNS64前缀2000::/32转换后的IPv6地址:2000:0:303:305::。
(3) 配置IPv4侧主机Host C
在Host C上需要完成以下配置,具体配置过程略。
· 配置IPv4地址4.4.4.2/24。
· 配置到达AFT地址池中的地址所在网段(6.6.6.0/24网段)的静态路由,静态路由的下一跳地址为4.4.4.1。
DNS服务器上也需要配置到达6.6.6.0/24网段的路由,配置过程略。
配置完成后,在Host A上执行命令ping ipv6 hostc.com,可以看到域名hostc.com解析为IPv6地址2000:0:404:402::(Host C的IPv4地址通过DNS64前缀转换后的IPv6地址),并收到Host C的响应报文。
# 在设备Router B上通过display session table verbose命令可以看到建立的会话信息。
[RouterB] display session table verbose
Initiator:
Source IP/Port : 0006::0002/2628
Dest IP/Port : 2000:0:0303:0305::/53
VPN-Instance/VLAN ID/VLL ID:
Responder:
Source IP/Port : 3.3.3.5/53
Dest IP/Port : 6.6.6.10/12298
VPN-Instance/VLAN ID/VLL ID:
Pro: UDP(17) App: DNS State: UDP-READY
Start time: 2010-12-21 17:00:06 TTL: 52s
Root Zone(in):
Zone(out): Management
Received packet(s)(Init): 1 packet(s) 77 byte(s)
Received packet(s)(Reply): 2 packet(s) 183 byte(s)
Initiator:
Source IP/Port : 0006::0002/32768
Dest IP/Port : 2000:0:0404:0402::/44012
VPN-Instance/VLAN ID/VLL ID:
Responder:
Source IP/Port : 4.4.4.2/0
Dest IP/Port : 6.6.6.10/12299
VPN-Instance/VLAN ID/VLL ID:
Pro: ICMPv6(58) App: unknown State: ICMP-CLOSED
Start time: 2010-12-21 17:00:06 TTL: 23s
Root Zone(in): Management
Zone(out): Management
Received packet(s)(Init): 5 packet(s) 520 byte(s)
Received packet(s)(Reply): 5 packet(s) 420 byte(s)
Total find: 2
非IVI地址的IPv6主机主动访问IPv4主机时,AFT地址转换失败。
· 在AFT设备上打开AFT调试信息开关,根据设备的调试信息定位错误。
· 在调试过程中,检查源地址转换是否成功。如果源地址转换失败,则问题原因可能是地址池中没有足够的IP地址。
· 可以通过增大地址池中IP地址范围,或采用“IP地址+端口号”的方式进行AFT转换。
IVI地址的IPv6主机主动访问IPv4主机时,AFT地址转换失败。
检查IPv6主机的IPv6地址是否符合IVI地址格式要求。如果不符合IVI地址格式要求,则需要更改IPv6主机的地址,或在AFT设备上配置IPv6侧到IPv4侧的AFT转换策略。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!