【自由谈】城域网IPv6过渡技术——MAP技术(3)

来源:互联网 发布:淘宝线下代购店怎么开 编辑:程序博客网 时间:2024/04/28 19:46

上一节讨论了MAP技术中IPv4 A+P与IPv6地址之间映射规则,这一节接着来回答第二个问题“MAP域中是如何来规划映射规则?又是如何进行规则下发的?”

在MAP技术中有三种MAP Rule,BMR(Basic Mapping Rule)、FMR(Forwarding Mapping Rule)和DMR(Default Mapping Rule),其中DMR在MAP-E中成为Destinations outside the MAP domain。

第一条是BMR,是必选项,用于计算MAP CE的IPv4地址和port-set以及IPv6地址。BMR是需要配置在MAP域的每一个路由器上,配置在MAP-CE上用于将IPv4用户数据进行NAT44和IPv6翻译/封装,配置在MAP-BR上用于将IPv4地址从IPv6报文中解封装/解隧道,以及将回程流量的IPv4地址+port进行IPv6翻译和封装后,在MAP域中按照IPv6路由转发到MAP-CE上。

BMR的配置的基本参数包括:Rule-IPv6-prefixRule-IPv4-prefixEA-bits-lengthPSID-offset,这些参数配置在MAP-CE上可以计算出共享的IPv4地址和端口序列,以及MAP-CE的IPv6地址,举个实例分析下(参考上一节的映射图)。

MAP-CE获得属于IPv6前缀信息:(DHCPv6正常分配)

  • End-user IPv6-prefix: 2001:db8:0012:3400::/56

通过BMR下发的信息如下:

  • Rule-IPv6-prefix        : 2001:db8:0000::/40
  • Rule-IPv4-prefix        : 192.0.2.0/24 (0xC0000200/24)
  • EA-bits-length           : 16
  • PSID-offset(a)           : 4 (default)

则推导出如下信息(MAP-CE的共享A+P和IPv6地址)

  • EA-bit                         : 0x1234
  • IPv4-suffix                 : 0x12 (p=32-24=8)
  • PSID                          : 0x34 (q=o-p=16-8=8)
  • IPv4-address             : 192.0.2.18 (0xC0000212)
  • Port-set                     :  4928-4943, 9024-9039, ......, 62272-62287(a=4, A>0; PSID=0x34)
  • IPv6-address            : 2001:db8:0012:3400:00C0:0002:1200:3400

在MAP  Domain中可以按照IPv4子网逻辑划分多个sub-domain,每个IPv4子网段作为一个sub-domain,这样在sub-domain中所有MAP-CE配置的MR可简化为一条。每个MAP-CE配置不同的End-user IPv6-prefix和相同的BMR即可。

第二条是FMR,是可选项,用于在mesh网络中实现MAP-CE间的互访流量直接通信,不需要通过MAP-BR中转。这就是说在MAP-CE访问其他MAP-CE时,目的IPv6地址应该是对端MAP-CE的地址。报文的源IPv6地址是BMR生成的,则目的MAP-CE的IPv6地址就成了FMR的转换目标。前面也提到每个MAP-CE的BMR是相同的(在一定范围),因此FMR和BMR也是可以相同的,即可以将BMR通过配置作为FMR。

举例如下,在MAP-Domain域中配置BMR=FMR,当MAP-CE2用户的IPv4业务访问MAP-CE1用户的IPv4业务时,在MAP-CE2上通过NAT44和BMR生成源IPv6地址,同时通过FMR生成目的MAP-CE1的IPv6地址。

 

前面两个规则对于MAP-E和MAP-T均适用,在第三条规则上,MAP-E和MAP-T是不同的。

在MAP-T中定了“DMR",代表报文的目的IPv4地址为MAP Domain域外的地址,通过BR进行转发到域外。DMR含有两个参数Rule-IPv6-prefix和Rule-IPv4-prefix。Rule-IPv6-prefix的值是MAP BR的IPv6前缀,Rule-IPv4-prefix值是0.0.0.0/0,即在MAP-CE上匹配IPv4路由时作为默认路由适用的映射规则。在使用这条规则后,目的IPv6地址将通过DMR配置的Rule-IPv6-prefix+目的IPv4地址组成目的IPv6地址。

在MAP-E中,第三条规则为Destinations outside the MAP domain,更加明确的表征了规则的意义。由于MAP-E中是IPv6报头嵌套IPv4地址,因此对于报文中目的IPv4地址是MAP域外的地址,只需要再封装一层BR的IPv6地址即可,到达BR是直接剥掉IPv6报头就可以还原目的IPv4地址。因此在MAP-E中Destinations outside the MAP domain就是配置MAP-BR的IPv6地址。

前面谈了这些规则和属性,那这些是通过何种协议进行配置呢?最容易想到的就是DHCPv6属性,但是目前的DHCPv6属性除了配置MAP域所需的End-user-IPv6-prefix之外,其他属性还没有定义,因此就有了draft-ietf-softwire-map-dhcp文档,就是针对MAP-E、MAP-T以及lightweight 4over6(三种协议的特点就是均采用A+P理念)所需的属性对DHCPv6进行了扩展。

在draft-ietf-softwire-map-dhcp中定义了五个DHCPv6 Option,它们分别是OPTION_S46_RULE,OPTION_S46_BR,OPTION_S46_PORTPARAMS,OPTION_S46_DMR,OPTION_S46_IPV4ADDRESS。另外定了针对MAP-E、MAP-T和LW46三个协议的三个Container,包含的DHCPv6 Option的关系如下。

对于每个具体的Option的内容,我就不一一进行介绍了,draft-ietf-softwire-map-dhcp都有明确定义,并且在成为RFC之前都是有可能被讨论和更新的。

原创粉丝点击