IP新技术专题
介绍了华为路由器产品的热门特性的实现原理和配置过程。
配置集中式网关部署方式的IPv6 VXLAN(静态建立隧道)
当采用集中式网关部署方式时,所有的跨子网流量都要经过三层网关进行转发,实现流量的集中管理。
应用环境
如果企业在IPv6网络的基础上为某租户分配有位于不同地理位置的VM,这些VM有些处于同一网段,有些处于不同网段。当需要实现不同VM之间的通信时,需要合理规划IPv6 VXLAN二层网关和三层网关,建立IPv6 VXLAN隧道。
- 当Server2中的VM1需要与Server3中的VM1通信时,需要在Device1、Device2上部署IPv6 VXLAN二层网关,Device1和Device2之间建立IPv6 VXLAN隧道实现同网段租户互通。
- 当Server1中的VM1需要与Server3中的VM1通信时,需要在Device3上部署三层网关,在Device1和Device3之间、Device2和Device3之间建立IPv6 VXLAN隧道实现跨网段租户互通。
这里VM和三层网关可以都配置IPv4地址,也可以都配置IPv6地址,即:IPv6 VXLAN的Overlay网络既可以是IPv4网络也可以是IPv6网络。图4-77以IPv4 Overlay网络为例。
当只需要实现处于同一网段的VM互通时,可以不部署IPv6 VXLAN三层网关;当需要实现处于不同网段的VM互通,或者VM都处于同一网段,但需要与外部网络互通时,需要部署IPv6 VXLAN三层网关。
存在差异的配置任务 |
IPv4 Overlay网络 |
IPv6 Overlay网络 |
---|---|---|
配置IPv6 VXLAN三层网关 |
三层网关的VBDIF接口配置IPv4地址 |
三层网关的VBDIF接口配置IPv6地址 |
配置VXLAN业务接入点
在IPv6 VXLAN网络中,业务接入点为二层子接口,通过在二层子接口上配置流封装,可以实现不同的接口接入不同的数据报文。广播域为BD(Bridge Domain),将二层子接口关联BD后,可实现数据报文通过BD转发。
背景信息
流封装类型 |
说明 |
---|---|
dot1q |
该类型接口只接收带有指定VLAN Tag的报文。配置流封装类型为dot1q时,存在如下限制:
|
untag |
该类型接口只接收不带VLAN Tag的报文。配置流封装类型为untag时,存在如下限制:
|
default |
允许接口接收所有报文,不区分报文中是否带VLAN Tag。配置流封装类型为default时,存在如下限制:
|
qinq |
该类型接口收到的报文带有两层及两层以上VLAN Tag,根据报文的前两层VLAN Tag识别是否接收。 |
业务接入点需要在二层网关上进行配置。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令bridge-domain bd-id,创建广播域BD,并进入BD视图。
- (可选)执行命令description description,配置BD的描述信息。
- 执行命令quit,退出BD视图,返回到系统视图。
- 执行命令interface interface-type interface-number.subnum mode l2,创建二层子接口,并进入二层子接口视图。
执行本命令前,请确保对应的二层主接口上没有port link-type dot1q-tunnel配置,如果已经存在该配置,需要先执行undo port link-type将配置删除。
- 执行命令encapsulation { dot1q [ vid vid ] | default | untag | qinq [ vid pe-vid ce-vid { low-ce-vid [ to high-ce-vid ] } ] },配置流封装类型实现不同的接口接入不同的数据报文。
- 执行命令rewrite pop { single | double },对接收的报文进行剥除VLAN Tag操作。
如果二层子接口接收的报文携带一层VLAN Tag,选择参数single,将报文中的一层VLAN Tag剥除。
如果上一个步骤已经通过命令encapsulation qinq vid pe-vid ce-vid { low-ce-vid [ to high-ce-vid ] | default }配置了流封装类型是qinq,则选择double参数,用来指定对接收的报文进行剥除两层VLAN Tag操作。
- 执行命令bridge-domain bd-id,将二层子接口加入BD,允许报文通过广播域BD转发。
default类型的二层子接口加入BD后,该BD不支持创建对应的VBDIF接口。
- 执行命令commit,提交配置。
配置IPv6 VXLAN隧道
VXLAN通过采用MAC in UDP封装来延伸二层网络,是大二层虚拟网络扩展的隧道封装技术。当Underlay网络是IPv6网络时,通过配置IPv6 VXLAN隧道,虚拟网络可接入大量租户。
背景信息
静态IPv6 VXLAN隧道的创建完全通过手工配置本端和远端的VNI和VTEP IPv6地址来完成,不需要协议参与,配置简单。为了保证IPv6 VXLAN报文的正常转发,VXLAN的网关设备上都需要配置IPv6 VXLAN隧道。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令bridge-domain bd-id,进入BD视图。
该步骤中的bd-id必须与配置业务接入点步骤2中创建的bd-id一致。
- 执行命令vxlan vni vni-id,创建VXLAN网络标识VNI并关联广播域BD。
当VXLAN网络和VPLS网络进行拼接时,需要在两个网络相交的边缘设备上执行vxlan vni vni-id split-horizon-mode命令,创建VNI并关联广播域BD,然后按照水平分割方式进行转发。
- 执行命令quit,退出BD视图,返回到系统视图。
- 执行命令interface nve nve-number,创建NVE接口,并进入NVE接口视图。
- 执行命令source ipv6-address,配置源端VTEP的IPv6地址。
指定源端VTEP的IPv6地址时,可以指定实际物理接口的地址,也可以指定Loopback接口的地址,推荐使用Loopback接口的地址。
- 执行命令vni vni-id head-end peer-list { ipv6-address } &<1-10>,配置IPv6头端复制列表。
头端是指IPv6 VXLAN隧道的入节点,复制是指当IPv6 VXLAN隧道的入节点收到一份BUM(Broadcast&Unknown-unicast&Multicast)报文后,需要将其复制多份并发送给列表中的所有VTEP。头端复制列表就是用于指导IPv6 VXLAN隧道的入节点进行BUM报文复制和发送的远端VTEP的IPv6地址列表。
由于当前只支持头端复制方式进行BUM报文转发,当和其他厂商设备对接创建IPv6 VXLAN隧道时,必须保证对端设备也配置头端复制方式,否则会导致对接失败。
- 执行命令commit,提交配置。
(可选)配置IPv6 VXLAN三层网关
为了成功实现不同网段的终端用户互通,终端用户的缺省网关地址必须是对应三层网关上的VBDIF接口的IP地址。
背景信息
BD是IPv6 VXLAN网络的实体,通过将VNI(每一个VNI表示一个租户)以1:1方式映射到广播域BD,可以通过BD转发数据报文。基于BD可创建三层逻辑接口VBDIF接口,可以实现不同网段的VXLAN间,及VXLAN和非VXLAN之间的三层互通,也可实现二层网络接入三层网络。每个BD对应一个VBDIF接口,在为VBDIF接口配置IP地址后,该接口即可作为本BD内租户的网关,对需要进行通信的报文进行基于IP地址的三层转发。
VBDIF接口在IPv6 VXLAN三层网关上配置,用于跨网段报文的转发,因此同网段通信时不需要配置。
设备支持在VBDIF接口下配置DHCP中继功能,使主机从外部的DHCP服务器上申请到IP地址等相关信息。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令interface vbdif bd-id,创建VBDIF接口,并进入VBDIF接口视图。
- 配置VBDIF接口的IP地址,实现三层互通:
- 当Overlay网络是IPv4网络时,执行命令ip address ip-address { mask | mask-length } [ sub ],配置IPv4地址。
- 当Overlay网络是IPv6网络时,执行如下步骤:
执行命令ipv6 enable,使能接口的IPv6功能。
执行命令ipv6 address { ipv6-address prefix-length | ipv6-address/prefix-length } 或 ipv6 address { ipv6-address prefix-length | ipv6-address/prefix-length } eui-64,配置接口的全球单播地址。
- (可选)执行命令mac-address mac-address,配置VBDIF接口的MAC地址。
- (可选)执行命令bandwidth bandwidth,配置VBDIF接口的带宽。
- 执行命令commit,提交配置。
(可选)配置静态MAC地址表项
(可选)配置MAC地址学习限制功能
配置MAC地址学习限制功能,可以提升VXLAN网络的安全性。
背景信息
为了控制接入用户数量或防止MAC地址表受攻击,可以限制设备允许学习的MAC地址数量,从而控制接入用户数量,当超过限制数量时不再学习MAC地址,同时可以配置丢弃报文动作,防止MAC地址攻击,提高网络安全性。
在VXLAN三层网关上,没有必要学习BD内的报文的MAC地址,此时可以关闭BD的MAC地址学习功能,从而节省设备的MAC地址表项开支。另外当VXLAN网络拓扑稳定并且MAC表项学习完成后,在VXLAN二层网络上也可以关闭MAC地址学习功能。
MAC地址学习限制功能在二层网关上配置,禁止MAC地址学习功能在二三层网关上都可以配置。
操作步骤
- 配置MAC地址学习限制功能。
执行命令system-view,进入系统视图。
执行命令bridge-domain bd-id,进入BD视图。
执行命令mac-limit { action { discard | forward } | maximum max [ rate interval ] } *,配置MAC地址学习限制规则。
(可选)执行命令mac-limit up-threshold up-threshold down-threshold down-threshold,配置MAC地址数量告警产生和消除的阈值百分比。
- 执行命令commit,提交配置。
- 关闭MAC地址学习功能。
执行命令system-view,进入系统视图。
执行命令bridge-domain bd-id,进入BD视图。
执行命令mac-address learning disable,关闭MAC地址学习功能。
执行命令commit,提交配置。
检查配置结果
集中式网关部署方式的IPv6 VXLAN(静态建立隧道)配置完成后,您可以查看到IPv6 VXLAN隧道、VNI的状态、VBDIF等信息。
操作步骤
- 执行命令display bridge-domain [ binding-info | bd-id [ brief | verbose | binding-info ] ],查看广播域BD的配置信息。
- 执行命令display interface nve [ nve-number | main ],查看NVE接口的状态信息。
- 执行命令display vxlan peer [ vni vni-id ],查看配置的VNI的IPv6头端复制列表信息。
- 执行命令display vxlan tunnel [ tunnel-id ] [ verbose ],查看IPv6 VXLAN隧道的信息。
- 执行命令display vxlan vni [ vni-id [ verbose ] ],查看IPv6 VXLAN的配置信息及VNI状态。