1. 组网需求 Switch B、Switch D为ED。虚拟机VM 1、VM 3属于VXLAN 10,VM 2属于VXLAN 20。通过VXLAN数据中心互联实现不同数据中心、不同VXLAN网络的互联。 具体需求为: · 手工建立VXLAN隧道和VXLAN-DCI隧道。 · 手工关联VXLAN和VXLAN隧道、VXLAN-DCI隧道。 · 站点之间的泛洪流量采用头端复制的方式转发。 2. 组网图
3. 配置步骤(1) 配置IP地址和单播路由协议 请按照以上拓扑图配置各接口的IP地址和子网掩码;在各台交换机上配置OSPF协议,确保交换机之间路由可达;配置Switch B和Switch D发布10.1.1.0/24、10.1.2.0/24网段的路由。(具体配置过程略) (2) 配置Switch A # 开启L2VPN能力。 <SwitchA> system-view [SwitchA] l2vpn enable # 创建VSI实例vpna和VXLAN 10。 [SwitchA] vsi vpna [SwitchA-vsi-vpna] vxlan 10 [SwitchA-vsi-vpna-vxlan-10] quit [SwitchA-vsi-vpna] quit # 创建VSI实例vpnb和VXLAN 20。 [SwitchA] vsi vpnb [SwitchA-vsi-vpnb] vxlan 20 [SwitchA-vsi-vpnb-vxlan-20] quit [SwitchA-vsi-vpnb] quit # 配置接口Loopback0的IP地址,作为隧道的源端地址。 [SwitchA] interface loopback 0 [SwitchA-Loopback0] ip address 1.1.1.1 255.255.255.255 [SwitchA-Loopback0] quit # 在Switch A和Switch B之间建立VXLAN隧道: · 创建模式为VXLAN的隧道接口Tunnel1。 · 指定隧道的源端地址为本地接口Loopback0的地址1.1.1.1。 · 指定隧道的目的端地址为Switch B上接口Loopback0的地址2.2.2.2。 [SwitchA] interface tunnel 1 mode vxlan [SwitchA-Tunnel1] source 1.1.1.1 [SwitchA-Tunnel1] destination 2.2.2.2 [SwitchA-Tunnel1] quit # 配置Tunnel1与VXLAN 10关联。 [SwitchA] vsi vpna [SwitchA-vsi-vpna] vxlan 10 [SwitchA-vsi-vpna-vxlan-10] tunnel 1 [SwitchA-vsi-vpna-vxlan-10] quit [SwitchA-vsi-vpna] quit # 配置Tunnel1与VXLAN 20关联。 [SwitchA] vsi vpnb [SwitchA-vsi-vpnb] vxlan 20 [SwitchA-vsi-vpnb-vxlan-20] tunnel 1 [SwitchA-vsi-vpnb-vxlan-20] quit [SwitchA-vsi-vpnb] quit # 在接入服务器的接口Ten-GigabitEthernet1/0/1上创建以太网服务实例1000,该实例用来匹配VLAN 100的数据帧,并将该服务实例与VSI实例vpna关联。 [SwitchA] interface ten-gigabitethernet 1/0/1 [SwitchA-Ten-GigabitEthernet1/0/1] port link-type trunk [SwitchA-Ten-GigabitEthernet1/0/1] port trunk permit vlan 100 [SwitchA-Ten-GigabitEthernet1/0/1] service-instance 1000 [SwitchA-Ten-GigabitEthernet1/0/1-srv1000] encapsulation s-vid 100 [SwitchA-Ten-GigabitEthernet1/0/1-srv1000] xconnect vsi vpna [SwitchA-Ten-GigabitEthernet1/0/1-srv1000] quit [SwitchA-Ten-GigabitEthernet1/0/1] quit # 在接入服务器的接口Ten-GigabitEthernet1/0/2上创建以太网服务实例1000,该实例用来匹配VLAN 200的数据帧,并将该服务实例与VSI实例vpnb关联。 [SwitchA] interface ten-gigabitethernet 1/0/2 [SwitchA-Ten-GigabitEthernet1/0/2] port link-type trunk [SwitchA-Ten-GigabitEthernet1/0/2] port trunk permit vlan 200 [SwitchA-Ten-GigabitEthernet1/0/2] service-instance 1000 [SwitchA-Ten-GigabitEthernet1/0/2-srv1000] encapsulation s-vid 200 [SwitchA-Ten-GigabitEthernet1/0/2-srv1000] xconnect vsi vpnb [SwitchA-Ten-GigabitEthernet1/0/2-srv1000] quit [SwitchA-Ten-GigabitEthernet1/0/2] quit (3) 配置Switch B # 开启L2VPN能力。 <SwitchB> system-view [SwitchB] l2vpn enable # 创建VSI实例vpna和VXLAN 10。 [SwitchB] vsi vpna [SwitchB-vsi-vpna] vxlan 10 [SwitchB-vsi-vpna-vxlan-10] quit [SwitchB-vsi-vpna] quit # 创建VSI实例vpnb和VXLAN 20。 [SwitchB] vsi vpnb [SwitchB-vsi-vpnb] vxlan 20 [SwitchB-vsi-vpnb-vxlan-20] quit [SwitchB-vsi-vpnb] quit # 配置接口Loopback0的IP地址,作为隧道的源端地址。 [SwitchB] interface loopback 0 [SwitchB-Loopback0] ip address 2.2.2.2 255.255.255.255 [SwitchB-Loopback0] quit # 在Switch B和Switch A之间建立VXLAN隧道: · 创建模式为VXLAN的隧道接口Tunnel1。 · 指定隧道的源端地址为本地接口Loopback0的地址2.2.2.2。 · 指定隧道的目的端地址为Switch A上接口Loopback0的地址1.1.1.1。 [SwitchB] interface tunnel 1 mode vxlan [SwitchB-Tunnel1] source 2.2.2.2 [SwitchB-Tunnel1] destination 1.1.1.1 [SwitchB-Tunnel1] quit # 在Switch B和Switch D之间建立VXLAN-DCI隧道: · 创建模式为VXLAN-DCI的隧道接口Tunnel2。 · 指定隧道的源端地址为本地接口Loopback0的地址2.2.2.2。 · 指定隧道的目的端地址为Switch D上接口Loopback0的地址3.3.3.3。 [SwitchB] interface tunnel 2 mode vxlan-dci [SwitchB-Tunnel2] source 2.2.2.2 [SwitchB-Tunnel2] destination 3.3.3.3 [SwitchB-Tunnel2] quit # 配置Tunnel1、Tunnel2与VXLAN 10关联。 [SwitchB] vsi vpna [SwitchB-vsi-vpna] vxlan 10 [SwitchB-vsi-vpna-vxlan-10] tunnel 1 [SwitchB-vsi-vpna-vxlan-10] tunnel 2 [SwitchB-vsi-vpna-vxlan-10] quit [SwitchB-vsi-vpna] quit # 配置Tunnel1、Tunnel2与VXLAN 20关联。 [SwitchB] vsi vpnb [SwitchB-vsi-vpnb] vxlan 20 [SwitchB-vsi-vpnb-vxlan-20] tunnel 1 [SwitchB-vsi-vpnb-vxlan-20] tunnel 2 [SwitchB-vsi-vpnb-vxlan-20] quit [SwitchB-vsi-vpnb] quit # 创建VSI虚接口VSI-interface1,并为其配置IP地址,该IP地址作为VXLAN 10内虚拟机的网关地址,指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。 [SwitchB] interface vsi-interface 1 [SwitchB-Vsi-interface1] ip address 10.1.1.1 255.255.255.0 [SwitchB-Vsi-interface1] distributed-gateway local [SwitchB-Vsi-interface1] local-proxy-arp enable [SwitchB-Vsi-interface1] quit # 创建VSI虚接口VSI-interface2,并为其配置IP地址,该IP地址作为VXLAN 20内虚拟机的网关地址,指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。 [SwitchB] interface vsi-interface 2 [SwitchB-Vsi-interface2] ip address 10.1.2.1 255.255.255.0 [SwitchB-Vsi-interface2] distributed-gateway local [SwitchB-Vsi-interface2] local-proxy-arp enable [SwitchB-Vsi-interface2] quit # 开启分布式网关的动态ARP表项同步功能。 [SwitchB] arp distributed-gateway dynamic-entry synchronize # 为VXLAN 10所在的VSI实例vpna指定VSI虚接口VSI-interface1。 [SwitchB] vsi vpna [SwitchB-vsi-vpna] gateway vsi-interface 1 [SwitchB-vsi-vpna] quit # 配置VXLAN 20所在的VSI实例和接口VSI-interface2关联。 [SwitchB] vsi vpnb [SwitchB-vsi-vpnb] gateway vsi-interface 2 [SwitchB-vsi-vpnb] quit (4) 配置Switch D # 开启L2VPN能力。 <SwitchD> system-view [SwitchD] l2vpn enable # 创建VSI实例vpna和VXLAN 10。 [SwitchD] vsi vpna [SwitchD-vsi-vpna] vxlan 10 [SwitchD-vsi-vpna-vxlan-10] quit [SwitchD-vsi-vpna] quit # 创建VSI实例vpnb和VXLAN 20。 [SwitchD] vsi vpnb [SwitchD-vsi-vpnb] vxlan 20 [SwitchD-vsi-vpnb-vxlan-20] quit [SwitchD-vsi-vpnb] quit # 配置接口Loopback0的IP地址,作为隧道的源端地址。 [SwitchD] interface loopback 0 [SwitchD-Loopback0] ip address 3.3.3.3 255.255.255.255 [SwitchD-Loopback0] quit # 在Switch D和Switch E之间建立VXLAN隧道: · 创建模式为VXLAN的隧道接口Tunnel1。 · 指定隧道的源端地址为本地接口Loopback0的地址3.3.3.3。 · 指定隧道的目的端地址为Switch E上接口Loopback0的地址4.4.4.4。 [SwitchD] interface tunnel 1 mode vxlan [SwitchD-Tunnel1] source 3.3.3.3 [SwitchD-Tunnel1] destination 4.4.4.4 [SwitchD-Tunnel1] quit # 在Switch D和Switch B之间建立VXLAN-DCI隧道: · 创建模式为VXLAN-DCI的隧道接口Tunnel2。 · 指定隧道的源端地址为本地接口Loopback0的地址3.3.3.。 · 指定隧道的目的端地址为Switch B上接口Loopback0的地址2.2.2.2。 [SwitchD] interface tunnel 2 mode vxlan-dci [SwitchD-Tunnel2] source 3.3.3.3 [SwitchD-Tunnel2] destination 2.2.2.2 [SwitchD-Tunnel2] quit # 配置Tunnel1、Tunnel2与VXLAN 10关联。 [SwitchD] vsi vpna [SwitchD-vsi-vpna] vxlan 10 [SwitchD-vsi-vpna-vxlan-10] tunnel 1 [SwitchD-vsi-vpna-vxlan-10] tunnel 2 [SwitchD-vsi-vpna-vxlan-10] quit [SwitchD-vsi-vpna] quit # 配置Tunnel2与VXLAN 20关联。 [SwitchD] vsi vpnb [SwitchD-vsi-vpnb] vxlan 20 [SwitchD-vsi-vpnb-vxlan-20] tunnel 2 [SwitchD-vsi-vpnb-vxlan-20] quit [SwitchD-vsi-vpnb] quit # 创建VSI虚接口VSI-interface1,并为其配置IP地址,该IP地址作为VXLAN 10内虚拟机的网关地址,指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。 [SwitchD] interface vsi-interface 1 [SwitchD-Vsi-interface1] ip address 10.1.1.1 255.255.255.0 [SwitchD-Vsi-interface1] distributed-gateway local [SwitchD-Vsi-interface1] local-proxy-arp enable [SwitchD-Vsi-interface1] quit # 创建VSI虚接口VSI-interface2,并为其配置IP地址,该IP地址作为VXLAN 20内虚拟机的网关地址,指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。 [SwitchD] interface vsi-interface 2 [SwitchD-Vsi-interface2] ip address 10.1.2.1 255.255.255.0 [SwitchD-Vsi-interface2] distributed-gateway local [SwitchD-Vsi-interface2] local-proxy-arp enable [SwitchD-Vsi-interface2] quit # 开启分布式网关的动态ARP表项同步功能。 [SwitchD] arp distributed-gateway dynamic-entry synchronize # 为VXLAN 10所在的VSI实例vpna指定VSI虚接口VSI-interface1。 [SwitchD] vsi vpna [SwitchD-vsi-vpna] gateway vsi-interface 1 [SwitchD-vsi-vpna] quit # 配置VXLAN 20所在的VSI实例和接口VSI-interface2关联。 [SwitchD] vsi vpnb [SwitchD-vsi-vpnb] gateway vsi-interface 2 [SwitchD-vsi-vpnb] quit (5) 配置Switch E # 开启L2VPN能力。 <SwitchE> system-view [SwitchE] l2vpn enable # 创建VSI实例vpna和VXLAN 10。 [SwitchE] vsi vpna [SwitchE-vsi-vpna] vxlan 10 [SwitchE-vsi-vpna-vxlan-10] quit [SwitchE-vsi-vpna] quit # 配置接口Loopback0的IP地址,作为隧道的源端地址。 [SwitchE] interface loopback 0 [SwitchE-Loopback0] ip address 4.4.4.4 255.255.255.255 [SwitchE-Loopback0] quit # 在Switch E和Switch D之间建立VXLAN隧道: · 创建模式为VXLAN的隧道接口Tunnel1。 · 指定隧道的源端地址为本地接口Loopback0的地址4.4.4.4。 · 指定隧道的目的端地址为Switch D上接口Loopback0的地址3.3.3.3。 [SwitchE] interface tunnel 1 mode vxlan [SwitchE-Tunnel1] source 4.4.4.4 [SwitchE-Tunnel1] destination 3.3.3.3 [SwitchE-Tunnel1] quit # 配置Tunnel1与VXLAN 10关联。 [SwitchE] vsi vpna [SwitchE-vsi-vpna] vxlan 10 [SwitchE-vsi-vpna-vxlan-10] tunnel 1 [SwitchE-vsi-vpna-vxlan-10] quit [SwitchE-vsi-vpna] quit # 在接入服务器的接口Ten-GigabitEthernet1/0/1上创建以太网服务实例1000,该实例用来匹配VLAN 100的数据帧。 [SwitchA] interface ten-gigabitethernet 1/0/1 [SwitchA-Ten-GigabitEthernet1/0/1] port link-type trunk [SwitchA-Ten-GigabitEthernet1/0/1] port trunk permit vlan 100 [SwitchA-Ten-GigabitEthernet1/0/1] service-instance 1000 [SwitchA-Ten-GigabitEthernet1/0/1-srv1000] encapsulation s-vid 100 # 配置以太网服务实例1000与VSI实例vpna关联。 [SwitchA-Ten-GigabitEthernet1/0/1-srv1000] xconnect vsi vpna [SwitchA-Ten-GigabitEthernet1/0/1-srv1000] quit [SwitchA-Ten-GigabitEthernet1/0/1] quit 4. 验证配置(1) 验证ED(下文以Switch B为例,其它设备验证方法与此类似) # 查看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 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 Tunnel2 Current state: UP Line protocol state: UP Description: Tunnel2 Interface Bandwidth: 64 kbps Maximum transmission unit: 1464 Internet protocol processing: Disabled 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虚接口处于up状态。 [SwitchB] display interface vsi-interface Vsi-interface1 Current state: UP Line protocol state: UP Description: Vsi-interface1 Interface Bandwidth: 1000000 kbps Maximum transmission unit: 1500 Internet address: 10.1.1.1/24 (primary) IP packet frame type  KTFMT_ETHNT_2, hardware address: 0011-2200-0102 IPv6 packet frame type  KTFMT_ETHNT_2, hardware address: 0011-2200-0102 Physical: Unknown, baudrate: 1000000 kbps Last clearing of counters: Never 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 Vsi-interface2 Current state: UP Line protocol state: UP Description: Vsi-interface2 Interface Bandwidth: 1000000 kbps Maximum transmission unit: 1500 Internet address: 10.1.2.1/24 (primary) IP packet frame type  KTFMT_ETHNT_2, hardware address: 0011-3300-0102 IPv6 packet frame type  KTFMT_ETHNT_2, hardware address: 0011-3300-0102 Physical: Unknown, baudrate: 1000000 kbps Last clearing of counters: Never 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,与VSI关联的VSI虚接口,以及VXLAN关联的VXLAN隧道、VXLAN-DCI隧道等信息。 [SwitchB] display l2vpn vsi verbose VSI Name: vpna VSI Index : 0 VSI State : Up MTU : 1500 Bandwidth : - Broadcast Restrain : - Multicast Restrain : - Unknown Unicast Restrain: - MAC Learning : Enabled MAC Table Limit : - MAC Learning rate : - Drop Unknown : - Flooding : Enabled Gateway interface : VSI-interface 1 VXLAN ID : 10 Tunnels: Tunnel Name Link ID State Type Flood proxy Tunnel1 0x5000001 Up Manual Disabled Tunnel2 0x5000002 Up Manual Disabled VSI Name: vpnb VSI Index : 0 VSI State : Up MTU : 1500 Bandwidth : - Broadcast Restrain : - Multicast Restrain : - Unknown Unicast Restrain: - MAC Learning : Enabled MAC Table Limit : - MAC Learning rate : - Drop Unknown : - Flooding : Enabled Gateway interface : VSI-interface 2 VXLAN ID : 20 Tunnels: Tunnel Name Link ID State Type Flood proxy Tunnel1 0x5000001 Up Manual Disabled Tunnel2 0x5000002 Up Manual Disabled # 查看Switch B上VSI的ARP表项信息,可以看到已学习到了虚拟机的ARP信息。 [SwitchB] display arp Type: S-Static D-Dynamic O-Openflow R-Rule M-Multiport I-Invalid IP address MAC address VLAN/VSI Interface/Link ID Aging Type 11.1.1.4 000c-29c1-5e46 N/A Vlan11 19 D 10.1.1.11 0cda-41b5-cf09 0 Tunnel1 20 D 10.1.1.12 0011-4400-0102 0 Tunnel2 20 D 10.1.2.11 0cda-41b5-cf89 1 Tunnel1 20 D (2) 验证主机 虚拟机VM 1、VM 2、VM 3之间可以互访。
|