32-CloudSec配置
本章节下载: 32-CloudSec配置 (348.16 KB)
CloudSec(Cloud Security,云安全),是一种旨在保障不同网段VXLAN站点之间数据传输安全性的解决方案。在当前基于VXLAN技术构建的大二层网络架构中,不同网段VXLAN站点之间的报文需要通过外部IP网络进行传输。而当前广泛使用的MacSec技术仅能在本地站点内使用,无法为跨越IP网络的不同VXLAN站点之间的报文进行安全防护。为了解决上述问题,CloudSec技术应运而生。CloudSec技术通过在VXLAN报文头前插入CloudSec报文头,可以实现在不解密CloudSec报文的情况下,报文可以进行路由转发,很好的解决了MACsec技术在跨网段场景下的限制。
CA(Connectivity Association,安全连通集)是两个或两个以上使用相同密钥和密钥算法套件的成员的集合。CA成员称为CA的参与者。CA参与者使用的密钥称为CAK。CAK分为以下两种类型:
· 成对CAK(Pairwise CAK),即由两个成员组成CA,它们所拥有的CAK称为成对CAK。
· 成组CAK(Group CAK),即由三个或三个以上成员组成CA,它们所拥有的CAK称为成组CAK。
CAK由Keychain模块根据配置的key-string命令进行生成。
SA(Security Association,安全联盟)是CA参与者之间用于建立安全通道的安全参数集合,包括对数据进行加密算法套件、进行完整性检查的密钥等。
SC(Secure Channel,安全通道),是通信双方用于加密传输数据的通道。一个安全通道中可包含多个SA,每一个SA拥有一个不同的密钥,这个密钥称为SAK。SAK由CAK根据算法推导产生,用于加密安全通道间传输的数据。
SCI(Secure Channel Identifier,安全通道标识)是一个安全通道标识。它用于唯一标识和区分不同的安全通道。SCI在CloudSec中的作用非常重要。它确保了在数据传输过程中,各个通信节点都能正确识别和验证安全通道,从而防止未经授权的节点插入或篡改数据。通过使用SCI标识安全通道,CloudSec能够提供更高的数据保护和安全性,确保数据的机密性和完整性。
发送方根据自身配置和策略,在数据包中的相应字段中填充SCI的值。接收方根据这个SCI值进行验证和识别,并与事先配置的策略进行比较,以确定数据包是否来自预期的安全通道。
AN(Association Number,连接集编号),是SC中用于区分不同SA的编号,AN与SCI组合共同标识一个具体的SA。
KEK(Key encourage Key,密钥加密密钥),用于加密SAK的密钥。
开启了CloudSec功能,且配置CloudSec功能关联的源接口后,设备将通过该源接口获取其对应的EVPN VXLAN隧道,并对该EVPN VXLAN隧道所承载的报文进行加密,并发送至对端设备。对端设备收到CloudSec加密报文后,需要对其进行解密。加解密所使用的密钥首先由Keychain模块生成初始密钥,然后根据CloudSec配置加密套件结合初始密钥生成最终的加解密密钥,通信两端通过BGP路由进行密钥交换。
CloudSec封装的数据帧会使用CAK推导出的密钥进行ICV(完整性校验值,Integrity Check Value)计算,并附加在CloudSec报文的尾部。设备收到CloudSec报文时,同样使用Keychain模块生成的密钥进行完整性检验值计算,然后将计算结果与报文中携带的ICV进行比较。如果比较结果相同,则表示报文合法;如果比较结果不相同则丢弃报文。
如图1-1所示,在VXLAN报文头前面插入CloudSec报文头,使用CloudSec技术对VXLAN报文进行加密,保证VXLAN隧道传输报文的安全性。
图1-1 CloudSec报文封装示意图
CloudSec用于保护数据中心之间的VXLAN隧道传输报文的安全性,如图1-2所示,Switch A和Switch B为数据中心1的VTEP,Switch C和Switch D为数据中心2的VTEP,Switch B和Switch C为两个数据中心的ED。通过EVPN数据中心互连实现数据中心1和数据中心2的二层互通,且数据中心1和数据中心2之间的VXLAN-DCI隧道流量使用CloudSec技术进行加密保护。
图1-2 CloudSec典型组网示意图
如图1-3所示,两端设备之间的使用CloudSec对报文进行加密主要分为如下几个阶段:两端建立安全通道、协商密钥和报文加解密。
图1-3 CloudSec运行机制示意图
(2) 建立安全通道
在本端设备和对端设备建立CloudSec安全通道之前,本端设备配置的发送SCI值和对端设备配置的接收SCI值需要保证一致。当本端的发送SCI值和对端的接收SCI值相同时,两端可以建立安全通道。
(3) 两端协商密钥
本端设备和对端设备分别使用其Keychain模块生成的初始密钥,结合CloudSec策略下配置的加密套件,生成用于加解密VXLAN隧道报文的最终密钥。本端设备生成的加密密钥,需要通过BGP报文传递给对端设备,该密钥将作为其加密发送的VXLAN报文。同理,对端设备生成的加密密钥也需要通过BGP报文传递到本端设备,用于本端设备加密发送的VXLAN报文。本端设备生成的密钥,用于解密本端收到的已加密的VXLAN报文。对端设备生成的密钥,用于解密对端收到的已加密的VXLAN报文。
(4) 报文加解密
本端设备和对端设备分别使用协商的加解密密钥对VXLAN报文进行加解密,通过CloudSec加密技术对报文进行安全防护。
对于部分早期发货的SF系列接口板可能不支持本功能,设备上会提示配置不支持。
仅支持加密端和解密端同时配置了VXLAN隧道的组网。
开启Cloudsec功能时请确保加密端和解密端同时配置了同一加密套件。
不支持在M-LAG组网或ES多归属组网中配置Cloudsec功能
Cloudsec不支持加密组播报文,包括二层组播和三层组播报文。
Cloudsec功能仅支持过bgp协议创建的自动隧道进行加密,不支持手工隧道进行加密。
对于Cloudsec加密后的报文,如果可以正常解密,则镜像的流量是解密之后的报文,如果不能正常解密,则镜像的流量是解密之前的报文。
对于封装了IPv6流量的IPv6 EVPN VXLAN隧道,对CloudSec加密时,请注意以下事项:
· 避免将VLAN虚接口或路由子接口配置为隧道出口端口。
· 避免在CloudSec策略视图中配置include sci。
当设备上开启了Cloudsec功能时,不支持再开启MACsec功能,反之亦然。关于“MACsec”的详细描述,请参见“安全-MACsec”。
CloudSec配置任务如下:
(1) 配置CloudSec策略
(2) 配置CloudSec对等体
通过本功能创建CloudSec策略后,可以在CloudSec策略视图下配置CloudSec的相关配置,包括加密套件、SAK密钥更新时间等。
多次执行cloudsec policy命令可以创建多个CloudSec策略。
设备存在名称为default-policy的缺省CloudSec策略,该缺省CloudSec策略不能被删除和修改。
使用gcm-aes-xpn-128或gcm-aes-xpn-256加密套件对隧道报文加密或对端报文解密时,隧道的双向流量的收发物理端口必须在同一单板的相同芯片上,否则会导致加解密失败。如需查看端口是否在同一芯片上,可在probe视图下执行display hardware internal port mapping命令,通过LchipId字段查看端口芯片型号。
(1) 进入系统视图。
system-view
(2) 创建CloudSec策略,并进入CloudSec策略视图。
cloudsec policy policy-name
(3) 配置CloudSec保护数据时使用的加密套件。
cipher-suite { gcm-aes-128 | gcm-aes-256 | gcm-aes-xpn-128 | gcm-aes-xpn-256 }
缺省情况下,CloudSec使用的加密套件为GCM-AES-128。
(4) 配置加密数据帧的CloudSec报文头中携带SCI。
include sci
缺省情况下,未配置加密数据帧的CloudSec报文头中携带SCI。
(5) 配置SAK的密钥更新时间。
sak-rekey-interval interval
缺省情况下,SAK密钥不会更新。
通过本功能创建CloudSec对等体后,可以在CloudSec对等体视图下配置CloudSec功能相关配置,包括引用Keychain和CloudSec策略(如加密套件、窗口大小等),以及配置发送和接收CloudSec报文的SCI值。
引用Keychain时必须指定其绑定的CloudSec策略。当对等体绑定了一个不存在的CloudSec策略时,设备会自动引用名称为default-policy的缺省CloudSec策略。在后续处理过程中,如果绑定的该CloudSec策略被成功创建,则对等体会自动引用用户配置的CloudSec策略,替换缺省的CloudSec策略。
当前一个设备上的对等体只支持绑定同一个Keychain和一个CloudSec策略。
CloudSec仅使用Keychain模块的密钥,不使用Keychain模块的认证算法。但是由于Keychain必须配置认证算法后,密钥才能激活。因此,Cloudsec两端都必须配置key认证密钥和key认证算法,且key认证密钥的配置必须相同,key认证算法的配置可以不同 。有关key认证密钥和key认证算法的详细介绍,请参见“安全配置指导”中的“keychain”。
(1) 进入系统视图。
system-view
(2) 创建CloudSec对等体,并进入该CloudSec对等体视图。
cloudsec peer { ipv4-address | ipv6-address }
(3) 配置CloudSec对等体引用的Keychain和CloudSec策略。
keychain keychain-name policy policy-name
缺省情况下,CloudSec对等体未引用Keychain和CloudSec策略。
(4) 配置CloudSec报文的接收SCI值。
sci rx sci-value
缺省情况下,未配置CloudSec报文的接收SCI值。
(5) 配置CloudSec报文的发送SCI值。
sci tx sci-value
缺省情况下,未配置CloudSec报文的发送SCI值。
通过本功能配置CloudSec功能关联的源接口后,设备将通过该源接口获取其对应的EVPN VXLAN隧道。当CloudSec功能配置完成后,设备将对特定的EVPN VXLAN隧道所承载的报文进行加密传输,保证EVPN VXLAN隧道传输报文的安全性。
(1) 进入系统视图。
system-view
(2) 配置CloudSec功能关联的源接口。
cloudsec source-interface interface-type interface-number
缺省情况下,未配置CloudSec功能关联的源接口。
本端建立VXLAN隧道使用的源地址将作为BGP单播路由前缀发布给本命令指定的对等体,并且在发布时将本端生成的加密信息通过隧道封装属性携带在路由中。对等体收到BGP单播路由后,通过VXLAN隧道发往本端的报文将使用路由中携带的加密信息进行加密。
隧道封装属性是可选过渡属性,请确保本命令指定的对等体也能够识别隧道封装属性并且能够识别其中携带的加密信息,否则该对等体无法使用加密信息对数据报文进行加密。
非透传的协议报文通过VXLAN隧道时不会被加密。
(1) 进入系统视图。
system-view
(2) 进入BGP实例视图。
bgp as-number [ instance instance-name ]
(3) 进入BGP IPv4单播地址族视图或BGP IPv6单播地址族视图。
¡ 进入BGP IPv4单播地址族视图。
address-family ipv4 [ unicast ]
¡ 进入BGP IPv6单播地址族视图。
address-family ipv6 [ unicast ]
(4) 配置向对等体/对等体组发布CloudSec加密信息。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] | link-local-address interface interface-type interface-number } advertise-cloudsec
interface-peer interface-type interface-number advertise-cloudsec
缺省情况下,设备不向对等体/对等体组发布CloudSec加密信息。
仅BGP IPv6单播地址族视图支持link-local-address interface interface-type参数。
在完成上述配置后,在任意视图下执行display命令可以显示配置后CloudSec的运行情况,通过查看显示信息验证配置的效果。
表1-1 CloudSec显示和维护
操作 |
命令 |
显示本端的CloudSec信息 |
display cloudsec local [ ipv4-address | ipv6-address ] |
显示对等体的CloudSec信息 |
display cloudsec peer [ ipv4-address | ipv6-address ] [ verbose ] |
显示CloudSec策略相关信息 |
display cloudsec policy [ name policy-name ] |
本节仅以IPv4站点接入IPv4网络为例,IPv4站点接入IPv6、IPv6站点接入IPv4网络、IPv6站点接入IPv6网络的配置与此类似。
Switch A和Switch B为数据中心1的VTEP,Switch C和Switch D为数据中心2的VTEP,Switch B和Switch C为两个数据中心的ED。数据中心1和数据中心2分别使用VXLAN 10、VXLAN 30处理同一业务的流量。通过EVPN数据中心互连实现数据中心1和数据中心2的二层互通,且数据中心1和数据中心2之间的VXLAN隧道流量使用CloudSec技术进行加密保护。
图1-4 CloudSec保护数据中心之间VXLAN隧道配置组网图
(1) 配置IP地址和单播路由协议
配置各接口的IP地址和子网掩码;在IP核心网络内配置OSPF协议,确保交换机之间路由可达。(具体配置过程略)
(2) 配置Switch A
# 开启L2VPN能力。
<SwitchA> system-view
[SwitchA] l2vpn enable
# 关闭远端MAC地址自动学习功能。
[SwitchA] vxlan tunnel mac-learning disable
# 在VSI实例vpna下创建VXLAN 10。
[SwitchA] vsi vpna
[SwitchA-vsi-vpna] vxlan 10
[SwitchA-vsi-vpna-vxlan-10] quit
# 在VSI实例vpna下创建EVPN实例,并配置自动生成EVPN实例的RD和RT。
[SwitchA-vsi-vpna] evpn encapsulation vxlan
[SwitchA-vsi-vpna-evpn-vxlan] route-distinguisher auto
[SwitchA-vsi-vpna-evpn-vxlan] vpn-target auto
[SwitchA-vsi-vpna-evpn-vxlan] quit
[SwitchA-vsi-vpna] quit
# 配置BGP发布EVPN路由。
[SwitchA] bgp 100
[SwitchA-bgp-default] peer 2.2.2.2 as-number 100
[SwitchA-bgp-default] peer 2.2.2.2 connect-interface loopback 0
[SwitchA-bgp-default] address-family l2vpn evpn
[SwitchA-bgp-default-evpn] peer 2.2.2.2 enable
[SwitchA-bgp-default-evpn] quit
[SwitchA-bgp-default] quit
# 在接入服务器的接口GigabitEthernet1/0/1上创建以太网服务实例1000,该实例用来匹配VLAN 100的数据帧。
[SwitchA] interface gigabitethernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] service-instance 1000
[SwitchA-GigabitEthernet1/0/1-srv1000] encapsulation s-vid 100
# 配置以太网服务实例1000与VSI实例vpna关联。
[SwitchA-GigabitEthernet1/0/1-srv1000] xconnect vsi vpna
[SwitchA-GigabitEthernet1/0/1-srv1000] quit
(3) 配置Switch B
# 开启L2VPN能力。
<SwitchB> system-view
[SwitchB] l2vpn enable
# 关闭远端MAC地址自动学习功能。
[SwitchB] vxlan tunnel mac-learning disable
# 在与Switch C相连的三层接口上使能DCI功能,以便EVPN自动建立VXLAN-DCI隧道。
[SwitchB] interface vlan-interface 12
[SwitchB-Vlan-interface12] dci enable
[SwitchB-Vlan-interface12] quit
# 在VSI实例vpna下创建VXLAN 10。
[SwitchB] vsi vpna
[SwitchB-vsi-vpna] vxlan 10
[SwitchB-vsi-vpna-vxlan-10] quit
# 在VSI实例vpna下创建EVPN实例,并配置自动生成EVPN实例的RD和RT。
[SwitchB-vsi-vpna] evpn encapsulation vxlan
[SwitchB-vsi-vpna-evpn-vxlan] route-distinguisher auto
[SwitchB-vsi-vpna-evpn-vxlan] vpn-target auto
# 配置本端VXLAN 10映射为远端VXLAN 500。在对端ED上需要将VXLAN 500映射为对端ED上的VXLAN 30。
[SwitchB-vsi-vpna-evpn-vxlan] mapping vni 500
[SwitchB-vsi-vpna-evpn-vxlan] quit
[SwitchB-vsi-vpna] quit
# 在VSI实例vpnb下创建VXLAN 500,该VXLAN ID用于二层转发时替换本地的VXLAN。
[SwitchB] vsi vpnb
[SwitchB-vsi-vpnb] vxlan 500
[SwitchB-vsi-vpnb-vxlan-500] quit
# 在VSI实例vpnb下创建EVPN实例,并配置EVPN实例的RD和RT。RT需要手工配置。
[SwitchB-vsi-vpnb] evpn encapsulation vxlan
[SwitchB-vsi-vpnb-evpn-vxlan] route-distinguisher auto
[SwitchB-vsi-vpnb-evpn-vxlan] vpn-target 123:456
[SwitchB-vsi-vpnb-evpn-vxlan] quit
[SwitchB-vsi-vpnb] quit
# 配置BGP发布EVPN路由,指定向Switch A发布路由时将路由下一跳修改为自身的地址,向Switch C发布路由、从Switch C接收路由并发布时修改Router MAC。
[SwitchB] bgp 100
[SwitchB-bgp-default] peer 3.3.3.3 as-number 200
[SwitchB-bgp-default] peer 3.3.3.3 connect-interface loopback 0
[SwitchB-bgp-default] peer 3.3.3.3 ebgp-max-hop 64
[SwitchB-bgp-default] peer 1.1.1.1 as-number 100
[SwitchB-bgp-default] peer 1.1.1.1 connect-interface loopback 0
[SwitchB-bgp-default] address-family l2vpn evpn
[SwitchB-bgp-default-evpn] peer 3.3.3.3 enable
[SwitchB-bgp-default-evpn] peer 3.3.3.3 router-mac-local
[SwitchB-bgp-default-evpn] peer 1.1.1.1 enable
[SwitchB-bgp-default-evpn] peer 1.1.1.1 next-hop-local
[SwitchB-bgp-default-evpn] quit
[SwitchB-bgp-default] address-family ipv4 unicast
[SwitchB-bgp-default-ipv4] peer 3.3.3.3 enable
[SwitchB-bgp-default-ipv4] peer 3.3.3.3 advertise-cloudsec
[SwitchB-bgp-default] quit
#配置keychain
[SwitchB] keychain 1 mode absolute
[SwitchB-keychain-1] key 1
[SwitchB-keychain-1-key-1] authentication-algorithm hmac-sha-256
[SwitchB-keychain-1-key-1] key-string plain 123456
[SwitchB-keychain-1-key-1] send-lifetime utc 00:00:00 2023/01/01 to 00:00:00 2024/01/01
[SwitchB-keychain-1-key-1] accept-lifetime utc 00:00:00 2023/01/01 to 00:00:00 2024/01/01
[SwitchB-keychain-1-key-1]
#配置CloudSec策略
[SwitchB]cloudsec policy 1
[SwitchB-cloudsec-policy-1] cipher-suite gcm-aes-256
[SwitchB-cloudsec-policy-1] include sci
[SwitchB-cloudsec-policy-1] sak-rekey-interval 2000
#配置CloudSec对等体,绑定Keychain和策略,并配置rx sci和tx sci,本端设备的rx sci和tx sci分别等于对等体所在设备tx sci和rx sci
[SwitchB] cloudsec peer 3.3.3.3
[SwitchB-cloudsec-peer-3.3.3.3] keychain 1 policy 1
[SwitchB-cloudsec-peer-3.3.3.3] sci rx 1
[SwitchB-cloudsec-peer-3.3.3.3] sci tx 2
[SwitchB-cloudsec-peer-3.3.3.3]
#配置CloudSec和对等体交互时使用的源接口,该接口使用VXLAN隧道源地址所在的接口
[SwitchB] cloudsec source-interface LoopBack 0
(4) 配置Switch C
# 开启L2VPN能力。
<SwitchC> system-view
[SwitchC] l2vpn enable
# 关闭远端MAC地址自动学习功能。
[SwitchC] vxlan tunnel mac-learning disable
# 在与Switch B相连的三层接口上使能DCI功能,以便EVPN自动建立VXLAN-DCI隧道
[SwitchC] interface vlan-interface 12
[SwitchC-Vlan-interface12] dci enable
[SwitchC-Vlan-interface12] quit
# 在VSI实例vpna下创建VXLAN 30。
[SwitchC] vsi vpna
[SwitchC-vsi-vpna] vxlan 30
[SwitchC-vsi-vpna-vxlan-30] quit
# 在VSI实例vpna下创建EVPN实例,并配置自动生成EVPN实例的RD和RT。
[SwitchC-vsi-vpna] evpn encapsulation vxlan
[SwitchC-vsi-vpna-evpn-vxlan] route-distinguisher auto
[SwitchC-vsi-vpna-evpn-vxlan] vpn-target auto
# 配置本端VXLAN 30映射为远端VXLAN 500。在对端ED上需要将VXLAN 500映射为对端ED上的VXLAN 10。
[SwitchC-vsi-vpna-evpn-vxlan] mapping vni 500
[SwitchC-vsi-vpna-evpn-vxlan] quit
[SwitchC-vsi-vpna] quit
# 在VSI实例vpnb下创建VXLAN 500,该VXLAN ID用于二层转发时替换本地的VXLAN。
[SwitchC] vsi vpnb
[SwitchC-vsi-vpnb] vxlan 500
[SwitchC-vsi-vpnb-vxlan-500] quit
# 在VSI实例vpnb下创建EVPN实例,并配置EVPN实例的RD和RT。RT需要手工配置。
[SwitchC-vsi-vpnb] evpn encapsulation vxlan
[SwitchC-vsi-vpnb-evpn-vxlan] route-distinguisher auto
[SwitchC-vsi-vpnb-evpn-vxlan] vpn-target 123:456
[SwitchC-vsi-vpnb-evpn-vxlan] quit
[SwitchC-vsi-vpnb] quit
# 配置BGP发布EVPN路由,指定向Switch D发布路由时将路由下一跳修改为自身的地址,向Switch B发布路由、从Switch B接收路由并发布时修改Router MAC。
[SwitchC] bgp 200
[SwitchC-bgp-default] peer 2.2.2.2 as-number 100
[SwitchC-bgp-default] peer 2.2.2.2 connect-interface loopback 0
[SwitchC-bgp-default] peer 2.2.2.2 ebgp-max-hop 64
[SwitchC-bgp-default] peer 4.4.4.4 as-number 200
[SwitchC-bgp-default] peer 4.4.4.4 connect-interface loopback 0
[SwitchC-bgp-default] address-family l2vpn evpn
[SwitchC-bgp-default-evpn] peer 2.2.2.2 enable
[SwitchC-bgp-default-evpn] peer 2.2.2.2 router-mac-local
[SwitchC-bgp-default-evpn] peer 4.4.4.4 enable
[SwitchC-bgp-default-evpn] peer 4.4.4.4 next-hop-local
[SwitchC-bgp-default-evpn] quit
[SwitchC-bgp-default] address-family ipv4 unicast
[SwitchC-bgp-default-ipv4] peer 2.2.2.2 enable
[SwitchC-bgp-default-ipv4] peer 2.2.2.2 advertise-cloudsec
[SwitchC-bgp-default] quit
#配置keychain
[SwitchC] keychain 1 mode absolute
[SwitchC-keychain-1]key 1
[SwitchC-keychain-1-key-1] authentication-algorithm hmac-sha-256
[SwitchC-keychain-1-key-1] key-string plain 123456
[SwitchC-keychain-1-key-1] send-lifetime utc 00:00:00 2023/01/01 to 00:00:00 2024/01/01
[SwitchC-keychain-1-key-1] accept-lifetime utc 00:00:00 2023/01/01 to 00:00:00 2024/01/01
[SwitchC-keychain-1-key-1]
#配置CloudSec策略
[SwitchC] cloudsec policy 1
[SwitchC-cloudsec-policy-1] cipher-suite gcm-aes-256
[SwitchC-cloudsec-policy-1] include sci
[SwitchC-cloudsec-policy-1] sak-rekey-interval 2000
#配置CloudSec对等体,绑定Keychain和策略,并配置rx sci和tx sci,本端设备的rx sci和tx sci分别等于对等体所在设备tx sci和rx sci
[SwitchC] cloudsec peer 2.2.2.2
[SwitchC-cloudsec-peer-2.2.2.2] keychain 1 policy 1
[SwitchC-cloudsec-peer-2.2.2.2] sci rx 2
[SwitchC-cloudsec-peer-2.2.2.2] sci tx 1
[SwitchC-cloudsec-peer-2.2.2.2]
#配置CloudSec和对等体交互时使用的源接口,该接口使用VXLAN隧道源地址所在的接口
[SwitchC] cloudsec source-interface LoopBack 0
(5) 配置Switch D
# 开启L2VPN能力。
<SwitchD> system-view
[SwitchD] l2vpn enable
# 关闭远端MAC地址自动学习功能。
[SwitchD] vxlan tunnel mac-learning disable
# 在VSI实例vpna下创建VXLAN 30。
[SwitchD] vsi vpna
[SwitchD-vsi-vpna] vxlan 30
[SwitchD-vsi-vpna-vxlan-30] quit
# 在VSI实例vpna下创建EVPN实例,并配置自动生成EVPN实例的RD和RT。
[SwitchD-vsi-vpna] evpn encapsulation vxlan
[SwitchD-vsi-vpna-evpn-vxlan] route-distinguisher auto
[SwitchD-vsi-vpna-evpn-vxlan] vpn-target auto
[SwitchD-vsi-vpna-evpn-vxlan] quit
[SwitchD-vsi-vpna] quit
# 配置BGP发布EVPN路由。
[SwitchD] bgp 200
[SwitchD-bgp-default] peer 3.3.3.3 as-number 200
[SwitchD-bgp-default] peer 3.3.3.3 connect-interface Loopback 0
[SwitchD-bgp-default] address-family l2vpn evpn
[SwitchD-bgp-default-evpn] peer 3.3.3.3 enable
[SwitchD-bgp-default-evpn] quit
[SwitchD-bgp-default] quit
# 在接入服务器的接口GigabitEthernet1/0/1上创建以太网服务实例1000,该实例用来匹配VLAN 200的数据帧。
[SwitchD] interface gigabitethernet 1/0/1
[SwitchD-GigabitEthernet1/0/1] service-instance 1000
[SwitchD-GigabitEthernet1/0/1-srv1000] encapsulation s-vid 200
# 配置以太网服务实例1000与VSI实例vpna关联。
[SwitchD-GigabitEthernet1/0/1-srv1000] xconnect vsi vpna
[SwitchD-GigabitEthernet1/0/1-srv1000] quit
(1) 验证ED(下文以Switch B为例,Switch C验证方法与此类似)
# 查看EVPN通过BGP自动发现的邻居信息,可以看到EVPN通过Inclusive Multicast Ethernet Tag Route发现邻居Switch A和Switch C,并分别与其建立VXLAN隧道、VXLAN-DCI隧道。
[SwitchB] display evpn auto-discovery imet
Total number of automatically discovered peers: 2
VSI name: vpna
RD PE_address Tunnel_address Tunnel mode VXLAN ID
1:10 1.1.1.1 1.1.1.1 VXLAN 10
1:500 3.3.3.3 3.3.3.3 VXLAN-DCI 500
# 查看Switch B上的Tunnel接口信息,可以看到VXLAN模式和VXLAN-DCI模式的Tunnel接口处于up状态。
[SwitchB] display interface tunnel
Tunnel1
Current state: UP
Line protocol state: UP
Description: Tunnel1 Interface
Bandwidth: 64 kbps
Maximum transmission unit: 1464
Internet protocol processing: Disabled
Output queue - Urgent queuing: Size/Length/Discards 0/100/0
Output queue - Protocol queuing: Size/Length/Discards 0/500/0
Output queue - FIFO queuing: Size/Length/Discards 0/75/0
Last clearing of counters: Never
Tunnel source 2.2.2.2, destination 1.1.1.1
Tunnel protocol/transport UDP_VXLAN/IP
Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 300 seconds output rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Input: 0 packets, 0 bytes, 0 drops
Output: 0 packets, 0 bytes, 0 drops
Tunnel1
Current state: UP
Line protocol state: UP
Description: Tunnel1 Interface
Bandwidth: 64 kbps
Maximum transmission unit: 1464
Internet protocol processing: Disabled
Output queue - Urgent queuing: Size/Length/Discards 0/100/0
Output queue - Protocol queuing: Size/Length/Discards 0/500/0
Output queue - FIFO queuing: Size/Length/Discards 0/75/0
Last clearing of counters: Never
Tunnel source 2.2.2.2, destination 3.3.3.3
Tunnel protocol/transport UDP_VXLAN-DCI/IP
Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 300 seconds output rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Input: 0 packets, 0 bytes, 0 drops
Output: 0 packets, 0 bytes, 0 drops
# 查看Switch B上的VSI信息,可以看到VSI内创建的VXLAN,以及关联的VXLAN隧道、VXLAN-DCI隧道等信息。vpnb下没有关联隧道。
[SwitchB] display l2vpn vsi verbose
VSI Name: vpna
VSI Index : 0
VSI State : Up
MTU : 1500
Bandwidth : Unlimited
Broadcast Restrain : Unlimited
Multicast Restrain : Unlimited
Unknown Unicast Restrain: Unlimited
MAC Learning : Enabled
MAC Table Limit : -
MAC Learning rate : -
Drop Unknown : -
Flooding : Enabled
Statistics : Disabled
VXLAN ID : 10
Tunnel Statistics : Enabled
Tunnels:
Tunnel Name Link ID State Type Flood proxy
Tunnel1 0x5000000 UP Auto Disabled
Tunnel1 0x5000001 UP Auto Disabled
VSI Name: vpnb
VSI Index : 1
VSI State : Down
MTU : 1500
Bandwidth : Unlimited
Broadcast Restrain : Unlimited
Multicast Restrain : Unlimited
Unknown Unicast Restrain: Unlimited
MAC Learning : Enabled
MAC Table Limit : -
MAC Learning rate : -
Drop Unknown : -
Flooding : Enabled
Statistics : Disabled
VXLAN ID : 500
# 查看EVPN的MAC地址表项,可以看到已经学习到虚拟机的MAC地址信息,且从对端数据中心学到的MAC地址表项带有M标志。
[SwitchB] display evpn route mac
Flags: D - Dynamic B - BGP L - Local active
G - Gateway S - Static M - Mapping I - Invalid
VSI name: vpna
MAC address Link ID/Name Flags Next hop
0001-0001-0011 Tunnel1 B 1.1.1.1
0001-0001-0033 Tunnel1 BM 3.3.3.3
# 查看CloudSec对等体信息,可以看到受CloudSec保护的VXLAN隧道编号TunnelNo为500。
[SwitchB] display cloudsec peer verbose
Peer address 3.3.3.3
Active policy : 1
TunnelNo : 500
Included SCI : Yes
Cipher suite : GCM-AES-256
SAK rekey interval : 0
Tx secure channel:
SCI : 2
Current SA : AN 0
(2) 验证主机
虚拟机VM 1、VM 2之间可以互访。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!