06-MAP-E配置
本章节下载: 06-MAP-E配置 (525.98 KB)
目 录
MAP(Mapping of Address and Port,地址端口映射)是一种IPv4向IPv6的过渡技术,主要满足运营商在纯IPv6网络中承载用户IPv4业务的需求。MAP技术结合了无状态和双重翻译/封装技术,可以无状态地将IPv4报文映射为IPv6报文。
根据对IPv4报文的封装方式不同,将MAP技术分为MAP-E(Mapping of Address and Port with Encapsulation,无状态的映射与双重封装)和MAP-T(Mapping of Address and Port using Translation,无状态的映射与双重翻译)两种,两者均为IPv4 over IPv6的IPv6过渡技术。当前仅支持MAP-E。
在IPv4 over IPv6场景下,MAP技术在性能、可靠性和部署成本方面均具有较大优势,能够有效降低运营商的设备投入成本。与此同时,MAP技术能够推动网络向IPv6演进。
MAP技术涉及的基本概念包括:
· MAP-E(Mapping of Address and Port with Encapsulation,无状态的映射与双重封装):MAP-E是一种用IPv6报文头封装IPv4报文的一种无状态过渡技术。
· MAP CE(Customer Edge,用户边缘设备),位于IPv4网络与IPv6网络之间,用于IPv4用户接入IPv6网络。
· MAP BR(Border Relay,边界中继设备),位于IPv6网络与IPv4网络的边界。
· MAP规则(MAP Rule):IPv4前缀(即IPv4地址的网络号)、独享IPv4地址或共享IPv4地址与IPv6前缀或IPv6地址之间的映射规则。包括BMR规则(Basic Mapping Rule)、FMR规则(Forwarding Mapping Rule)。
· MAP域(MAP domain):多个MAP CE和MAP BR设备组成一个MAP域。同一个域中MAP CE和MAP BR有相同的IPv6前缀、IPv4前缀、相同地址转换规则和转发规则等。
· Port set:端口组,每个端口组中包含一段连续的端口号。不同的端口组的端口号各自独立。不同的MAP CE拥有不同的端口组。
· Port Set ID:简称为PSID。PSID的长度k决定了共享率,共享率R=2^k,即传输层端口分为2^k份,一份包含一组连续的端口号。每份共享给一个MAP CE使用。
· Shared IPv4 address:在多个CE之间共享的IPv4地址。CE只能使用Port set中的端口与其他设备通信。Shared IPv4 address也称为端口受限的IPv4地址。
· End-user IPv6 prefix:通过DHCPv6为MAP CE分配的IPv6前缀。每个MAP CE的End-user IPv6 prefix是唯一的。
· MAP IPv6 address:开启MAP功能的CE的IPv6地址,用于BR或其他CE到达该CE。
· Rule IPv6 prefix:MAP规则指定的IPv6前缀和长度。
· Rule IPv4 prefix:MAP规则指定的IPv4前缀和长度,即IPv4地址的网络号和掩码长度。
· EA位(Embedded Address bits):用以指示分配给CE设备的IPv6前缀中IPv4后缀(即IPv4地址的主机号)与PSID的长度之和。
如图1-1所示,在部署了MAP-E的网络中,有MAP CE和MAP BR两种设备类型。MAP CE作为IPv4私网侧用户的业务接入点,MAP BR作为IPv4网络和IPv6网络的边界节点。多个MAP CE设备和单个MAP BR设备组成一个MAP Domain。同一个MAP Domain中的MAP CE和MAP BR有相同的IPv6前缀、IPv4前缀、BMR规则和FMR规则。
H3C设备仅支持充当MAP CE设备。
MAP Domain中仅支持存在一台MAP BR设备。
图1-1 MAP-E基本架构
MAP-E的工作机制如下:
(1) MAP CE设备作为DHCPv6客户端向DHCPv6服务器发送DHCPv6请求报文,向DHCPv6服务器申请End-user IPv6 prefix和MAP-E信息。其中,请求报文中携带Option 6(Option Request Option,选项请求选项)选项,用来向DHCPv6服务器请求包含MAP-E信息的Option 94。
DHCPv6服务器发送的响应报文中的Option 94通过如下子选项来下发MAP-E信息。Option 89和Option 93共同构成了BMR规则。
¡ Option 89,主要包含EA位长度、IPv4前缀、IPv4前缀长度、IPv6前缀、IPv6前缀长度等信息。
¡ Option 93,主要包含PSID的值、PSID的长度、PSID偏移位的数量等信息。
¡ Option 90,主要包含MAP BR的IPv6地址(BR IPv6 address)信息。
(2) MAP CE设备的NAT模块使用从MAP-E信息中获取的公网资源对私网IPv4报文的源IPv4地址和源端口号进行转换。
公网资源包括公网IPv4地址和端口信息,MAP CE设备能够从MAP-E信息中直接获取到公网IPv4地址信息。同时,MAP CE设备根据PSID的值、PSID的长度以及PSID偏移位计算出Post set。
(3) MAP CE设备根据BMR规则计算出公网IPv4地址和端口号对应的IPv6地址。
(4) 后续,MAP CE设备的隧道模块为原始IPv4报文封装IPv6报文头,其中源IPv6地址为步骤(3)中的IPv6地址,目的IPv6地址为BR IPv6地址。然后,MAP CE设备将封装后的报文通过IPv6网络发送给MAP BR设备。
(5) MAP BR设备收到该报文后对IPv6源地址和源端口做校验,校验通过后将IPv6报文头去掉得到原始IPv4报文,然后查找路由转发IPv4报文。
如果IPv6报文未通过校验,则MAP BR设备丢弃该IPv6报文。
MAP-E的报文处理流程如图1-2所示。
(1) IPv4私网侧用户向IPv4公网侧用户发送报文。
(2) MAP CE收到报文后,MAP CE上的NAT模块和隧道模块先后完成如下工作:
a. NAT模块将IPv4报文的私网源IP地址和源端口号转换为公网IP地址和端口号。
b. 隧道模块查找BMR规则,推算出转换后的公网源IPv4地址和源端口号对应的IPv6地址。然后为IPv4报文封装IPv6报文头,其中,根据BMR规则推算出的IPv6地址作为IPv6报文头的源IPv6地址,MAP BR的IPv6地址作为IPv6报文头的目的IPv6地址。
(3) MAP BR收到目的地址为自身BR IPv6地址的IPv6报文后,隧道模块对IPv6源地址和端口进行校验。对于通过校验的IPv6报文,隧道模块去掉IPv6报文头,得到IPv4报文。然后转发模块查找IPv4路由将IPv4报文转发到IPv4公网侧。
(4) IPv4公网侧用户向IPv4私网侧发送回应报文。
(5) MAP BR收到报文后,隧道模块查找BMR规则,推算出目的IPv4地址和目的端口号对应的IPv6地址。然后为IPv4报文封装IPv6报文头,其中,根据BMR规则推算出的IPv6地址和MAP BR的IPv6地址分别作为IPv6报文头的目的IPv6地址和源IPv6地址。
(6) MAP CE收到IPv6报文后,隧道模块去掉IPv6报文头,得到IPv4报文。然后NAT模块查找地址映射表,对IPv4报文的目的IP和目的端口号进行转换。接着转发模块查找IPv4路由将IPv4报文转发到IPv4私网侧。
图1-2 MAP-E报文处理流程图
MAP CE收到私网IPv4报文后,会对该报文的源IPv4地址和源端口号进行转换,然后由MAP CE的隧道模块为转换后的IPv4报文封装IPv6头。为了提高公网IPv4地址的利用率,MAP借用传输层端口来扩展IPv4地址,实现MAP CE上的一个公网IPv4地址可以被多个私网用户使用的目的。
MAP将16位的传输层端口号划分为三部分:A、Port Set ID和M。
· A:PSID offset,即PSID偏移位的数量,默认为6。这是为了避免和知名端口区间0~1023中的端口号冲突。
· Port Set ID:简称为PSID。PSID的长度k决定了共享率,共享率R=2^k,即传输层端口分为2^k份,一份包含一组连续的端口号。不同的MAP CE占用不同的Port Set。
· M:M域的长度m决定了Port set中连续端口的数量,连续端口的数量=2^m。
通过上述机制可以划分为2^k个Port set,每个Port set由唯一的PSID值标识,每个PSID值对应的Port set中包含((2^a)-1)*(2^m)个端口号。
图1-3 MAP中的传输层端口号结构
例如,PSID offset为4,PSID长度为10,则M域的长度为2。那么传输层端口分成了2^10份Port set,即1024份Port set;每份Port set中包含((2^4)-1)*(2^2)个端口号,即60个端口号。表1-1为PSID值和Port set的对应关系。由于Port set中的端口号是不连续的,所以表格中的Port set是分段的。
表1-1 PSID值和Port set的对应关系表
PSID的值 |
Port set中的第1个连续段(A=0001) |
Port set中的第2个连续段(A=0010) |
…… |
Port set中的第15个连续段(A=1111) |
0 |
4096,4097,4098,4099 |
8192,8193,8194,8195 |
…… |
61440,61441,61442,61443 |
1 |
4100,4101,4102,4103 |
8196,8197,8198,8199 |
…… |
61444,61445,61446,61447 |
2 |
4104,4105,4106,4107 |
8200,8201,8202,8203 |
…… |
61448,61449,61450,61451 |
3 |
4108,4109,4110,4111 |
8204,8205,8206,8207 |
…… |
61452,61453,61454,61455 |
…… |
…… |
…… |
…… |
…… |
1023 |
8188,8189,8190,8191 |
12284,12285,12286,12287 |
…… |
65532,65533,65534,65535 |
MAP CE将原始IPv4报文转换后的IPv4地址和端口号按照图1-4所示的映射规则映射为一个IPv6地址,该地址包括Rule IPv6 prefix、EA、Subnet ID和Interface ID四个字段。映射规则将IPv4的地址和端口信息与IPv6地址建立了强关联,形成无状态的映射,即MAP BR设备不需要维护IPv6地址和IPv4地址之间的映射关系。
本字段为DHCPv6服务器为MAP CE下发的IPv6前缀。
本字段为子网ID。在MAP-E中,Subnet ID被置为0。
本字段由IPv4地址的后缀(即IPv4地址的主机号)和传输层端口的PSID的值组合形成。
本字段由IPv4 address和PSID的值组合而成。
· 当EA length + Rule prefix4 length ≥ 32时,DHCPv6服务器分给CE设备的是独享或共享IP地址。此时Interface ID仅支持IETF RFC和IETF Draft规定的格式。具体组成机制如下:
¡ 对于IPv4 address字段,该字段直接填充32位长度的IPv4地址。
¡ 对于PSID字段,如果从EA位提取的PSID值不足16位时,则向左填充0补齐16位。例如,从EA位提取的PSID值为0xAC,则Interface ID中的PSID填充为“0x00AC”。
EA length + Rule prefix4 length = 32时,如图1-5所示,DHCPv6服务器分配的是独享IPv4地址,此时没有PSID值可以提取,因此Interface ID中的所有PSID均填充为“0x0000”。
图1-4 IPv4与IPv6地址的映射(EA length + Rule prefix4 length > 32)
图1-5 IPv4与IPv6地址的映射(EA length + Rule prefix4 length = 32)
· 当EA length + Rule prefix4 length < 32时,DHCPv6服务器分给CE设备的是IPv4前缀(IP地址段)。此时Interface ID支持RFC、Draft、H3C自定义以及Draft+H3C四种格式。具体组成机制如下:
¡ 对于IPv4 address字段,因DHCPv6服务器为MAP CE分配的是IPv4前缀,RFC和Draft规定的格式中IPv4前缀需向右填充0补齐32位的IPv4 address字段。例如,Rule IPv4 prefix为2.1.1.0/29,则此处IPv4 address字段填充为“0x02010100”(十六进制)。
H3C自定义格式中IPv4 address字段由IPv4前缀地址段中包含的地址填充。
¡ 对于PSID字段,DHCPv6服务器为MAP CE分配的是IPv4前缀时没有PSID值可以提取,因此Interface ID中的所有PSID均填充为“0x0000”。
图1-6 IPv4与IPv6地址的映射(EA length + Rule prefix4 length < 32)
MAP-E包含两种MAP规则:BMR和FMR。其中,BMR为必选规则,FMR为可选规则。
· BMR规则:主要描述IPv6地址和“IPv4地址+端口”的映射关系。MAP CE使用BMR规则对用户的IPv4报文进行NAT44地址转换,并对转换后的报文进行IPv6封装。MAP BR使用BMR规则对IPv6报文进行解封装,并对回程流量进行IPv6封装,然后在MAP域中按照IPv6路由转发给MAP CE。
· FMR规则:用于在MAP域中实现MAP CE间的互访流量直接通信,即不需要通过MAP BR中转。在MAP域中MAP CE在访问其他MAP CE时,源IPv6地址为MAP CE通过BMR规则生成的IPv6地址,目的IPv6地址为对端MAP CE的地址。FMR规则用于MAP CE生成对端MAP CE的IPv6地址,该地址作为目的IPv6地址。当前FMR规则只能与BMR规则相同。
例如,如图1-7所示,MAP CE 1、MAP CE 2和MAP BR处于同一个MAP域,MAP CE 1和MAP CE 2上的BMR规则相同,且FMR规则与BMR规则相同。
图1-7 MAP CE 2使用FMR规则访问MAP CE 1示意图
IPv4终端2通过IPv4终端1的公网IPv4地址和端口号访问IPv4终端1时,MAP CE 2通过如下机制为IPv4终端2发送的原始IPv4报文封装IPv6报文头:
a. MAP CE 2根据IPv4终端2地址转换后的公网源IPv4地址和源端口号信息以及BMR规则等MAP-E信息,推算出IPv4终端2的IPv6地址。
b. MAP CE 2根据IPv4终端1的公网IPv4地址和端口号信息以及FMR规则等MAP-E信息,推算出IPv4终端1的IPv6地址。推算过程如图1-8所示。
图1-8 MAP CE 2推算IPv4终端1的IPv6地址的过程
c. MAP-CE 2为IPv4终端2发送的原始IPv4报文封装IPv6报文头,该IPv6报文头中的源IPv6地址和目的IPv6地址分别为步骤a和步骤图1-7b中的IPv6地址。
由于IPv6报文头的目的IPv6地址为IPv4终端1的IPv6地址,因此MAP CE 2不会将该报文发送给MAP BR。
同样地,MAP CE 1向MAP CE 2发送回应报文时,也会通过上述机制为原始报文封装IPv6报文头。
MAP CE设备作为DHCPv6客户端,可以通过DHCPv6方式或NDRA方式获取MAP-E信息:
· 有状态方式(DHCPv6):DHCPv6客户端向DHCPv6服务器发送DHCPv6请求报文申请End-user IPv6 prefix和MAP-E信息。
· 无状态方式(NDRA):DHCPv6客户端根据邻居发现协议从ND RA报文中自动获取到前缀后,向DHCPv6服务器发送Information-request报文申请MAP-E信息。
MAP CE设备的物理接口绑定MAP-E实例并配置MAP-E信息获取方式后,向DHCPv6服务器发送DHCPv6请求报文或Information-request报文时,报文中携带了Option 6(Option Request Option,选项请求选项)选项,指定客户端需要从DHCPv6服务器上获取Option 94选项。DHCPv6服务器收到此类报文后,通过发送携带Option 94的响应报文来下发MAP-E信息。Option 94中包含子选项Option 89、Option 93、Option 90,其中Option 89和Option 93共同构成了BMR规则,Option 90则提供了MAP BR的IPv6地址。
MAP CE设备向DHCPv6服务器请求MAP-E信息后,通过解析DHCPv6回应报文中携带的Option 94选项获取MAP-E信息。
Option 94被称为MAP-E容器选项(MAP-E Container Option),仅支持携带MAP-E信息。图1-9为Option 94选项格式。
图1-9 Option 94(MAP-E Container Option)选项格式
各字段的解释如下:
· Option code:Option编号,取值为94。
· Option length:选项长度,取值不固定。
· Encapsulated-options:Option 94封装的子选项,包括Option 89、Option 90以及Option 93。
Option 89被称为MAP-E规则选项(Rule Option),是Option 94的必选子选项。图1-10为Option 89选项格式。
图1-10 Option 89选项格式
各字段的解释如下:
· Option code:Option编号,取值为89。
· Option length:选项长度,取值不固定。
· Flags:规则标识,分为保留位和F标识位:
¡ 保留位当前固定为0,后续可扩展使用。
¡ F标识位区分规则类型,取值为1时,表示BMR规则;取值为0时,表示FMR规则。
· EA length:EA位的长度。
· Rule prefix4 length:IPv4前缀长度(即IPv4地址的掩码长度)。
EA位的长度和IPv4前缀长度共同决定分配给MAP CE设备的IP地址类型:
· 当EA length + Rule prefix4 length < 32时,此时DHCPv6服务器分给CE设备的是IPv4前缀(IP地址段)。
· 当EA length + Rule prefix4 length = 32时,此时DHCPv6服务器分给CE设备的是一个独享IP地址。
· 当EA length + Rule prefix4 length > 32时,此时DHCPv6服务器分给CE设备的是共享IP地址。
· Rule IPv4 prefix:IPv4前缀(即IPv4地址的网络号)。
· Rule prefix6 length:IPv6前缀长度。
· Rule IPv6 prefix:IPv6前缀。
· Rule sub-options:规则子选项,即Option 93选项。
Option 90为BR设备参数选项(BR Option),是Option 94的必选子选项。图1-11为Option 90选项格式。
图1-11 Option 90选项格式
各字段的解释如下:
· Option code:Option编号,取值为90。
· Option length:选项长度,取值固定为16字节。
· BR IPv6 address:BR设备的IPv6地址。
Option 93为端口参数选项(Port Parameters Option),是Option 89的可选子选项。图1-12为Option 93选项格式。
图1-12 Option 93选项格式
各字段的解释如下:
· Offset:PSID的偏移位。
· PSID length:PSID的长度。
· PSID:PSID的值。
DHCPv6服务器发送给MAP CE的回应报文是否携带Option 93会影响MAP CE设备填充到PSID字段的值,具体如表1-2所示。
表1-2 MAP CE设备填充PSID值的方式
回应报文是否携带Option 93 |
PSID字段的填充方式 |
是 |
· DHCPv6服务器为MAP CE分配的是IPv4前缀或独享IPv4地址,则PSID字段填充为全0 · DHCPv6服务器为MAP CE分配的是共享IPv4地址,则PSID字段填充为Option 93中携带的PSID的值 |
否 |
· DHCPv6服务器为MAP CE分配的是IPv4前缀或独享IPv4地址,则PSID填充为全0 · DHCPv6服务器为MAP CE分配的是共享IPv4地址,则MAP CE设备按照如下步骤计算出PSID的值,并将其填充到PSID字段: a. 根据Option 89中的信息计算出PSID的长度 b. 由于PSID的Offset使用缺省值6,那么MAP CE可以计算M域的长度 c. 根据Offset、PSID长度、M域长度计算出PSID的值 |
·
与MAP-E相关的协议规范有:
· RFC 7597:Mapping of Address and Port with Encapsulation (MAP-E)
· RFC 7598:DHCPv6 Options for Configuration of Softwire Address and Port-Mapped Clients
MAP CE配置任务如下:
· (可选)开启MAP-E隧道的报文防攻击校验功能
执行MAP CE配置任务前,需要完成如下配置:
· DHCPv6服务器上需要完成下发MAP-E信息的相关配置。
· MAP BR设备上需要完成BMR规则等MAP-E的相关配置。
· MAP CE设备上需要完成以下配置:
¡ 配置DHCPv6客户端功能。DHCPv6客户端可以通过DHCPv6方式或NDRA方式获取前缀。通过DHCPv6方式获取前缀的详细介绍,请参见“三层技术-IP业务配置指导”中的“DHCPv6”。通过NDRA方式获取前缀的详细介绍,请参见“三层技术-IP业务配置指导”中的“IPv6基础”。
¡ 创建MAP-E类型的隧道接口,详细介绍请参见“接口管理配置指导”中的“隧道接口”。
MAP CE作为DHCPv6客户端时,可以通过DHCPv6方式或NDRA方式获取MAP-E信息:
· 有状态方式(DHCPv6):DHCPv6客户端向DHCPv6服务器发送DHCPv6请求报文同时申请End-user IPv6 prefix和MAP-E信息。
· 无状态方式(NDRA):DHCPv6客户端根据邻居发现协议从ND RA报文中自动获取到前缀后,向DHCPv6服务器发送Information-request报文申请MAP-E信息。
DHCPv6模块获得MAP-E信息后,需要将MAP-E信息推送给NAT和隧道模块,以便NAT和隧道模块利用MAP-E规则完成相关地址转换和报文封装工作。DHCPv6模块通过创建MAP-E实例并利用MAP-E实例作为中间转换桥梁,向NAT和隧道模块推送MAP-E信息:
(1) MAP-E实例与接收DHCPv6回应报文的物理接口绑定,成功承载DHCPv6回应报文中携带的MAP-E信息;
(2) MAP-E实例与MAP-E类型的隧道接口绑定,通过MAP-E类型的隧道接口将承载的MAP-E信息推送给NAT和隧道模块。
MAP-E实例与绑定的物理接口一一对应。
MAP-E实例与绑定的MAP-E类型的隧道接口一一对应。
MAP-E类型的隧道接口只能绑定已创建的MAP-E实例,且一旦绑定,不允许删除该实例。如果需要删除该MAP-E实例,则请先删除与其绑定的MAP-E类型的隧道接口。
(1) 进入系统视图。
system-view
(2) 创建MAP-E实例并进入MAP-E实例视图。
map-e instance instance-name dynamic
(3) 配置MAP-E实例获取MAP-E信息的方式。
mode { ndra | pd }
缺省情况下,通过DHCPv6方式获取MAP-E信息。
(4) 为MAP-E实例绑定物理接口。
source interface interface-type interface-number
缺省情况下,MAP-E实例未绑定物理接口。
(5) 退回系统视图。
quit
(6) 进入MAP-E类型的隧道接口。
interface tunnel number mode map-e
(7) 在MAP-E类型的隧道接口下绑定MAP-E实例。
map-e instance instance-name
缺省情况下,MAP-E类型的隧道接口未与任何MAP-E实例绑定。
在MAP CE上开启本功能后,MAP CE使用DHCPv6服务器通过Option 94下发的公网IPv4地址和Port set对接收到的私网IPv4报文进行“IPv4地址+端口号”转换。
仅MAP-E隧道接口视图下支持开启本功能。
(1) 进入系统视图。
system-view
(2) 进入MAP-E类型的隧道接口。
interface tunnel number mode map-e
(3) 开启NAT的MAP(Mapping of Address and Port,地址端口映射)功能。
nat map enable
缺省情况下,NAT MAP功能处于关闭状态。
MAP CE设备的MAP-E模式隧道接口在收到对端发送的IPv6报文后,如果本功能处于开启状态,则首先需要校验报文合法性,然后对校验通过的报文进行解封装处理。校验规则为:
· 报文外层的IPv6源地址如果是MAP BR设备的IPv6地址,则校验通过。
· 报文外层的IPv6源地址如果不是MAP BR设备的IPv6地址,那么MAP-E模块会基于报文内层的源IPv4地址通过BMR规则计算出一个IPv6地址,将该地址与报文外层的IPv6源地址进行匹配,如不匹配则丢弃报文,避免仿冒报文对设备的攻击。
在对端MAP BR设备为第三方设备,且不支持MAP-E校验功能时,建议在本端隧道下关闭本功能。
(1) 进入系统视图。
system-view
(2) 进入MAP-E类型的隧道接口。
interface tunnel number mode map-e
(3) 开启MAP-E隧道报文的防攻击校验功能。
map-e spoofing-enable
缺省情况下,MAP-E隧道报文的防攻击校验功能处于开启状态。
可在任意视图下执行以下命令:
· 显示MAP-E隧道接口下MAP CE通过DHCPv6服务器通知给NAT模块的MAP-E信息获取到的公网资源。
display nat map interface tunnel [ number ]
· 显示MAP实例的信息。
display map instance [ name instance-name ] [ verbose ]
MAP CE设备通过IPv6接入网连接到BR设备,MAP BR同时连接到IPv4公网和IPv6接入网。BRAS设备作为DHCPv6服务器,用来为MAP CE设备下发BR IPv6 address和MAP规则。IPv4私网用户连接到MAP CE,并通过MAP CE进行报文封装,经过MAP域访问处于10.0.0.1/24网段的IPv4公网资源,或者访问MAP域中其他MAP CE设备的IPv4私网侧用户。
BRAS设备下发的MAP-E信息包括BMR和BR IPv6 address,本例中的MAP-E信息具体如下:
· BMR的Rule IPv6 Prefix为2001:DB8:1:64BE::/64,Rule IPv4 Prefix为192.0.0.0/24,EA length为16。
· BR IPv6 address为2001:DB8:CAFE::1。
图1-13 MAP-E典型配置组网图
BRAS设备上需要完成MAP-E信息下发相关配置。MAP-BR设备上需要完成BMR规则等MAP-E相关配置。
(1) 配置MAP CE 1
# 创建隧道接口Tunnel1,指定隧道模式为MAP-E。
<MAP CE 1> system-view
[MAP CE 1] interface tunnel 1 mode map-e
[MAP CE 1-Tunnel1] quit
# 创建名称为1的MAP-E实例。
[MAP CE 1] map-e instance 1 dynamic
# 配置MAP-E实例通过DHCPv6方式获取MAP-E信息。
[MAP CE 1-mape-1] mode pd
# 为MAP-E实例绑定物理接口GigabitEthernet0/0/1,当该接口接收到DHCPv6服务器回复的应答报文后,MAP CE设备会将应答报文中包含的MAP-E信息关联到与接口GigabitEthernet0/0/1绑定的MAP-E实例。
[MAP CE 1-mape-1] source interface gigabitethernet 0/0/1
[MAP CE 1-mape-1] quit
# 配置接口GigabitEthernet0/0/1的IPv6地址为1::2/64,并配置该接口作为DHCPv6客户端获取IPv6地址及网络参数;接口获取到IPv6前缀后,创建编号为1的IPv6前缀。
[MAP CE 1] interface gigabitethernet 0/0/1
[MAP CE 1-GigabitEthernet0/0/1] ipv6 address 1::2 64
[MAP CE 1-GigabitEthernet0/0/1] ipv6 dhcp client pd 1
[MAP CE 1-GigabitEthernet0/0/1] quit
# 在隧道接口Tunnel1下绑定MAP-E实例1,以便MAP CE设备的DHCPv6模块将获取到的MAP-E信息推送给NAT模块和隧道模块。
[MAP CE 1] interface tunnel 1
[MAP CE 1-Tunnel1] map-e instance 1
# 开启NAT的MAP功能,以便接收DHCPv6模块推送的MAP-E信息。
[MAP CE 1-Tunnel1] nat map enable
[MAP CE 1-Tunnel1] quit
# 配置目的地址为IPv4公网地址10.0.0.1/24网段、出接口为隧道口Tunnel1的静态路由,以便将IPv4私网侧访问IPv4公网侧的报文引流到隧道口Tunnel1。
[MAP CE 1] ip route-static 10.0.0.1 24 tunnel 1
# 配置目的地址为IPv4私网地址192.168.2.1/24网段、出接口为隧道口Tunnel1的静态路由,以便将MAP CE 1上IPv4私网用户访问MAP CE 2上IPv4私网侧用户的报文引流到隧道口Tunnel1。
[MAP CE 1] ip route-static 192.168.2.1 24 tunnel 1
# 配置目的地址为BR IPv6 address、出接口为GigabitEthernet0/0/1、下一跳为1::1的静态路由,以便将封装后的IPv6报文发送给BR。
[MAP CE 1] ipv6 route-static 2001:db8:cafe::1 128 gigabitethernet 0/0/1 1::1
# 指定2号单板为提供NAT服务的业务板。
当同一个会话私网侧到公网侧的流量与公网侧到私网侧的流量在不同的slot时,需要配置nat service命令,保证正反向流量在同一个NAT业务板上进行地址转换。
[MAP CE 1] interface gigabitethernet 0/0/1
[MAP CE 1-GigabitEthernet0/0/1] nat service slot 2
[MAP CE 1-GigabitEthernet0/0/1] quit
# 配置PAT方式出方向动态地址转换的模式为EIM(Endpoint-Independent Mapping)模式。
[MAP CE 1] nat mapping-behavior endpoint-independent
(2) 配置MAP CE 2
# 创建隧道接口Tunnel1,指定隧道模式为MAP-E。
<MAP CE 2> system-view
[MAP CE 2] interface tunnel 1 mode map-e
[MAP CE 2-Tunnel1] quit
# 创建名称为1的MAP-E实例。
[MAP CE 2] map-e instance 1 dynamic
# 配置MAP-E实例通过DHCPv6方式获取MAP-E信息。
[MAP CE 2-mape-1] mode pd
# 为MAP-E实例绑定物理接口GigabitEthernet0/0/1,当该接口接收到DHCPv6服务器回复的应答报文后,MAP CE设备会将应答报文中包含的MAP-E信息关联到与接口GigabitEthernet0/0/1绑定的MAP-E实例。
[MAP CE 2-mape-1] source interface gigabitethernet 0/0/1
[MAP CE 2-mape-1] quit
# 配置接口GigabitEthernet0/0/1的IPv6地址为2::2/64,并配置该接口作为DHCPv6客户端获取IPv6地址及网络参数;接口获取到IPv6前缀后,创建编号为1的IPv6前缀。
[MAP CE 2] interface gigabitethernet 0/0/1
[MAP CE 2-GigabitEthernet0/0/1] ipv6 address 2::2 64
[MAP CE 2-GigabitEthernet0/0/1] ipv6 dhcp client pd 1
[MAP CE 2-GigabitEthernet0/0/1] quit
# 在隧道接口Tunnel1下绑定MAP-E实例1,以便MAP CE设备的DHCPv6模块将获取到的MAP-E信息推送给NAT模块和隧道模块。
[MAP CE 2] interface tunnel 1
[MAP CE 2-Tunnel1] map-e instance 1
# 开启NAT的MAP功能,以便接收DHCPv6模块推送的MAP-E信息。
[MAP CE 2-Tunnel1] nat map enable
[MAP CE 2-Tunnel1] quit
# 配置目的地址为IPv4公网地址10.0.0.1/24网段、出接口为隧道口Tunnel1的静态路由,以便将IPv4私网侧访问IPv4公网侧的报文引流到隧道口Tunnel1。
[MAP CE 2] ip route-static 10.0.0.1 24 tunnel 1
# 配置目的地址为IPv4私网地址192.168.1.1/24网段、出接口为隧道口Tunnel1的静态路由,以便将MAP CE 2上IPv4私网用户访问MAP CE 1上IPv4私网侧用户的报文引流到隧道口Tunnel1。
[MAP CE 2] ip route-static 192.168.1.1 24 tunnel 1
# 配置目的地址为BR IPv6 address、出接口为GigabitEthernet0/0/1、下一跳为2::1的静态路由,以便将封装后的IPv6报文发送给BR。
[MAP CE 2] ipv6 route-static 2001:db8:cafe::1 128 gigabitethernet 0/0/1 2::1
# 指定2号单板为提供NAT服务的业务板。
当同一个会话私网侧到公网侧的流量与公网侧到私网侧的流量在不同的slot时,需要配置nat service命令,保证正反向流量在同一个NAT业务板上进行地址转换。
[MAP CE 2] interface gigabitethernet 0/0/1
[MAP CE 2-GigabitEthernet0/0/1] nat service slot 2
[MAP CE 2-GigabitEthernet0/0/1] quit
# 配置PAT方式出方向动态地址转换的模式为EIM(Endpoint-Independent Mapping)模式。
[MAP CE 2] nat mapping-behavior endpoint-independent
# 在MAP CE 1上通过display map instance命令查看MAP实例1的详细信息,可以看到MAP实例1获取到的MAP-E信息。
[MAP CE 1] display map instance name 1 verbose
Type: MAP-E
Instance-name: 1
Mode: PD
Interface-name: GigabitEthernet0/0/1
Tunnel-name: Tunnel1
Prefix: 2001:DB8:1:64BE:103::/80
MAP status: Valid
MAP Rule Info:
BR Address: 2001:DB8:CAFE::1
Rule IPv4 Address: 192.0.0.0/24
Rule IPv6 Prefix Address: 2001:DB8:1:64BE::/64
EA-Bits Length: 16
flags: 128
Calculated Info:
IPv4 Start Address: 192.0.0.1
IPv4 End Address: 192.0.0.1
PSID:
PSID Offset: 2
PSID Len: 4
PSID: 3
MAP IPv6 Address: 2001:DB8:1:64BE:130:C000:1:3
Other Info:
Expired Time: Jan 13 01:33:48 2023
NAT last notified: Jan 10 03:04:10 2023
Tunnel last notified: Jan 10 03:04:04 2023
# 通过display nat map interface tunnel命令查看MAP-E隧道接口Tunnel1下DHCPv6模块推送给NAT模块的公网资源信息。
[MAP CE 1] display nat map interface tunnel 1
NAT MAP address group information:
Totally 1 NAT MAP address groups.
Address group name/ID: MAP-E_tunnel_1/65536
Resource information:
Start address End address Start port End port
192.0.0.1 192.0.0.1 19456 20479
35840 36863
52224 53247
# 在IPv4终端1的浏览器地址栏内输入WWW server的IP地址并回车,然后在MAP CE 1上执行display nat session verbose命令,可以看到IPv4终端1访问WWW server时MAP CE 1上生成的NAT会话信息。
[MAP CE 1] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 192.168.1.1/9664
Destination IP/port: 200.168.1.2/80
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet0/0/2
Responder:
Source IP/port: 200.168.1.2/80
Destination IP/port: 192.0.0.1/1024
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet0/0/1
State: TCP_ESTABLISHED
Application: HTTP
Role: Master
Failover group ID: 1
Start time: 2022-12-14 10:27:24 TTL: 3576s
Initiator->Responder: 0 packets 0 bytes
Responder->Initiator: 0 packets 0 bytes
Total sessions found: 1
# 在MAP CE 2上通过display nat eim命令查看EIM表项信息。
如果MAP CE 2上没有EIM表项信息,则需要IPv4终端2主动访问外网触发MAP CE 2创建EIM表项。例如,IPv4终端2主动访问MAP CE 1或者BR。
[MAP CE 2] display nat eim
Slot 2:
Local IP/port: 192.168.2.1/1024
Global IP/port: 192.0.0.20/2048
DS-Lite tunnel peer: -
Protocol: TCP(6)
# 在IPv4终端1上开启Telnet Client(Telnet客户端)功能。然后在IPv4终端1上使用IPv4终端2的公网IP和端口号登录到IPv4终端2。IPv4终端2上的抓包工具显示可以收到Telnet报文。
C:\> telnet 192.0.0.20 2048
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!