- Table of Contents
- Related Documents
-
Title | Size | Download |
---|---|---|
01-VXLAN configuration | 838.04 KB |
Generic VXLAN network establishment and forwarding process
VXLAN tunnel establishment and assignment
Assignment of traffic to VXLANs
Configuring basic VXLAN features
Restrictions: System operating mode
Setting the forwarding mode for VXLANs
Configure VXLAN hardware resource allocation
Setting the VXLAN hardware resource mode
Setting the hardware resource mode for the source UDP port number in VXLAN packets
Enabling BFD on a VXLAN tunnel
Assigning a VXLAN tunnel to a VXLAN
Mapping a Layer 3 interface to a VSI
Mapping an Ethernet service instance to a VSI
About MAC address entry management
Configuring static MAC address entries
Setting the MAC learning priority of an Ethernet service instance
Disabling remote-MAC address learning
Configuring a multicast-mode VXLAN
About multicast methods for multicast-mode VXLANs
Prerequisites for multicast-mode VXLANs
Configuring a multicast-mode VXLAN that uses the PIM method
Configuring a multicast-mode VXLAN that uses the IGMP host method
Setting the destination UDP port number of VXLAN packets
Configuring VXLAN packet check
Confining floods to the local site
Enabling ARP flood suppression
Disabling remote ARP or ND learning for VXLANs
Enabling VXLAN packet statistics
Enabling packet statistics for a VSI
Enabling packet statistics for an AC
Setting the VXLAN statistics collection interval
Testing the reachability of a remote VM
Display and maintenance commands for VXLANs
Example: Configuring a unicast-mode VXLAN
Example: Configuring a multicast-mode VXLAN
VXLAN IP gateways separated from VTEPs
Centralized VXLAN IP gateway deployment
Centralized VXLAN gateway group deployment
Distributed VXLAN IP gateway deployment
Restrictions and guidelines: VXLAN IP gateway configuration
Prerequisites for VXLAN IP gateway configuration
Configuring a centralized VXLAN IP gateway
Configuring a centralized VXLAN IP gateway group
Specifying a VTEP group as the gateway for an access layer VTEP
Configuring a distributed VXLAN IP gateway
Restrictions and guidelines for distributed VXLAN IP gateway configuration
Configuring a distributed VXLAN IP gateway interface
Enabling dynamic ARP or ND entry synchronization for distributed VXLAN IP gateways
Configuring optional parameters for a VSI interface
Restoring the default settings of the VSI interface
Display and maintenance commands for VXLAN IP gateways
VXLAN IP gateway configuration examples
Example: Configuring a centralized VXLAN IP gateway
Example: Configuring distributed VXLAN IPv4 gateways (IPv4 underlay network)
Example: Configuring distributed VXLAN IPv4 gateways (IPv6 underlay network)
Example: Configuring distributed VXLAN IPv6 gateways (IPv6 underlay network)
VXLAN overview
Virtual eXtensible LAN (VXLAN) is a MAC-in-UDP technology that provides Layer 2 connectivity between distant network sites across an IP network. VXLAN is typically used in data centers for multitenant services.
VXLAN benefits
VXLAN provides the following benefits:
· Support for more virtual switched domains than VLANs—Each VXLAN is uniquely identified by a 24-bit VXLAN ID. The total number of VXLANs can reach 16777216 (224). This specification makes VXLAN a better choice than 802.1Q VLAN to isolate traffic for VMs.
· Easy deployment and maintenance—VXLAN requires deployment only on the edge devices of the transport network. Devices in the transport network perform typical Layer 3 forwarding.
VXLAN network model
As shown in Figure 1, a VXLAN is a virtual Layer 2 network (known as the overlay network) built on top of an existing physical Layer 3 network (known as the underlay network). The overlay network encapsulates inter-site Layer 2 frames into VXLAN packets and forwards the packets to the destination along the Layer 3 forwarding paths provided by the underlay network. The underlay network is transparent to tenants, and geographically dispersed sites of a tenant are merged into a Layer 2 network. The underlay network can be an IPv4 or IPv6 network.
The site networks and the undelay network can be IPv4 or IPv6 networks.
The transport edge devices assign VMs to different VXLANs, and then forward traffic between sites for VMs by using VXLAN tunnels.
The transport edge devices are VXLAN tunnel endpoints (VTEP). They can be servers that host VMs or independent network devices.
The VTEP implementation of the device uses attachment circuits (ACs), virtual switch instances (VSIs), and VXLAN tunnels to provide VXLAN services.
· VSI—A VSI is a virtual Layer 2 switched domain. Each VSI provides switching services only for one VXLAN. VSIs learn MAC addresses and forward frames independently of one another. VMs in different sites have Layer 2 connectivity if they are in the same VXLAN.
· AC—An AC is a physical or virtual link that connects a VTEP to the local site. Typically, ACs are site-facing Layer 3 interfaces or Ethernet service instances that are associated with the VSI of a VXLAN. Traffic received from an AC is assigned to the VSI associated with the AC. Ethernet service instances are created on site-facing Layer 2 interfaces. An Ethernet service instance uses a frame match criterion to match a list of custom VLANs.
· VXLAN tunnel—Logical point-to-point tunnels between VTEPs over the transport network. Each VXLAN tunnel can trunk multiple VXLANs.
VTEPs encapsulate VXLAN traffic in the VXLAN, outer UDP, and outer IP headers. The devices in the transport network forward VXLAN traffic only based on the outer IP header.
Figure 1 VXLAN network model
VXLAN packet format
As shown in Figure 2, a VTEP encapsulates a frame in the following headers:
· 8-byte VXLAN header—VXLAN information for the frame.
¡ Flags—If the I bit is 1, the VXLAN ID is valid. If the I bit is 0, the VXLAN ID is invalid. All other bits are reserved and set to 0.
¡ 24-bit VXLAN ID—Identifies the VXLAN of the frame. It is also called the virtual network identifier (VNI).
· 8-byte outer UDP header for VXLAN—The default VXLAN destination UDP port number is 4789.
· 20-byte outer IP header—Valid addresses of VTEPs or VXLAN multicast groups on the transport network. Devices in the transport network forward VXLAN packets based on the outer IP header.
Figure 2 VXLAN packet format
VXLAN working mechanisms
Generic VXLAN network establishment and forwarding process
The VTEP uses the following process to establish the VXLAN network and forward an inter-site frame:
1. Discovers remote VTEPs, establishes VXLAN tunnels, and assigns the VXLAN tunnels to VXLANs.
2. Assigns the frame to its matching VXLAN if the frame is sent between sites.
3. Performs MAC learning on the VXLAN's VSI.
4. Forwards the frame through VXLAN tunnels.
This section describes this process in detail. For intra-site frames in a VSI, the system performs typical Layer 2 forwarding, and it processes 802.1Q VLAN tags as described in "Access modes of VSIs."
VXLAN tunnel establishment and assignment
To provide Layer 2 connectivity for a VXLAN between two sites, you must create a VXLAN tunnel between the sites and assign the tunnel to the VXLAN.
VXLAN tunnel establishment
VXLAN supports manual VXLAN tunnel establishment. To set up a VXLAN tunnel, you must specify the tunnel source and destination IP addresses on the tunnel endpoints.
VXLAN tunnel assignment
VXLAN supports manual VXLAN tunnel assignment. You must manually assign VXLAN tunnels to VXLANs.
Assignment of traffic to VXLANs
Traffic from the local site to a remote site
The VTEP uses an Ethernet service instance or Layer 3 interface to match a list of VLANs on a site-facing interface. The VTEP assigns customer traffic to a VXLAN by mapping the Layer 3 interface or Ethernet service instance to a VSI.
As shown in Figure 3, Ethernet service instance 1 matches VLAN 2 and is mapped to VSI A (VXLAN 10). When a frame from VLAN 2 arrives, the VTEP assigns the frame to VXLAN 10, and looks up VSI A's MAC address table for the outgoing interface.
Figure 3 Identifying traffic from the local site
Traffic from a remote site to the local site
When a frame arrives at a VXLAN tunnel, the VTEP uses the VXLAN ID in the frame to identify its VXLAN.
MAC learning
The VTEP performs source MAC learning on the VSI as a Layer 2 switch.
· For traffic from the local site to the remote site, the VTEP learns the source MAC address before VXLAN encapsulation.
· For traffic from the remote site to the local site, the VTEP learns the source MAC address after removing the VXLAN header.
A VSI's MAC address table includes the following types of MAC address entries:
· Local MAC—MAC entries learned from the local site. The outgoing interfaces for the MAC address entries are site-facing interfaces.
¡ Static—Manually added MAC entries.
¡ Dynamic—Dynamically learned MAC entries.
· Remote MAC—MAC entries learned from a remote site. The outgoing interfaces for the MAC addresses are VXLAN tunnel interfaces.
¡ Static—Manually added MAC entries.
¡ Dynamic—MAC entries learned in the data plane from incoming traffic on VXLAN tunnels. The learned MAC addresses are contained in the inner Ethernet header.
¡ OpenFlow—MAC entries issued by a remote controller through OpenFlow. For more information, see OpenFlow Configuration Guide.
¡ OVSDB—MAC entries issued by a remote controller through OVSDB.
The following shows the priority order of different types of remote MAC address entries:
a. Static MAC address entries, and MAC address entries issued by a remote controller through OpenFlow or OVSDB. These types of entries have the same priority and overwrite each other.
b. Dynamic MAC address entries.
Unicast forwarding
Intra-site unicast forwarding
The VTEP uses the following process to forward a known unicast frame within a site:
1. Identifies the VSI of the frame.
2. Looks up the destination MAC address in the VSI's MAC address table for the outgoing interface.
3. Sends the frame out of the matching outgoing interface.
As shown in Figure 4, VTEP 1 forwards a frame from VM 1 to VM 4 within the local site in VLAN 10 as follows:
1. Identifies that the frame belongs to VSI A when the frame arrives at Interface A.
2. Looks up the destination MAC address (MAC 4) in the MAC address table of VSI A for the outgoing interface.
3. Sends the frame out of the matching outgoing interface (Interface B) to VM 4 in VLAN 10.
Inter-site unicast forwarding
The following process (see Figure 5) applies to a known unicast frame between sites:
1. The source VTEP encapsulates the Ethernet frame in the VXLAN/UDP/IP header.
In the outer IP header, the source IP address is the source VTEP's VXLAN tunnel source IP address. The destination IP address is the VXLAN tunnel destination IP address.
2. The source VTEP forwards the encapsulated packet out of the outgoing VXLAN tunnel interface found in the VSI's MAC address table.
3. The intermediate transport devices (P devices) forward the frame to the destination VTEP by using the outer IP header.
4. The destination VTEP removes the headers on top of the inner Ethernet frame. It then performs MAC address table lookup in the VXLAN's VSI to forward the frame out of the matching outgoing interface.
Flood
The source VTEP floods a broadcast, multicast, or unknown unicast frame to all site-facing interfaces and VXLAN tunnels in the VXLAN, except for the incoming interface. Each destination VTEP floods the inner Ethernet frame to all site-facing interfaces in the VXLAN. To avoid loops, the destination VTEPs do not flood the frame back to VXLAN tunnels.
VXLAN supports unicast mode (also called head-end replication), multicast mode (also called tandem replication), and flood proxy mode for flood traffic.
Unicast mode (head-end replication)
As shown in Figure 6, the source VTEP replicates the flood frame, and then sends one replica to the destination IP address of each VXLAN tunnel in the VXLAN.
Multicast mode (tandem replication)
IMPORTANT: IPv6-based VXLAN does not support this mode. |
As shown in Figure 7, the source VTEP sends the flood frame in a multicast VXLAN packet destined for a multicast group address. Transport network devices replicate and forward the packet to remote VTEPs based on their multicast forwarding entries.
Flood proxy mode (proxy server replication)
As shown in Figure 8, the source VTEP sends the flood frame in a VXLAN packet over a VXLAN tunnel to a flood proxy server. The flood proxy server replicates and forwards the packet to each remote VTEP through its VXLAN tunnels.
The flood proxy mode applies to VXLANs that have many sites. This mode reduces flood traffic in the transport network without using a multicast protocol. To use a flood proxy server, you must set up a VXLAN tunnel to the server on each VTEP.
The flood proxy mode is typically used in SDN transport networks that have a flood proxy server. For VTEPs to forward packets based on the MAC address table issued by an SDN controller, you must perform the following tasks on the VTEPs:
· Disable remote-MAC address learning by using the vxlan tunnel mac-learning disable command.
· Disable source MAC check on all transport-facing interfaces by using the undo mac-address static source-check enable command.
Access modes of VSIs
The access mode of a VSI determines how the VTEP processes the 802.1Q VLAN tags in the Ethernet frames.
VLAN access mode
In this mode, Ethernet frames received from or sent to the local site must contain 802.1Q VLAN tags.
· For an Ethernet frame received from the local site, the VTEP removes all its 802.1Q VLAN tags before forwarding the frame.
· For an Ethernet frame destined for the local site, the VTEP adds 802.1Q VLAN tags to the frame before forwarding the frame.
In VLAN access mode, VXLAN packets sent between sites do not contain 802.1Q VLAN tags. You can use different 802.1Q VLANs to provide the same service in different sites.
Ethernet access mode
The VTEP does not process the 802.1Q VLAN tags of Ethernet frames received from or sent to the local site.
· For an Ethernet frame received from the local site, the VTEP forwards the frame with the 802.1Q VLAN tags intact.
· For an Ethernet frame destined for the local site, the VTEP forwards the frame without adding 802.1Q VLAN tags.
In Ethernet access mode, VXLAN packets sent between VXLAN sites contain 802.1Q VLAN tags. You must use the same VLAN to provide the same service between sites.
ARP and ND flood suppression
ARP or ND flood suppression reduces ARP request broadcasts or ND request multicasts by enabling the VTEP to reply to ARP or ND requests on behalf of VMs.
As shown in Figure 9, this feature snoops ARP or ND packets to populate the ARP or ND flood suppression table with local and remote MAC addresses. If an ARP or ND request has a matching entry, the VTEP replies to the request on behalf of the VM. If no match is found, the VTEP floods the request to both local and remote sites.
Figure 9 ARP flood suppression
The following uses ARP flood suppression as an example to explain the flood suppression workflow:
1. VM 1 sends an ARP request to obtain the MAC address of VM 7.
2. VTEP 1 creates a suppression entry for VM 1, and floods the ARP request in the VXLAN.
3. VTEP 2 and VTEP 3 de-encapsulate the ARP request. The VTEPs create a suppression entry for VM 1, and broadcast the request in the local site.
4. VM 7 sends an ARP reply.
5. VTEP 2 creates a suppression entry for VM 7 and forwards the ARP reply to VTEP 1.
6. VTEP 1 de-encapsulates the ARP reply, creates a suppression entry for VM 7, and forwards the ARP reply to VM 1.
7. VM 4 sends an ARP request to obtain the MAC address of VM 1 or VM 7.
8. VTEP 1 creates a suppression entry for VM 4 and replies to the ARP request.
9. VM 10 sends an ARP request to obtain the MAC address of VM 1.
10. VTEP 3 creates a suppression entry for VM 10 and replies to the ARP request.
VXLAN IP gateways
A VXLAN IP gateway provides Layer 3 forwarding services for VMs in VXLANs. A VXLAN IP gateway can be an independent device or be collocated with a VTEP. For more information about VXLAN IP gateway placement, see "Configuring VXLAN IP gateways."
Protocols and standards
RFC 7348, Virtual eXtensible Local Area Network (VXLAN): A Framework for Overlaying Virtualized Layer 2 Networks over Layer 3 Networks
Configuring basic VXLAN features
Restrictions: System operating mode
Before you can configure VXLANs, you must perform the following tasks:
1. Set the system operating mode to standard by using the system-working-mode standard command. For more information about setting the system operating mode, see device management in Fundamentals Configuration Guide.
2. Save the configuration.
3. Reboot the device.
VXLAN tasks at a glance
To configure basic VXLAN settings, perform the following tasks on VTEPs:
1. Setting the forwarding mode for VXLANs
2. (Optional.) Configure VXLAN hardware resource allocation
5. Assigning a VXLAN tunnel to a VXLAN
7. (Optional.) Managing MAC address entries
8. Configuring a multicast-mode VXLAN
If the network is multicast dense, configure the VTEP to flood VXLAN traffic in multicast mode.
9. (Optional.) Configuring VXLAN packet parameters
¡ Setting the destination UDP port number of VXLAN packets
¡ Configuring VXLAN packet check
10. (Optional.) Reducing flood traffic in the transport network
¡ Confining floods to the local site
¡ Enabling ARP flood suppression
¡ Enabling ND flood suppression
11. Disabling remote ARP or ND learning for VXLANs
12. Maintaining VXLAN networks
¡ Enabling VXLAN packet statistics
¡ Testing the reachability of a remote VM
Prerequisites for VXLAN
Configure a routing protocol on the devices in the transport network to make sure the VTEPs can reach one another.
Setting the forwarding mode for VXLANs
About this task
A VXLAN tunnel supports the following modes:
· Layer 3 forwarding mode—The device uses the ARP table to forward traffic for VXLANs.
· Layer 2 forwarding mode—The device uses the MAC address table to forward traffic for VXLANs.
If the device is a VTEP, enable Layer 2 forwarding for VXLANs. If the device is a VXLAN IP gateway, enable Layer 3 forwarding for VXLANs. For more information about VXLAN IP gateways, see "Configuring VXLAN IP gateways."
Restrictions and guidelines
You must delete all VSIs, VSI interfaces, and VXLAN tunnel interfaces before you can change the forwarding mode.
Procedure
1. Enter system view.
system-view
2. Set the forwarding mode of VXLANs.
¡ Enable Layer 2 forwarding.
undo vxlan ip-forwarding
¡ Enable Layer 3 forwarding.
vxlan ip-forwarding [ tagged | untagged ]
By default, Layer 3 forwarding is enabled for VXLANs.
Configure VXLAN hardware resource allocation
Setting the VXLAN hardware resource mode
About this task
Creation of VXLAN tunnels and MAC address entries requires hardware resources, which are limited on the device. You can select a VXLAN hardware resource mode to distribute hardware resources between VXLAN tunnels and MAC address entries depending on your network requirements.
· MAC address mode—Assigns more hardware resources to MAC address entries. Use this mode only on IPv4-based VXLANs.
· Normal mode—Assigns more hardware resources to VXLAN tunnels. In this mode, a VXLAN tunnel interface can be the outgoing interface of a network route.
· Ctag mode—Assigns more hardware resources to VXLAN tunnels, and enables the device in Layer 3 forwarding mode to process packets to be forwarded through VXLAN tunnels as follows:
¡ Adds the tag of the CVLAN ID in the ARP entry used for forwarding to packets before VXLAN encapsulation.
¡ Does not add VLAN tags to packets if the ARP entry does not contain a CVLAN ID.
· Stag mode—Assigns more hardware resources to VXLAN tunnels, and enables the device in Layer 3 forwarding mode to process packets to be forwarded through VXLAN tunnels as follows:
¡ Adds the tag of the SVLAN ID in the ARP entry used for forwarding to packets before VXLAN encapsulation.
¡ Does not add VLAN tags to packets if the ARP entry does not contain an SVLAN ID.
Restrictions and guidelines
In MAC address mode or normal mode, the device does not add VLAN tags to packets before VXLAN encapsulation.
In Ctag mode or Stag mode, the maximum numbers of VXLAN tunnels and MAC address entries are the same as those in normal mode. In addition, a VXLAN tunnel interface can be the outgoing interface of a network route.
Procedure
1. Enter system view.
system-view
2. Set the VXLAN hardware resource mode.
hardware-resource vxlan { ctag | mac | normal | stag }
By default, the VXLAN hardware resource mode is normal.
Setting the hardware resource mode for the source UDP port number in VXLAN packets
About this task
Perform this task to set the hardware resource mode for the outer source UDP port number in outgoing VXLAN packets. The following modes are available:
· 8bit—8bit mode. In this mode, the most significant 8 bits of the outer source UDP port number is fixed to 00000000 for outgoing VXLAN packets.
· 16bit—16bit mode. In this mode, no bit is fixed for the outer source UDP port number in outgoing VXLAN packets.
Restrictions and guidelines
Change to the hardware resource mode takes effect at the next startup. After you perform this task, reboot the device.
Procedure
1. Enter system view.
system-view
2. Set the hardware resource mode for the outer source UDP port number in outgoing VXLAN packets.
hardware-resource source-udp-port { 8bit | 16bit }
By default, the hardware resource mode is 8bit.
Creating a VXLAN on a VSI
1. Enter system view.
system-view
2. Enable L2VPN.
l2vpn enable
By default, L2VPN is disabled.
3. Create a VSI and enter VSI view.
vsi vsi-name
4. Enable the VSI.
undo shutdown
By default, a VSI is not manually shut down.
5. Create a VXLAN and enter VXLAN view.
vxlan vxlan-id
You can create only one VXLAN on a VSI.
The VXLAN ID must be unique for each VSI.
6. (Optional.) Configure VSI parameters:
c. Return to VSI view.
quit
d. Configure a VSI description.
description text
By default, a VSI does not have a description.
e. Set the MTU for the VSI.
mtu mtu
The default MTU for a VSI is 1500 bytes.
f. Set the maximum bandwidth for known unicast traffic of the VSI.
bandwidth bandwidth
By default, the maximum bandwidth is not limited for known unicast traffic of a VSI.
g. Set the broadcast, multicast, or unknown unicast bandwidth restraints for the VSI.
restrain { broadcast | multicast | unknown-unicast } bandwidth
By default, broadcast, multicast, and unknown unicast traffic is not limited on a VSI.
h. Enable MAC address learning for the VSI.
mac-learning enable
By default, MAC address learning is enabled for a VSI.
Configuring a VXLAN tunnel
Creating a VXLAN tunnel
About this task
Restrictions and guidelines
As a best practice, do not configure multiple VXLAN tunnels to use the same source and destination IP addresses.
This task provides basic VXLAN tunnel configuration. For more information about tunnel configuration and commands, see Layer 3—IP Services Configuration Guide and Layer 3—IP Services Command Reference.
Procedure
1. Enter system view.
system-view
2. (Optional.) Specify a global source IP address for VXLAN tunnels.
tunnel global source-address ipv4-address
By default, no global source IP address is specified for VXLAN tunnels.
A VXLAN tunnel uses the global source address if you do not specify a source interface or source address for the tunnel.
3. Create a VXLAN tunnel interface and enter tunnel interface view.
interface tunnel tunnel-number mode vxlan [ ipv6 ]
The endpoints of a tunnel must use the same tunnel mode.
4. Specify a source address for the tunnel. Choose one of the following methods:
¡ Specify a source IP address for the tunnel.
source ipv4-address
The specified IP address is used in the outer IP header of tunneled VXLAN packets.
¡ Specify a source interface for the tunnel.
source interface-type interface-number
The IP address of the specified interface is used in the outer IP header of tunneled VXLAN packets.
By default, no source IP address or source interface is specified for a tunnel.
Do not perform this step if you are using OVSDB for VXLAN tunnel management.
For a multicast-mode VXLAN, the source IP address cannot be a loopback interface's address, and the source interface cannot be a loopback interface.
5. Specify a destination IP address for the tunnel.
destination ipv4-address
By default, no destination IP address is specified for a tunnel.
Specify the remote VTEP's IP address. This IP address will be the destination IP address in the outer IP header of tunneled VXLAN packets.
Enabling BFD on a VXLAN tunnel
About this task
Enable BFD on both ends of a VXLAN tunnel for quick link connectivity detection. The VTEPs periodically send BFD single-hop control packets to each other through the VXLAN tunnel. A VTEP sets the tunnel state to Defect if it has not received control packets from the remote end for 5 seconds. In this situation, the tunnel interface state is still Up. The tunnel state will change from Defect to Up if the VTEP can receive BFD control packets again.
Restrictions and guidelines
You must enable BFD on both ends of a VXLAN tunnel.
Procedure
1. Enter system view.
system-view
2. Specify the reserved VXLAN.
reserved vxlan vxlan-id
By default, no VXLAN has been reserved.
For BFD sessions to come up, you must reserve a VXLAN.
You can specify only one reserved VXLAN on the VTEP. The reserved VXLAN cannot be the VXLAN created on any VSI.
3. Enter VXLAN tunnel interface view.
interface tunnel tunnel-number
4. Enable BFD on the tunnel.
tunnel bfd enable destination-mac mac-address
By default, BFD is disabled on a tunnel.
Assigning a VXLAN tunnel to a VXLAN
About this task
To provide Layer 2 connectivity for a VXLAN between two sites, you must assign the VXLAN tunnel between the sites to the VXLAN.
You can assign multiple VXLAN tunnels to a VXLAN, and configure a VXLAN tunnel to trunk multiple VXLANs. For a unicast-mode VXLAN, the system floods unknown unicast, multicast, and broadcast traffic to each tunnel associated with the VXLAN. If a flood proxy server is used, the VTEP sends flood traffic to the server through the flood proxy tunnel. The flood proxy server replicates and forwards flood traffic to remote VTEPs.
Restrictions and guidelines
For full Layer 2 connectivity in the VXLAN, make sure the VXLAN contains the VXLAN tunnel between each pair of sites in the VXLAN.
Procedure
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Enter VXLAN view.
vxlan vxlan-id
4. Assign a VXLAN tunnel to the VXLAN.
tunnel tunnel-number [ flooding-proxy ]
By default, a VXLAN does not contain any VXLAN tunnels.
To send flood traffic to the flood proxy server through a tunnel, enable flood proxy on that tunnel. The flood proxy server will replicate and forward flood traffic to remote VTEPs.
Mapping ACs to a VSI
Mapping a Layer 3 interface to a VSI
About this task
To assign the customer traffic on a Layer 3 interface to a VXLAN, map the interface to the VXLAN's VSI. The VSI uses its MAC address table to forward the customer traffic.
Procedure
1. Enter system view.
system-view
2. Enter Layer 3 interface view.
interface interface-type interface-number
3. Map the Layer 3 interface to a VSI.
xconnect vsi vsi-name [ access-mode { ethernet | vlan } ] [ track track-entry-number&<1-3> ]
By default, a Layer 3 interface is not mapped to any VSI.
Mapping an Ethernet service instance to a VSI
About this task
An Ethernet service instance matches a list of VLANs on a site-facing interface. The VTEP assigns customer traffic from the VLANs to a VXLAN by mapping the Ethernet service instance to a VSI.
Restrictions and guidelines
An Ethernet service instance can contain only one match criterion. To change the match criterion, you must remove the original criterion first. When you remove the match criterion in an Ethernet service instance, the mapping between the service instance and the VSI is removed automatically.
Procedure
1. Enter system view.
system-view
2. Enter interface view.
¡ Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 2 aggregate interface view.
interface bridge-aggregation interface-number
3. Create an Ethernet service instance and enter Ethernet service instance view.
service-instance instance-id
4. Configure a frame match criterion. Choose one of the following options:
¡ Match frames tagged with the specified outer 802.1Q VLAN IDs.
encapsulation s-vid vlan-id-list
¡ Match frames tagged with the specified outer and inner 802.1Q VLAN IDs.
encapsulation s-vid vlan-id-list c-vid vlan-id-list
¡ Match any 802.1Q untagged frames.
encapsulation untagged
¡ Match frames that do not match any other service instance on the interface.
encapsulation default
An interface can contain only one Ethernet service instance that uses the encapsulation default match criterion.
An Ethernet service instance that uses the encapsulation default match criterion matches any frames if it is the only instance on the interface.
By default, an Ethernet service instance does not contain a frame match criterion.
5. Map the Ethernet service instance to a VSI.
xconnect vsi vsi-name [ access-mode { ethernet | vlan } ] [ track track-entry-number&<1-3> ]
By default, an Ethernet service instance is not mapped to any VSI.
Managing MAC address entries
About MAC address entry management
Local-MAC address entries can be manually added or dynamically learned. You can log local MAC addresses and local-MAC changes.
Remote-MAC address entries can be generated by a variety of methods, including manual creation and dynamic learning.
Enabling local-MAC logging
About this task
When the local-MAC logging feature is enabled, the VXLAN module immediately sends a log message with its local MAC addresses to the information center. When a local MAC address is added or removed, a log message is also sent to the information center to notify the local-MAC change.
With the information center, you can set log message filtering and output rules, including output destinations. For more information about configuring the information center, see Network Management and Monitoring Configuration Guide.
Procedure
1. Enter system view.
system-view
2. Enable local-MAC logging.
vxlan local-mac report
By default, local-MAC logging is disabled.
Configuring static MAC address entries
1. Enter system view.
system-view
2. Add a static local-MAC address entry.
mac-address static mac-address { interface interface-type interface-number | interface interface-type interface-number service-instance instance-id } vsi vsi-name
For successful configuration, make sure the specified Layer 3 interface or Ethernet service instance has been mapped to the VSI.
3. Add a static remote-MAC address entry.
mac-address static mac-address interface tunnel tunnel-number vsi vsi-name
For the setting to take effect, make sure the VSI's VXLAN has been created and specified on the VXLAN tunnel.
Setting the MAC learning priority of an Ethernet service instance
About this task
A VSI uses the MAC learning priority to limit the ACs from which an AC can learn MAC addresses. A low-priority Ethernet service instance cannot learn MAC addresses from a high-priority Ethernet service instance. A high-priority Ethernet service instance can learn MAC addresses from a low-priority Ethernet service instance or another high-priority Ethernet service instance. If an Ethernet service instance learns a MAC address from another Ethernet service instance, the new MAC address entry overwrites the old one.
Procedure
1. Enter system view.
system-view
2. Enter interface view.
¡ Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 2 aggregate interface view.
interface bridge-aggregation interface-number
3. Enter Ethernet service instance view.
service-instance instance-id
4. Set the MAC learning priority of the Ethernet service instance.
mac-address mac-learning priority { high | low }
By default, the MAC learning priority of an Ethernet service instance is low.
This setting takes effect only after the Ethernet service instance is mapped to a VSI.
Disabling remote-MAC address learning
About this task
When network attacks occur, disable remote-MAC address learning to prevent the device from learning incorrect remote MAC addresses. You can manually add static remote-MAC address entries.
Procedure
1. Enter system view.
system-view
2. Disable remote-MAC address learning.
vxlan tunnel mac-learning disable
By default, remote-MAC address learning is enabled.
Configuring a multicast-mode VXLAN
About multicast methods for multicast-mode VXLANs
A multicast-mode VXLAN supports the following multicast methods:
· PIM—VTEPs and transport network devices run PIM to generate multicast forwarding entries. To forward multicast traffic correctly, you must use the source IP address of an up VXLAN tunnel as the source IP address of multicast VXLAN packets. As a best practice, use the source IP address of a VXLAN tunnel that uses the IP address of a loopback interface. If the VTEP has multiple transport-facing interfaces, PIM dynamically selects the outgoing interfaces for multicast VXLAN packets.
· IGMP host—VTEPs and transport network devices run PIM and IGMP to generate multicast forwarding entries.
¡ Transport-facing interfaces of VTEPs act as IGMP hosts.
¡ Transport network devices connected to a VTEP run IGMP.
¡ All transport network devices run PIM.
On a VTEP, you must use the IP address of the transport-facing interface as the source IP address for multicast VXLAN packets. If the VTEP has multiple transport-facing interfaces, multicast VXLAN packets are sent to the transport network through the interface that provides the source IP address for multicast VXLAN packets.
VTEPs in a multicast-mode VXLAN can use different multicast methods.
Prerequisites for multicast-mode VXLANs
For a multicast-mode VXLAN to flood traffic, you must perform the following tasks in addition to multicast-mode configuration:
· Enable IP multicast routing on all VTEPs and transport network devices.
· Configure a multicast routing protocol on transport network devices. A VTEP can be both a multicast source and multicast group member. As a best practice, use BIDIR-PIM.
· Enable IGMP on transport network devices that are connected to an IGMP host-enabled VTEP.
Configuring a multicast-mode VXLAN that uses the PIM method
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Enter VXLAN view.
vxlan vxlan-id
4. Assign a multicast group address for flood traffic, and specify a source IP address for multicast VXLAN packets.
group group-address source source-address
By default, a VXLAN uses unicast mode for flood traffic. No multicast group address or source IP address is specified for multicast VXLAN packets.
You must assign all VTEPs in a multicast-mode VXLAN to the same multicast group.
5. Enter interface view.
interface interface-type interface-number
Enable PIM on the loopback interface and all transport-facing interfaces.
6. Enable PIM. Choose one of the following modes:
¡ Enable PIM-SM
pim sm
¡ Enable PIM-DM
pim dm
By default, PIM is disabled on an interface.
Configuring a multicast-mode VXLAN that uses the IGMP host method
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Enter VXLAN view.
vxlan vxlan-id
4. Assign a multicast group address for flood traffic, and specify a source IP address for multicast VXLAN packets.
group group-address source source-address
By default, a VXLAN uses unicast mode for flood traffic. No multicast group address or source IP address is specified for multicast VXLAN packets.
You must assign all VTEPs in a multicast-mode VXLAN to the same multicast group.
5. Enter the view of the transport-facing interface.
interface interface-type interface-number
6. Enable the IGMP host feature.
igmp host enable
By default, the IGMP host feature is disabled on an interface.
The IGMP host feature enables the interface to send IGMP reports in response to IGMP queries before it can receive traffic from the multicast group.
Setting the destination UDP port number of VXLAN packets
1. Enter system view.
system-view
2. Set a destination UDP port for VXLAN packets.
vxlan udp-port port-number
By default, the destination UDP port number is 4789 for VXLAN packets.
You must configure the same destination UDP port number on all VTEPs in a VXLAN.
Configuring VXLAN packet check
About this task
The device can check the UDP checksum and 802.1Q VLAN tags of each received VXLAN packet.
· UDP checksum check—The device always sets the UDP checksum of VXLAN packets to zero. For compatibility with third-party devices, a VXLAN packet can pass the check if its UDP checksum is zero or correct. If its UDP checksum is incorrect, the VXLAN packet fails the check and is dropped.
· VLAN tag check—The device checks the inner Ethernet header of each VXLAN packet for 802.1Q VLAN tags. If the header contains 802.1Q VLAN tags, the device drops the packet.
Restrictions and guidelines
If a remote VTEP uses the Ethernet access mode, its VXLAN packets might contain 802.1Q VLAN tags. To prevent the local VTEP from dropping the VXLAN packets, do not execute the vxlan invalid-vlan-tag discard command on the local VTEP.
The access mode is configurable by using the xconnect vsi command.
Procedure
1. Enter system view.
system-view
2. Enable the VTEP to drop VXLAN packets that fail UDP checksum check.
vxlan invalid-udp-checksum discard
By default, the VTEP does not check the UDP checksum of VXLAN packets.
3. Enable the VTEP to drop VXLAN packets that have 802.1Q VLAN tags in the inner Ethernet header.
vxlan invalid-vlan-tag discard
By default, the VTEP does not check the inner Ethernet header for 802.1Q VLAN tags.
Confining floods to the local site
About this task
By default, the VTEP floods broadcast, unknown unicast, and unknown multicast frames received from the local site to the following interfaces in the frame's VXLAN:
· All site-facing interfaces except for the incoming interface.
· All VXLAN tunnel interfaces.
To confine a kind of flood traffic to the site-facing interfaces, disable flooding for that kind of flood traffic on the VSI bound to the VXLAN. The VSI will not flood the corresponding frames to VXLAN tunnel interfaces.
To exclude a remote MAC address from the flood suppression done by using this feature, enable selective flood for the MAC address. The VTEP will flood the frames destined for the MAC address to remote sites.
Procedure
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Disable flooding for the VSI.
flooding disable { all | { broadcast | unknown-multicast | unknown-unicast } * }
By default, flooding is enabled for a VSI.
4. (Optional.) Enable selective flood for a MAC address.
selective-flooding mac-address mac-address
Enabling ARP flood suppression
Restrictions and guidelines
The aging timer is fixed at 25 minutes for ARP flood suppression entries. If the suppression table is full, the VTEP stops learning new entries. For the VTEP to learn new entries, you must wait for old entries to age out, or use the reset arp suppression vsi command to clear the table.
If the flooding disable command is configured, set the MAC aging timer to a higher value than the aging timer for ARP flood suppression entries on all VTEPs. This setting prevents the traffic blackhole that occurs when a MAC address entry ages out before its ARP flood suppression entry ages out. To set the MAC aging timer, use the mac-address timer command.
When remote ARP learning is disabled for VXLANs, the device does not use ARP flood suppression entries to respond to ARP requests received on VXLAN tunnels.
Procedure
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Enable ARP flood suppression.
arp suppression enable
By default, ARP flood suppression is disabled.
Enabling ND flood suppression
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Enable ND flood suppression.
ipv6 nd suppression enable
By default, ND flood suppression is disabled.
Disabling remote ARP or ND learning for VXLANs
About this task
By default, the device learns ARP or ND information of remote VMs from packets received on VXLAN tunnel interfaces. To conserve resources on the VTEPs in an SDN transport network, you can temporarily disable remote ARP or ND learning when the controller and VTEPs are synchronizing entries. After the entry synchronization is completed, enable remote ARP or ND learning.
Restrictions and guidelines
As a best practice, disable remote ARP or ND learning for VXLANs only when the controller and VTEPs are synchronizing entries.
Procedure
1. Enter system view.
system-view
2. Disable remote ARP learning for VXLANs.
vxlan tunnel arp-learning disable
By default, remote ARP learning is enabled for VXLANs.
3. Disable remote ND learning.
vxlan tunnel nd-learning disable
By default, remote ND learning is enabled for VXLANs.
Enabling VXLAN packet statistics
Enabling packet statistics for a VSI
Restrictions and guidelines
To display the packet statistics for a VSI, use the display l2vpn vsi verbose command in any view.
To clear the packet statistics for a VSI, use the reset l2vpn statistics vsi command in user view.
Procedure
1. Enter system view.
system-view
2. Set the packet statistic collection mode to VSI.
statistic mode vsi
By default, the packet statistic collection mode is VSI.
If you execute the statistic mode command multiple times, the most recent configuration takes effect.
3. Enter VSI view.
vsi vsi-name
4. Enable packet statistics for the VSI.
statistics enable
By default, the packet statistics feature is disabled for all VSIs.
Enabling packet statistics for an AC
Restrictions and guidelines
For the ac statistics enable command to take effect on a Layer 3 interface, you must map the Layer 3 interface to a VSI. When you modify the VSI mapping, the packet statistics of the interface are cleared.
For the statistics enable command to take effect on an Ethernet service instance, you must configure a frame match criterion for the Ethernet service instance and map it to a VSI. When you modify the frame match criterion or VSI mapping, the packet statistics of the instance are cleared.
Enabling packet statistics for a Layer 3 interface
1. Enter system view.
system-view
2. Enter Layer 3 interface view.
interface interface-type interface-number
3. Enable packet statistics for the Layer 3 interface.
ac statistics enable
By default, the packet statistics feature is disabled for Layer 3 interfaces that act as ACs.
Enabling packet statistics for an Ethernet service instance
1. Enter system view.
system-view
2. Set the packet statistic collection mode to AC.
statistic mode ac
By default, the packet statistic collection mode is VSI.
If you execute the statistic mode command multiple times, the most recent configuration takes effect.
3. Enter interface view.
¡ Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 2 aggregate interface view.
interface bridge-aggregation interface-number
4. Enter Ethernet service instance view.
service-instance instance-id
5. Enable packet statistics for the Ethernet service instance.
statistics enable
By default, the packet statistics feature is disabled for all Ethernet service instances.
Setting the VXLAN statistics collection interval
1. Enter system view.
system-view
2. Set the VXLAN statistics collection interval.
l2vpn statistics interval interval
By default, the VXLAN statistics collection interval is 15 minutes.
Testing the reachability of a remote VM
About this task
This feature enables the device to test the reachability of a remote VM by simulating a local VM to send ICMP echo requests. The requests are encapsulated in Layer 2 data frames and then sent to the remote VM in the specified VXLAN. The device determines the reachability of the remote VM based on the response time and the number of received ICMP echo replies.
Procedure
Execute the following command in any view to test the reachability of a remote VM:
emulate-ping vxlan [ -c count | -m interval | -s packet-size | -t time-out ] * vxlan-id vxlan-id source-mac mac-address destination-mac mac-address
Display and maintenance commands for VXLANs
Execute display commands in any view and reset commands in user view.
Task |
Command |
Display ARP flood suppression entries on VSIs. |
display arp suppression vsi [ name vsi-name ] [ slot slot-number ] [ count ] |
Display the length of the source UDP port number in VXLAN packets. |
display hardware-resource [ source-udp-port ] |
Display the VXLAN hardware resource mode. |
display hardware-resource [ vxlan ] |
Display L2VPN information for Layer 3 interfaces that are mapped to VSIs. |
display l2vpn interface [ vsi vsi-name | interface-type interface-number ] [ verbose ] |
Display L2VPN MAC address entries. |
display l2vpn mac-address [ interface interface-type interface-number [ service-instance instance-id ] | vsi vsi-name [ ac ] ] [ dynamic ] [ count ] |
Display information about Ethernet service instances. |
display l2vpn service-instance [ interface interface-type interface-number [ service-instance instance-id ] ] [ verbose ] |
Display information about VSIs. |
display l2vpn vsi [ name vsi-name | evpn-vpls | vpls | vxlan ] [ count | verbose ] |
Display information about the multicast groups that contain IGMP host-enabled interfaces. |
display igmp host group [ group-address | interface interface-type interface-number ] [ verbose ] |
Display information about tunnel interfaces. |
display interface [ tunnel [ number ] ] [ brief [ description | down ] ] |
Display ND flood suppression entries. |
display ipv6 nd suppression vsi [ name vsi-name ] [ slot slot-number ] [ count ] |
Display the current packet statistic collection mode. |
display statistic mode |
Display VXLAN tunnel information for VXLANs. |
display vxlan tunnel [ vxlan vxlan-id [ tunnel tunnel-number ] ] |
Clear ARP flood suppression entries on VSIs. |
reset arp suppression vsi [ name vsi-name ] |
Clear ND flood suppression entries on VSIs. |
reset ipv6 nd suppression vsi [ name vsi-name ] |
Clear dynamic MAC address entries on VSIs. |
reset l2vpn mac-address [ vsi vsi-name ] |
Clear packet statistics on VXLAN tunnel interfaces. |
reset l2vpn statistics tunnel [ vsi vsi-name ] |
Clear packet statistics on VSIs. |
reset l2vpn statistics vsi [ name vsi-name ] |
Clear packet statistics on ACs. |
reset l2vpn statistics ac [ interface interface-type interface-number [ service-instance instance-id ] ] |
|
NOTE: For more information about the display interface tunnel command, see tunneling commands in Layer 3—IP Services Command Reference. |
VXLAN configuration examples
Example: Configuring a unicast-mode VXLAN
Network configuration
As shown in Figure 10:
· Configure VXLAN 10 as a unicast-mode VXLAN on Router A, Router B, and Router C to provide Layer 2 connectivity for the VMs across the network sites.
· Manually establish VXLAN tunnels and assign the tunnels to VXLAN 10.
· Enable remote-MAC address learning.
Procedure
1. Configure IP addresses and unicast routing settings:
# Assign IP addresses to interfaces, as shown in Figure 10. (Details not shown.)
# Configure OSPF on all transport network routers (Routers A through D). (Details not shown.)
2. Configure Router A:
# Enable L2VPN.
<RouterA> system-view
[RouterA] l2vpn enable
# Enable Layer 2 forwarding for VXLANs.
[RouterA] undo vxlan ip-forwarding
# Create VSI vpna and VXLAN 10.
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 10
[RouterA-vsi-vpna-vxlan-10] quit
[RouterA-vsi-vpna] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router B and Router C.
[RouterA] interface loopback 0
[RouterA-Loopback0] ip address 1.1.1.1 255.255.255.255
[RouterA-Loopback0] quit
# Create a VXLAN tunnel to Router B. The tunnel interface name is Tunnel 1.
[RouterA] interface tunnel 1 mode vxlan
[RouterA-Tunnel1] source 1.1.1.1
[RouterA-Tunnel1] destination 2.2.2.2
[RouterA-Tunnel1] quit
# Create a VXLAN tunnel to Router C. The tunnel interface name is Tunnel 2.
[RouterA] interface tunnel 2 mode vxlan
[RouterA-Tunnel2] source 1.1.1.1
[RouterA-Tunnel2] destination 3.3.3.3
[RouterA-Tunnel2] quit
# Assign Tunnel 1 and Tunnel 2 to VXLAN 10.
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 10
[RouterA-vsi-vpna-vxlan-10] tunnel 1
[RouterA-vsi-vpna-vxlan-10] tunnel 2
[RouterA-vsi-vpna-vxlan-10] quit
[RouterA-vsi-vpna] quit
# Map HundredGigE 1/0/1 to VSI vpna.
[RouterA] interface hundredgige 1/0/1
[RouterA-HundredGigE1/0/1] xconnect vsi vpna
[RouterA-HundredGigE1/0/1] quit
3. Configure Router B:
# Enable L2VPN.
<RouterB> system-view
[RouterB] l2vpn enable
# Enable Layer 2 forwarding for VXLANs.
[RouterB] undo vxlan ip-forwarding
# Create VSI vpna and VXLAN 10.
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 10
[RouterB-vsi-vpna-vxlan-10] quit
[RouterB-vsi-vpna] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router A and Router C.
[RouterB] interface loopback 0
[RouterB-Loopback0] ip address 2.2.2.2 255.255.255.255
[RouterB-Loopback0] quit
# Create a VXLAN tunnel to Router A. The tunnel interface name is Tunnel 2.
[RouterB] interface tunnel 2 mode vxlan
[RouterB-Tunnel2] source 2.2.2.2
[RouterB-Tunnel2] destination 1.1.1.1
[RouterB-Tunnel2] quit
# Create a VXLAN tunnel to Router C. The tunnel interface name is Tunnel 3.
[RouterB] interface tunnel 3 mode vxlan
[RouterB-Tunnel3] source 2.2.2.2
[RouterB-Tunnel3] destination 3.3.3.3
[RouterB-Tunnel3] quit
# Assign Tunnel 2 and Tunnel 3 to VXLAN 10.
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 10
[RouterB-vsi-vpna-vxlan-10] tunnel 2
[RouterB-vsi-vpna-vxlan-10] tunnel 3
[RouterB-vsi-vpna-vxlan-10] quit
[RouterB-vsi-vpna] quit
# Map HundredGigE 1/0/1 to VSI vpna.
[RouterB] interface hundredgige 1/0/1
[RouterB-HundredGigE1/0/1] xconnect vsi vpna
[RouterB-HundredGigE1/0/1] quit
4. Configure Router C:
# Enable L2VPN.
<RouterC> system-view
[RouterC] l2vpn enable
# Enable Layer 2 forwarding for VXLANs.
[RouterC] undo vxlan ip-forwarding
# Create VSI vpna and VXLAN 10.
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 10
[RouterC-vsi-vpna-vxlan-10] quit
[RouterC-vsi-vpna] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router A and Router B.
[RouterC] interface loopback 0
[RouterC-Loopback0] ip address 3.3.3.3 255.255.255.255
[RouterC-Loopback0] quit
# Create a VXLAN tunnel to Router A. The tunnel interface name is Tunnel 1.
[RouterC] interface tunnel 1 mode vxlan
[RouterC-Tunnel1] source 3.3.3.3
[RouterC-Tunnel1] destination 1.1.1.1
[RouterC-Tunnel1] quit
# Create a VXLAN tunnel to Router B. The tunnel interface name is Tunnel 3.
[RouterC] interface tunnel 3 mode vxlan
[RouterC-Tunnel3] source 3.3.3.3
[RouterC-Tunnel3] destination 2.2.2.2
[RouterC-Tunnel3] quit
# Assign Tunnel 1 and Tunnel 3 to VXLAN 10.
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 10
[RouterC-vsi-vpna-vxlan-10] tunnel 1
[RouterC-vsi-vpna-vxlan-10] tunnel 3
[RouterC-vsi-vpna-vxlan-10] quit
[RouterC-vsi-vpna] quit
# Map HundredGigE 1/0/1 to VSI vpna.
[RouterC] interface hundredgige 1/0/1
[RouterC-HundredGigE1/0/1] xconnect vsi vpna
[RouterC-HundredGigE1/0/1] quit
Verifying the configuration
1. Verify the VXLAN settings on the VTEPs. This example uses Router A.
# Verify that the VXLAN tunnel interfaces on the VTEP are up.
[RouterA] display interface tunnel 1
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 1.1.1.1, destination 2.2.2.2
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
# Verify that the VXLAN tunnels have been assigned to the VXLAN.
[RouterA] display l2vpn vsi verbose
VSI Name: vpna
VSI Index : 0
VSI State : Up
MTU : 1500
Bandwidth : Unlimited
Broadcast Restrain : 4294967295 kbps
Multicast Restrain : 4294967295 kbps
Unknown Unicast Restrain: 4294967295 kbps
MAC Learning : Enabled
MAC Table Limit : -
MAC Learning rate : -
Local MAC aging time : 300 sec
Remote MAC aging time : 300 sec
Drop Unknown : -
PW Redundancy Mode : Slave
Flooding : Enabled
Statistics : Disabled
VXLAN ID : 10
Tunnel Statistics : Disabled
Tunnels:
Tunnel Name Link ID State Type Flood Proxy
Tunnel1 0x5000001 Up Manual Disabled
Tunnel2 0x5000002 Up Manual Disabled
ACs:
AC Link ID State
HGE1/0/1 0 Up
# Verify that the VTEP has learned the MAC addresses of remote VMs.
<RouterA> display l2vpn mac-address
MAC Address State VSI Name Link ID/Name Aging
cc3e-5f9c-6cdb Dynamic vpna Tunnel1 Aging
cc3e-5f9c-23dc Dynamic vpna Tunnel2 Aging
--- 2 mac address(es) found ---
2. Verify that VM 1, VM 2, and VM 3 can ping each other. (Details not shown.)
Example: Configuring a multicast-mode VXLAN
Network configuration
As shown in Figure 11:
· Configure VXLAN 10 as a multicast-mode VXLAN on Router A, Router B, and Router C to provide Layer 2 connectivity for the VMs across the network sites.
· Manually establish VXLAN tunnels and assign the tunnels to VXLAN 10.
· Enable remote-MAC address learning.
Table 1 IP address assignment
Device |
Interface |
IP address |
Device |
Interface |
IP address |
Router A: |
|
|
Router C: |
|
|
|
HundredGigE 1/0/2 |
11.1.1.1/24 |
|
HundredGigE 1/0/2 |
13.1.1.3/24 |
Router D: |
|
|
Router E: |
|
|
|
HundredGigE 1/0/1 |
11.1.1.4/24 |
|
HundredGigE 1/0/1 |
13.1.1.5/24 |
|
HundredGigE 1/0/2 |
21.1.1.4/24 |
|
HundredGigE 1/0/2 |
23.1.1.5/24 |
Router F: |
|
|
Router G: |
|
|
|
HundredGigE 1/0/1 |
21.1.1.6/24 |
|
HundredGigE 1/0/1 |
22.1.1.7/24 |
|
HundredGigE 1/0/2 |
23.1.1.6/24 |
|
HundredGigE 1/0/2 |
12.1.1.7/24 |
|
HundredGigE 1/0/3 |
22.1.1.6/24 |
Router B: |
|
|
|
Loop 0 |
6.6.6.6/32 |
|
HundredGigE 1/0/2 |
12.1.1.2/24 |
Procedure
IMPORTANT: By default, interfaces on the device are disabled (in ADM or Administratively Down state). To have an interface operate, you must use the undo shutdown command to enable that interface. |
1. Configure IP addresses and unicast routing settings:
# Assign IP addresses to interfaces, as shown in Figure 11. (Details not shown.)
# Configure OSPF on all transport network routers (Routers A through G). (Details not shown.)
2. Configure Router A:
# Enable L2VPN.
<RouterA> system-view
[RouterA] l2vpn enable
# Enable Layer 2 forwarding for VXLANs.
[RouterA] undo vxlan ip-forwarding
# Enable IP multicast routing.
[RouterA] multicast routing
[RouterA-mrib] quit
# Create VSI vpna and VXLAN 10.
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 10
[RouterA-vsi-vpna-vxlan-10] quit
[RouterA-vsi-vpna] quit
# Assign an IP address to HundredGigE 1/0/2, and enable the IGMP host feature on the interface. This interface's IP address will be the source IP address of VXLAN packets sent by the VTEP.
[RouterA] interface hundredgige 1/0/2
[RouterA-HundredGigE1/0/2] ip address 11.1.1.1 24
[RouterA-HundredGigE1/0/2] igmp host enable
[RouterA-HundredGigE1/0/2] quit
# Create a VXLAN tunnel to Router B. The tunnel interface name is Tunnel 1.
[RouterA] interface tunnel 1 mode vxlan
[RouterA-Tunnel1] source 11.1.1.1
[RouterA-Tunnel1] destination 12.1.1.2
[RouterA-Tunnel1] quit
# Create a VXLAN tunnel to Router C. The tunnel interface name is Tunnel 2.
[RouterA] interface tunnel 2 mode vxlan
[RouterA-Tunnel2] source 11.1.1.1
[RouterA-Tunnel2] destination 13.1.1.3
[RouterA-Tunnel2] quit
# Assign Tunnel 1 and Tunnel 2 to VXLAN 10.
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 10
[RouterA-vsi-vpna-vxlan-10] tunnel 1
[RouterA-vsi-vpna-vxlan-10] tunnel 2
# Configure the multicast group address and source IP address for multicast VXLAN packets.
[RouterA-vsi-vpna-vxlan-10] group 225.1.1.1 source 11.1.1.1
[RouterA-vsi-vpna-vxlan-10] quit
[RouterA-vsi-vpna] quit
# Map HundredGigE 1/0/1 to VSI vpna.
[RouterA] interface hundredgige 1/0/1
[RouterA-HundredGigE1/0/1] xconnect vsi vpna
[RouterA-HundredGigE1/0/1] quit
3. Configure Router B:
# Enable L2VPN.
<RouterB> system-view
[RouterB] l2vpn enable
# Enable Layer 2 forwarding for VXLANs.
[RouterB] undo vxlan ip-forwarding
# Enable IP multicast routing.
[RouterB] multicast routing
[RouterB-mrib] quit
# Create VSI vpna and VXLAN 10.
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 10
[RouterB-vsi-vpna-vxlan-10] quit
[RouterB-vsi-vpna] quit
# Assign an IP address to HundredGigE 1/0/2, and enable the IGMP host feature on the interface. This interface's IP address will be the source IP address of VXLAN packets sent by the VTEP.
[RouterB] interface hundredgige 1/0/2
[RouterB-HundredGigE1/0/2] ip address 12.1.1.2 24
[RouterB-HundredGigE1/0/2] igmp host enable
[RouterB-HundredGigE1/0/2] quit
# Create a VXLAN tunnel to Router A. The tunnel interface name is Tunnel 2.
[RouterB] interface tunnel 2 mode vxlan
[RouterB-Tunnel2] source 12.1.1.2
[RouterB-Tunnel2] destination 11.1.1.1
[RouterB-Tunnel2] quit
# Create a VXLAN tunnel to Router C. The tunnel interface name is Tunnel 3.
[RouterB] interface tunnel 3 mode vxlan
[RouterB-Tunnel3] source 12.1.1.2
[RouterB-Tunnel3] destination 13.1.1.3
[RouterB-Tunnel3] quit
# Assign Tunnel 2 and Tunnel 3 to VXLAN 10.
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 10
[RouterB-vsi-vpna-vxlan-10] tunnel 2
[RouterB-vsi-vpna-vxlan-10] tunnel 3
# Configure the VXLAN multicast group address and the source IP address for VXLAN packets.
[RouterB-vsi-vpna-vxlan-10] group 225.1.1.1 source 12.1.1.2
[RouterB-vsi-vpna-vxlan-10] quit
[RouterB-vsi-vpna] quit
# Map HundredGigE 1/0/1 to VSI vpna.
[RouterB] interface hundredgige 1/0/1
[RouterB-HundredGigE1/0/1] xconnect vsi vpna
[RouterB-HundredGigE1/0/1] quit
4. Configure Router C:
# Enable L2VPN.
<RouterC> system-view
[RouterC] l2vpn enable
# Enable Layer 2 forwarding for VXLANs.
[RouterC] undo vxlan ip-forwarding
# Enable IP multicast routing.
[RouterC] multicast routing
[RouterC-mrib] quit
# Create VSI vpna and VXLAN 10.
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 10
[RouterC-vsi-vpna-vxlan-10] quit
[RouterC-vsi-vpna] quit
# Assign an IP address to HundredGigE 1/0/2, and enable the IGMP host feature on the interface. This interface's IP address will be the source IP address of VXLAN packets sent by the VTEP.
[RouterC] interface hundredgige 1/0/2
[RouterC-HundredGigE1/0/2] ip address 13.1.1.3 24
[RouterC-HundredGigE1/0/2] igmp host enable
[RouterC-HundredGigE1/0/2] quit
# Create a VXLAN tunnel to Router A. The tunnel interface name is Tunnel 1.
[RouterC] interface tunnel 1 mode vxlan
[RouterC-Tunnel1] source 13.1.1.3
[RouterC-Tunnel1] destination 11.1.1.1
[RouterC-Tunnel1] quit
# Create a VXLAN tunnel to Router B. The tunnel interface name is Tunnel 3.
[RouterC] interface tunnel 3 mode vxlan
[RouterC-Tunnel3] source 13.1.1.3
[RouterC-Tunnel3] destination 12.1.1.2
[RouterC-Tunnel3] quit
# Assign Tunnel 1 and Tunnel 3 to VXLAN 10.
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 10
[RouterC-vsi-vpna-vxlan-10] tunnel 1
[RouterC-vsi-vpna-vxlan-10] tunnel 3
# Configure the multicast group address and source IP address for VXLAN multicast packets.
[RouterC-vsi-vpna-vxlan-10] group 225.1.1.1 source 13.1.1.3
[RouterC-vsi-vpna-vxlan-10] quit
[RouterC-vsi-vpna] quit
# Map HundredGigE 1/0/1 to VSI vpna.
[RouterC] interface hundredgige 1/0/1
[RouterC-HundredGigE1/0/1] xconnect vsi vpna
[RouterC-HundredGigE1/0/1] quit
5. Configure Router D:
# Enable IP multicast routing.
<RouterD> system-view
[RouterD] multicast routing
[RouterD-mrib] quit
# Enable IGMP and PIM-SM on HundredGigE 1/0/1.
[RouterD] interface hundredgige 1/0/1
[RouterD-HundredGigE1/0/1] igmp enable
[RouterD-HundredGigE1/0/1] pim sm
[RouterD-HundredGigE1/0/1] quit
# Enable PIM-SM on HundredGigE 1/0/2.
[RouterD] interface hundredgige 1/0/2
[RouterD-HundredGigE1/0/2] pim sm
[RouterD-HundredGigE1/0/2] quit
# Enable BIDIR-PIM.
[RouterD] pim
[RouterD-pim] bidir-pim enable
[RouterD-pim] quit
6. Configure Router E:
# Enable IP multicast routing.
<RouterE> system-view
[RouterE] multicast routing
[RouterE-mrib] quit
# Enable IGMP and PIM-SM on HundredGigE 1/0/1.
[RouterE] interface hundredgige 1/0/1
[RouterE-HundredGigE1/0/1] igmp enable
[RouterE-HundredGigE1/0/1] pim sm
[RouterE-HundredGigE1/0/1] quit
# Enable PIM-SM on HundredGigE 1/0/2.
[RouterE] interface hundredgige 1/0/2
[RouterE-HundredGigE1/0/2] pim sm
[RouterE-HundredGigE1/0/2] quit
# Enable BIDIR-PIM.
[RouterE] pim
[RouterE-pim] bidir-pim enable
[RouterE-pim] quit
7. Configure Router F:
# Enable IP multicast routing.
<RouterF> system-view
[RouterF] multicast routing
[RouterF-mrib] quit
# Enable PIM-SM on HundredGigE 1/0/1, HundredGigE 1/0/2, HundredGigE 1/0/3, and Loopback 0.
[RouterF] interface hundredgige 1/0/1
[RouterF-HundredGigE1/0/1] pim sm
[RouterF-HundredGigE1/0/1] quit
[RouterF] interface hundredgige 1/0/2
[RouterF-HundredGigE1/0/2] pim sm
[RouterF-HundredGigE1/0/2] quit
[RouterF] interface hundredgige 1/0/3
[RouterF-HundredGigE1/0/3] pim sm
[RouterF-HundredGigE1/0/3] quit
[RouterF] interface loopback 0
[RouterF-LoopBack0] pim sm
[RouterF-LoopBack0] quit
# Enable BIDIR-PIM.
[RouterF] pim
[RouterF-pim] bidir-pim enable
# Configure HundredGigE 1/0/3 as a candidate-BSR, and configure Loopback 0 as a candidate-RP for BIDIR-PIM.
[RouterF-pim] c-bsr 22.1.1.6
[RouterF-pim] c-rp 6.6.6.6 bidir
[RouterF-pim] quit
8. Configure Router G:
# Enable IP multicast routing.
<RouterG> system-view
[RouterG] multicast routing
[RouterG-mrib] quit
# Enable IGMP and PIM-SM on HundredGigE 1/0/2.
[RouterG] interface hundredgige 1/0/2
[RouterG-HundredGigE1/0/2] igmp enable
[RouterG-HundredGigE1/0/2] pim sm
[RouterG-HundredGigE1/0/2] quit
# Enable PIM-SM on HundredGigE 1/0/1.
[RouterG] interface hundredgige 1/0/1
[RouterG-HundredGigE1/0/1] pim sm
[RouterG-HundredGigE1/0/1] quit
# Enable BIDIR-PIM.
[RouterG] pim
[RouterG-pim] bidir-pim enable
[RouterG-pim] quit
Verifying the configuration
1. Verify the VXLAN settings on the VTEPs. This example uses Router A.
# Verify that the VXLAN tunnel interfaces on the VTEP are up.
[RouterA] display interface tunnel 1
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 11.1.1.1, destination 12.1.1.2
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
# Verify that the VXLAN tunnels have been assigned to the VXLAN.
[RouterA] display l2vpn vsi verbose
VSI Name: vpna
VSI Index : 0
VSI State : Up
MTU : 1500
Bandwidth : Unlimited
Broadcast Restrain : 4294967295 kbps
Multicast Restrain : 4294967295 kbps
Unknown Unicast Restrain: 4294967295 kbps
MAC Learning : Enabled
MAC Table Limit : -
MAC Learning rate : -
Local MAC aging time : 300 sec
Remote MAC aging time : 300 sec
Drop Unknown : -
PW Redundancy Mode : Slave
Flooding : Enabled
Statistics : Disabled
VXLAN ID : 10
Tunnel Statistics : Disabled
Tunnels:
Tunnel Name Link ID State Type Flood Proxy
Tunnel1 0x5000001 Up Manual Disabled
Tunnel2 0x5000002 Up Manual Disabled
MTunnel0 0x6000000 Up Auto Disabled
ACs:
AC Link ID State
HGE1/0/1 0 Up
# Verify that the VTEP has learned the MAC addresses of remote VMs.
<RouterA> display l2vpn mac-address
MAC Address State VSI Name Link ID/Name Aging
cc3e-5f9c-6cdb Dynamic vpna Tunnel1 Aging
cc3e-5f9c-23dc Dynamic vpna Tunnel2 Aging
--- 2 mac address(es) found ---
# Verify that the VTEP has joined the VXLAN multicast group on HundredGigE 1/0/2.
<RouterA> display igmp host group
IGMP host groups in total: 1
HundredGigE1/0/2(11.1.1.1):
IGMP host groups in total: 1
Group address Member state Expires
225.1.1.1 Idle Off
2. Verify that VM 1, VM 2, and VM 3 can ping each other. (Details not shown.)
Configuring VXLAN IP gateways
About VXLAN IP gateways
The following are available IP gateway placement designs for VXLANs:
· VXLAN IP gateways separated from VTEPs—Use a VXLAN-unaware device as a gateway to the external network for VXLANs. On the gateway, you do not need to configure VXLAN settings.
· VXLAN IP gateways collocated with VTEPs—Include the following placement designs:
¡ Centralized VXLAN IP gateway deployment—Use one VTEP to provide Layer 3 forwarding for VXLANs. Typically, the gateway-collocated VTEP connects to other VTEPs and the external network. To use this design, make sure the IP gateway has sufficient bandwidth and processing capability. Centralized VXLAN IP gateways provide services only for IPv4 networks.
¡ Centralized VXLAN gateway group deployment—Use one VTEP group that contains redundant centralized VXLAN IP gateways to provide reliable gateway services for VXLANs.
¡ Distributed VXLAN IP gateway deployment—Deploy one VXLAN IP gateway on each VTEP to provide Layer 3 forwarding for VXLANs at their respective sites. This design distributes the Layer 3 traffic load across VTEPs. However, its configuration is more complex than the centralized VXLAN IP gateway design. Distributed gateways can provide services for both IPv4 and IPv6 networks.
In a collocation design, the VTEPs use virtual Layer 3 VSI interfaces as gateway interfaces to provide services for VXLANs.
|
NOTE: The following information describes traffic forwarding of VXLAN IP gateways in IPv4 networks. Traffic forwarding of VXLAN IP gateways in IPv6 networks is similar to that in IPv4 networks. |
VXLAN IP gateways separated from VTEPs
As shown in Figure 12, an independent VXLAN IP gateway connects a Layer 3 network to a VTEP. VMs send Layer 3 traffic in Layer 2 frames to the gateway through VXLAN tunnels. When the tunneled VXLAN packets arrive, the VTEP terminates the VXLANs and forwards the inner frames to the gateway. In this gateway placement design, the VTEP does not perform Layer 3 forwarding for VXLANs.
Figure 12 VXLAN IP gateway separated from VTEPs
Centralized VXLAN IP gateway deployment
As shown in Figure 13, a VTEP acts as a gateway for VMs in the VXLANs. The VTEP both terminates the VXLANs and performs Layer 3 forwarding for the VMs.
Figure 13 Centralized VXLAN IP gateway placement design
As shown in Figure 14, the network uses the following process to forward Layer 3 traffic from VM 10.1.1.11 to the Layer 3 network:
1. The VM sends an ARP request to obtain the MAC address of the gateway (VTEP 3) at 10.1.1.1.
2. VTEP 1 floods the ARP request to all remote VTEPs.
3. VTEP 3 de-encapsulates the ARP request, creates an ARP entry for the VM, and sends an ARP reply to the VM.
4. VTEP 1 forwards the ARP reply to the VM.
5. The VM learns the MAC address of the gateway, and sends the Layer 3 traffic to the gateway.
6. VTEP 3 removes the VXLAN encapsulation and inner Ethernet header for the traffic, and forwards the traffic to the destination node.
Inter-VXLAN forwarding is the same as this process except for the last step. At the last step of inter-VLAN forwarding, the gateway replaces the source-VXLAN encapsulation with the destination-VXLAN encapsulation, and then forwards the traffic.
Figure 14 Example of centralized VXLAN IP gateway deployment
Centralized VXLAN gateway group deployment
As shown in Figure 15, a VTEP group uses redundant centralized VXLAN IP gateways to provide reliable gateway services for VMs in the VXLANs. All member VTEPs in the group participate in Layer 3 forwarding and load share traffic between the Layer 3 network and the VXLANs. This design distributes processing among multiple VTEPs and prevents single points of failure.
Figure 15 Example of centralized VXLAN IP gateway group deployment
The VTEP group is a virtual gateway that provides services at a group IP address. Access layer VTEPs set up VXLAN tunnels to the group IP address for data traffic forwarding. Each VTEP in the group automatically uses its member IP address to set up tunnels to the other member VTEPs and access layer VTEPs. The tunnels are used to transmit protocol packets and synchronize ARP entries.
Distributed VXLAN IP gateway deployment
About this task
As shown in Figure 16, each site's VTEP acts as a gateway to perform Layer 3 forwarding for the VXLANs of the local site. A VTEP acts as a border gateway to the Layer 3 network for the VXLANs. The VTEPs perform Layer 3 forwarding based on ARP or ND entries. The ARP or ND entries can be dynamically learned.
IMPORTANT: The site-connected gateways are called distributed gateways. On the distributed gateways, you must enable local proxy ARP (for IPv4 sites) or local ND proxy (for IPv6 sites). |
Figure 16 Distributed VXLAN IP gateway placement design
Figure 17 shows an example of distributed VXLAN IP gateway deployment. Create VSI interfaces on each distributed VXLAN IP gateway and the border gateway as gateway interfaces. Assign the same IP address to the same VSI interface on the distributed VXLAN IP gateways. Enable one of the following features on a distributed VXLAN IP gateway:
· ARP or ND flood suppression. The gateway performs Layer 2 forwarding based on MAC address entries and performs Layer 3 forwarding based on ARP or ND entries.
· Local proxy ARP or local ND proxy. The gateway performs Layer 3 forwarding based on ARP or ND entries. The following sections use distributed VXLAN IP gateways enabled with the local proxy ARP or local ND proxy feature to describe the forwarding processes for intra-VXLAN traffic, inter-VXLAN traffic, and traffic from a VXLAN to an external network.
A distributed VXLAN IP gateway can generate ARP or ND entries by a variety of methods. The following sections use dynamically learned ARP or ND entries to describe the forwarding processes.
Figure 17 Example of distributed VXLAN IP gateway deployment
Intra-VXLAN traffic forwarding between sites
As shown in Figure 17, the network uses the following process to forward traffic in a VXLAN between sites (for example, from VM 1 to VM 4 in VXLAN 10):
1. VM 1 sends an ARP request to obtain the MAC address of VM 4.
2. GW 1 performs the following operations:
i. Creates an ARP entry for VM 1 and replies with the MAC address of VSI-interface 10 (the gateway interface for VXLAN 10).
j. Replaces the sender MAC address of the ARP request with the MAC address of VSI-interface 10, and then floods the request to all sites in VXLAN 10.
3. VM 1 creates an ARP entry for VM 4. The MAC address in the entry is the MAC address of VSI-interface 10 on GW 1.
4. GW 2 (the VTEP for VM 4) performs the following operations:
k. De-encapsulates the ARP request and creates an ARP entry for VM 1. The entry contains VM 1's IP address (10.1.1.11), the MAC address of VSI-interface 10 on GW 1, and the incoming tunnel interface.
l. Replaces the sender MAC address of the request with the MAC address of VSI-interface 10 on GW 2, and then floods the request to the local site in VXLAN 10.
5. VM 4 creates an ARP entry for VM 1, and then sends a reply to GW 2. The MAC address in the ARP entry is the MAC address of VSI-interface 10 on GW 2.
6. GW 2 performs the following operations:
m. Creates an ARP entry for VM 4.
n. Replaces the sender MAC address of the reply with the MAC address of VSI-interface 10 on GW 2, and sends the reply to GW 1.
7. GW 1 de-encapsulates the ARP reply and creates an ARP entry for VM 4. The entry contains VM 4's IP address (10.1.1.12), the MAC address of VSI-interface 10 on GW 2, and the incoming tunnel interface.
8. For subsequent traffic between VM 1 and VM 4, GW 1 and GW 2 use their respective ARP tables to make the forwarding decision.
Inter-VXLAN traffic forwarding between sites
As shown in Figure 18, the network uses the following process to forward traffic between VXLANs (for example, from VM 1 in VXLAN 10 to VM 5 in VXLAN 20):
1. VM 1 sends an ARP request to obtain the MAC address of the gateway at 10.1.1.1.
2. GW 1 creates an ARP entry for VM 1 and replies with the MAC address of VSI-interface 10 (the gateway interface for VXLAN 10) so VM 1 will send the packets destined for VM 5 to GW 1.
3. GW 1 sends an ARP request to the local and remote sites in VXLAN 10. In the ARP request, the sender IP address is 10.1.1.11, and the sender MAC address is the MAC address of VSI-interface 10 on GW 1.
4. GW 2 performs the following operations:
o. De-encapsulates the ARP request and creates an ARP entry for VM 1. The entry contains IP address 10.1.1.11 and MAC address of VSI-interface 10 on GW 1, and the incoming tunnel interface.
p. Replaces the sender MAC address of the request with the MAC address of VSI-interface 10 on GW 2, and then floods the request to the local site in VXLAN 10.
q. Sends an ARP reply to GW 1. The reply contains IP address 10.1.1.1 and MAC address of VSI-interface 10 on GW 2).
5. When sending an ARP request in VXLAN 10, GW 1 also sends an ARP request to the local and remote sites in VXLAN 20 to obtain the MAC address of VM 5. In the ARP request, the sender IP address is 20.1.1.1, and the sender MAC address is the MAC address of VSI-interface 20 on GW 1.
6. GW 2 de-encapsulates the ARP request of VXLAN 20, replaces the sender MAC address of the request with the MAC address of VSI-interface 20 on GW 2, and then floods the request to the local site in VXLAN 20.
7. VM 5 creates an ARP entry for GW 2, and then sends a reply to GW 2. The entry contains IP address 20.1.1.1 and MAC address of VSI-interface 20 on GW 2.
8. GW 2 performs the following operations:
r. Creates an ARP entry for VM 5.
s. Sends a gratuitous ARP packet to the local and remote sites. In the packet, the sender IP address is 20.1.1.12, and the sender MAC address is the MAC address of VSI-interface 20 on GW 2.
9. GW 1 de-encapsulates the gratuitous ARP packet and creates an ARP entry for VM 5. The entry contains VM 5's IP address 20.1.1.12, the MAC address of VSI-interface 20 on GW 2, and the incoming tunnel interface.
10. For subsequent traffic between VM 1 and VM 5, GW 1 and GW 2 use their respective ARP tables to make the forwarding decision.
Figure 18 Inter-VXLAN traffic forwarding between sites
VXLAN-to-external network traffic forwarding
As shown in Figure 17, the network uses the following process to forward traffic from a VXLAN to the Layer 3 network (for example, from VM 1 to the host at 50.1.1.1):
1. VM 1 sends an ARP request to obtain the MAC address of the gateway at 10.1.1.1.
2. GW 1 creates an ARP entry for VM 1 and replies with the MAC address of VSI-interface 10 (the gateway interface for VXLAN 10).
3. VM 1 sends a packet destined for the host to GW 1.
4. GW 1 performs the following operations:
t. Searches the IP routing policies or routing table for the next hop. In this example, the next hop for the packet is 10.1.1.2 (the border gateway).
u. Floods an ARP request to the local and remote sites in VXLAN 10 to obtain the MAC address of 10.1.1.2.
5. The border gateway de-encapsulates the ARP request, creates an ARP entry for GW 1, and tunnels a reply to GW 1.
6. GW 1 de-encapsulates the ARP reply and creates an ARP entry for 10.1.1.2.
7. GW 1 sends the packet destined for the host to the border gateway.
8. The border gateway de-encapsulates the packet and forwards it to the host.
Restrictions and guidelines: VXLAN IP gateway configuration
Do not configure both centralized VXLAN IP gateway settings and centralized VXLAN IP gateway group settings on a device.
As a best practice to avoid forwarding failure, set a large MTU on the traffic outgoing interfaces for VXLAN tunnels on VXLAN IP gateways.
Prerequisites for VXLAN IP gateway configuration
Before you configure a centralized or distributed VXLAN IP gateway, you must perform the following tasks on VTEPs:
· Enable Layer 3 forwarding for VXLANs.
· Create VSIs and VXLANs.
· Configure VXLAN tunnels and assign them to VXLANs.
· Configure a service loopback group of the VSI gateway type.
v. Execute the service-loopback group type vsi-gateway command in system view to create a service loopback group of the VSI gateway type.
w. Use the port service-loopback group command to assign any Layer 2 Ethernet interface to the service loopback group.
A VTEP cannot perform Layer 3 forwarding after removing VXLAN encapsulation for packets when the VTEP acts as a VXLAN IP gateway. For the VTEP to forward the packets at Layer 3, you must create a service loopback group of the VSI gateway type to loop back the packets. For more information about service loopback group configuration, see Layer 2—LAN Switching Configuration Guide.
Configuring a centralized VXLAN IP gateway
Restrictions and guidelines
Do not execute the local-proxy-arp enable command on a centralized VXLAN IP gateway.
Procedure
1. Enter system view.
system-view
2. Create a VSI interface and enter VSI interface view.
interface vsi-interface vsi-interface-id
3. Assign an IP address to the VSI interface.
IPv4:
ip address ipv4-address { mask | mask-length }
IPv6:
For information about assigning an IPv6 address to an interface, see IPv6 basics in Layer 3—IP Services Configuration Guide.
By default, no IP address is assigned to a VSI interface.
4. Return to system view.
quit
5. Enter VSI view.
vsi vsi-name
6. Specify a gateway interface for the VSI.
gateway vsi-interface vsi-interface-id
By default, no gateway interface is specified for a VSI.
Configuring a centralized VXLAN IP gateway group
Configuring a VTEP group
Restrictions and guidelines
Make sure the member VTEPs use the same VXLAN settings.
Procedure
1. Enter system view.
system-view
2. Create a VSI interface and enter VSI interface view.
interface vsi-interface vsi-interface-id
This interface will be used as the gateway interface for the VSI.
3. Assign an IP address to the VSI interface.
IPv4:
ip address ipv4-address { mask | mask-length }
IPv6:
For information about assigning an IPv6 address to an interface, see IPv6 basics in Layer 3—IP Services Configuration Guide.
By default, no IP address is assigned to a VSI interface.
You must assign the same IP address to the VSI interface on each VTEP in the VTEP group.
4. Assign a MAC address to the VSI interface.
mac-address mac-address
By default, VSI interfaces use the MAC address of VLAN-interface 4094.
You must assign the same MAC address to the VSI interface on each VTEP in the VTEP group.
5. Return to system view.
quit
6. Enter VSI view.
vsi vsi-name
7. Specify the VSI interface as the gateway interface for the VSI.
gateway vsi-interface vsi-interface-id
By default, no gateway interface is specified for a VSI.
8. Return to system view.
quit
9. Assign the local VTEP to a VTEP group and specify a member IP address for the VTEP.
vtep group group-ip member local member-ip
By default, a VTEP is not assigned to any VTEP group.
The specified member IP address must already exist on the local VTEP and be unique in the VTEP group. You must configure a routing protocol to advertise the IP address to the transport network.
10. Specify the member IP address of all the other VTEPs in the VTEP group.
vtep group group-ip member remote member-ip&<1-8>
By default, the list of remote VTEPs is not configured.
Specifying a VTEP group as the gateway for an access layer VTEP
Prerequisites
Before you specify a VTEP group on an access layer VTEP, perform the following tasks on the VTEP:
· Enable Layer 2 forwarding for VXLANs.
· Configure VSIs and VXLANs.
· Set up VXLAN tunnels to remote sites and the VTEP group, and assign the tunnels to VXLANs.
Procedure
1. Enter system view.
system-view
2. Specify a VTEP group and all its member VTEPs.
vtep group group-ip member remote member-ip&<1-8>
By default, no VTEP group is specified.
Perform this task to specify all member VTEPs in the VTEP group.
Configuring a distributed VXLAN IP gateway
Restrictions and guidelines for distributed VXLAN IP gateway configuration
For a VXLAN that requires access to the external network, specify the VXLAN's VSI interface on the border gateway as the next hop by using one of the following methods:
· Configure a static route.
· Configure a routing policy, and apply the policy by using the apply default-next-hop command. For more information about configuring routing policies, see routing policy configuration in Layer 3—IP Routing Configuration Guide.
If both ARP (or ND) flood suppression and local proxy ARP (or local ND proxy) are enabled on a distributed VXLAN IP gateway, only ARP (or ND) flood suppression takes effect. As a best practice, do not use these features together on distributed VXLAN IP gateways. For more information about ARP (or ND) flood suppression, see "Enabling ARP flood suppression" or "Enabling ND flood suppression."
Configuring a distributed VXLAN IP gateway interface
1. Enter system view.
system-view
2. Create a VSI interface and enter VSI interface view.
interface vsi-interface vsi-interface-id
3. Assign an IP address to the VSI interface.
IPv4:
ip address ip-address { mask | mask-length } [ sub ]
IPv6:
See IPv6 basics in Layer 3—IP Services Configuration Guide.
By default, no IP address is assigned to a VSI interface.
4. Specify the VSI interface as a distributed gateway.
distributed-gateway local
By default, a VSI interface is not a distributed gateway.
5. Enable local proxy ARP or local ND proxy.
IPv4:
local-proxy-arp enable [ ip-range startIP to endIP ]
By default, local proxy ARP is disabled.
For more information about this command, see proxy ARP commands in Layer 3—IP Services Command Reference.
IPv6:
local-proxy-nd enable
By default, local ND proxy is disabled.
For more information about this command, see IPv6 basics commands in Layer 3—IP Services Command Reference.
6. Bring up the VSI interface.
undo shutdown
By default, a VSI interface is not manually shut down.
7. Return to system view.
quit
8. Enter VSI view.
vsi vsi-name
9. Specify the VSI interface as the gateway interface for the VSI.
gateway vsi-interface vsi-interface-id
By default, no gateway interface is specified for a VSI.
Enabling dynamic ARP or ND entry synchronization for distributed VXLAN IP gateways
About this task
When local proxy ARP or local ND proxy is enabled on distributed VXLAN IP gateways, enable this feature for all gateways to have the same ARP or ND entries.
Enabling dynamic ARP entry synchronization
1. Enter system view.
system-view
2. Enable dynamic ARP entry synchronization for distributed VXLAN IP gateways.
arp distributed-gateway dynamic-entry synchronize
By default, dynamic ARP entry synchronization is disabled for distributed VXLAN IP gateways.
Enabling dynamic ND entry synchronization
1. Enter system view.
system-view
2. Enable dynamic ND entry synchronization for distributed VXLAN IP gateways.
ipv6 nd distributed-gateway dynamic-entry synchronize
By default, dynamic ND entry synchronization is disabled for distributed VXLAN IP gateways.
Assigning a subnet to a VSI
About this task
Perform this task on VSIs that share a gateway interface. This task enables the VSI interface to identify the VSI of a packet.
You can assign a maximum of eight IPv4 and IPv6 subnets to a VSI. Make sure these subnets are on the same network as one of the IP addresses on the gateway interface. On an IPv4 network, you can assign one primary IP address and multiple secondary IP addresses to the gateway interface. On an IPv6 network, you can assign multiple IPv6 addresses to the gateway interface.
For VSIs that share a gateway interface, the subnets must be unique.
If you remove the gateway interface from the VSI, the VSI's subnet settings are automatically deleted.
Restrictions and guidelines
For multiple VSIs to share a VSI interface, you must assign IP addresses of different subnets to the VSI interface and specify a subnet for each VSI. If the IP addresses of a VSI interface belong to the same subnet, the VSI interface can be assigned only to one VSI.
Procedure
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Assign a subnet to the VSI.
gateway subnet { ipv4-address wildcard-mask | ipv6-address prefix-length }
By default, no subnet exists on a VSI.
Configuring optional parameters for a VSI interface
1. Enter system view.
system-view
2. Enter VSI interface view.
interface vsi-interface vsi-interface-id
3. Assign a MAC address to the VSI interface.
mac-address mac-address
By default, VSI interfaces use the MAC address of VLAN-interface 4094.
4. Configure the description of the VSI interface.
description text
The default description of a VSI interface is interface-name plus Interface (for example, Vsi-interface100 Interface).
5. Set the MTU for the VSI interface.
mtu size
The default MTU of a VSI interface is 1500 bytes.
6. Set the expected bandwidth for the VSI interface.
bandwidth bandwidth-value
The default expected bandwidth (in kbps) equals the interface baudrate divided by 1000.
The expected bandwidth is an informational parameter used only by higher-layer protocols for calculation. You cannot adjust the actual bandwidth of an interface by using this command.
7. Set an ARP packet sending rate limit for the VSI interface.
arp send-rate pps
By default, the ARP packet sending rate is not limited for a VSI interface.
Restoring the default settings of the VSI interface
Restrictions and guidelines
CAUTION: This operation might interrupt ongoing network services. Make sure you are fully aware of the impact of this operation when you perform it on a live network. |
This operation might fail to restore the default settings for some commands for reasons such as command dependencies or system restrictions. Use the display this command in interface view to identify these commands. Use their undo forms or follow the command reference to restore their default settings. If your restoration attempt still fails, follow the error message instructions to resolve the problem.
Procedure
1. Enter system view.
system-view
2. Enter VSI interface view.
interface vsi-interface vsi-interface-id
3. Restore the default settings of the interface.
default
Display and maintenance commands for VXLAN IP gateways
Execute display commands in any view and reset commands in user view.
Task |
Command |
Display information about VSI interfaces. |
display interface [ vsi-interface [ vsi-interface-id ] ] [ brief [ description | down ] ] |
Clear statistics on VSI interfaces. |
reset counters interface [ vsi-interface [ vsi-interface-id] ] |
VXLAN IP gateway configuration examples
Example: Configuring a centralized VXLAN IP gateway
Network configuration
As shown in Figure 19:
· Configure VXLAN 10 as a unicast-mode VXLAN on Router A, Router B, and Router C to provide connectivity for the VMs across the network sites.
· Configure a centralized VXLAN IP gateway on Router B to provide gateway services for VXLAN 10.
· Manually establish VXLAN tunnels and assign the tunnels to VXLAN 10.
· Enable remote-MAC address learning.
Procedure
IMPORTANT: By default, interfaces on the device are disabled (in ADM or Administratively Down state). To have an interface operate, you must use the undo shutdown command to enable that interface. |
1. On VM 1 and VM 2, specify 10.1.1.1 as the gateway address. (Details not shown.)
2. Configure IP addresses and unicast routing settings:
# Assign IP addresses to interfaces, as shown in Figure 19. (Details not shown.)
# Configure OSPF on all transport network routers (Routers A through D). (Details not shown.)
# Configure OSPF to advertise routes to networks 10.1.1.0/24 and 20.1.1.0/24 on Router B and Router E. (Details not shown.)
3. Configure Router A:
# Enable L2VPN.
<RouterA> system-view
[RouterA] l2vpn enable
# Enable Layer 2 forwarding for VXLANs.
[RouterA] undo vxlan ip-forwarding
# Create VSI vpna and VXLAN 10.
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 10
[RouterA-vsi-vpna-vxlan-10] quit
[RouterA-vsi-vpna] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router B and Router C.
[RouterA] interface loopback 0
[RouterA-Loopback0] ip address 1.1.1.1 255.255.255.255
[RouterA-Loopback0] quit
# Create a VXLAN tunnel to Router B. The tunnel interface name is Tunnel 1.
[RouterA] interface tunnel 1 mode vxlan
[RouterA-Tunnel1] source 1.1.1.1
[RouterA-Tunnel1] destination 2.2.2.2
[RouterA-Tunnel1] quit
# Create a VXLAN tunnel to Router C. The tunnel interface name is Tunnel 2.
[RouterA] interface tunnel 2 mode vxlan
[RouterA-Tunnel2] source 1.1.1.1
[RouterA-Tunnel2] destination 3.3.3.3
[RouterA-Tunnel2] quit
# Assign Tunnel 1 and Tunnel 2 to VXLAN 10.
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 10
[RouterA-vsi-vpna-vxlan-10] tunnel 1
[RouterA-vsi-vpna-vxlan-10] tunnel 2
[RouterA-vsi-vpna-vxlan-10] quit
[RouterA-vsi-vpna] quit
# Map HundredGigE 1/0/1 to VSI vpna.
[RouterA] interface hundredgige 1/0/1
[RouterA-HundredGigE1/0/1] xconnect vsi vpna
[RouterA-HundredGigE1/0/1] quit
4. Configure Router B:
# Enable L2VPN.
<RouterB> system-view
[RouterB] l2vpn enable
# Create VSI vpna and VXLAN 10.
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 10
[RouterB-vsi-vpna-vxlan-10] quit
[RouterB-vsi-vpna] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router A and Router C.
[RouterB] interface loopback 0
[RouterB-Loopback0] ip address 2.2.2.2 255.255.255.255
[RouterB-Loopback0] quit
# Create a VXLAN tunnel to Router A. The tunnel interface name is Tunnel 2.
[RouterB] interface tunnel 2 mode vxlan
[RouterB-Tunnel2] source 2.2.2.2
[RouterB-Tunnel2] destination 1.1.1.1
[RouterB-Tunnel2] quit
# Create a VXLAN tunnel to Router C. The tunnel interface name is Tunnel 3.
[RouterB] interface tunnel 3 mode vxlan
[RouterB-Tunnel3] source 2.2.2.2
[RouterB-Tunnel3] destination 3.3.3.3
[RouterB-Tunnel3] quit
# Assign Tunnel 2 and Tunnel 3 to VXLAN 10.
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 10
[RouterB-vsi-vpna-vxlan-10] tunnel 2
[RouterB-vsi-vpna-vxlan-10] tunnel 3
[RouterB-vsi-vpna-vxlan-10] quit
[RouterB-vsi-vpna] quit
# Create VSI-interface 1 and assign the interface an IP address. The IP address will be used as the gateway address for VXLAN 10.
[RouterB] interface vsi-interface 1
[RouterB-Vsi-interface1] ip address 10.1.1.1 255.255.255.0
[RouterB-Vsi-interface1] quit
# Specify VSI-interface 1 as the gateway interface for VSI vpna.
[RouterB] vsi vpna
[RouterB-vsi-vpna] gateway vsi-interface 1
[RouterB-vsi-vpna] quit
5. Configure Router C:
# Enable L2VPN.
<RouterC> system-view
[RouterC] l2vpn enable
# Enable Layer 2 forwarding for VXLANs.
[RouterC] undo vxlan ip-forwarding
# Create VSI vpna and VXLAN 10.
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 10
[RouterC-vsi-vpna-vxlan-10] quit
[RouterC-vsi-vpna] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router A and Router B.
[RouterC] interface loopback 0
[RouterC-Loopback0] ip address 3.3.3.3 255.255.255.255
[RouterC-Loopback0] quit
# Create a VXLAN tunnel to Router A. The tunnel interface name is Tunnel 1.
[RouterC] interface tunnel 1 mode vxlan
[RouterC-Tunnel1] source 3.3.3.3
[RouterC-Tunnel1] destination 1.1.1.1
[RouterC-Tunnel1] quit
# Create a VXLAN tunnel to Router B. The tunnel interface name is Tunnel 3.
[RouterC] interface tunnel 3 mode vxlan
[RouterC-Tunnel3] source 3.3.3.3
[RouterC-Tunnel3] destination 2.2.2.2
[RouterC-Tunnel3] quit
# Assign Tunnel 1 and Tunnel 3 to VXLAN 10.
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 10
[RouterC-vsi-vpna-vxlan-10] tunnel 1
[RouterC-vsi-vpna-vxlan-10] tunnel 3
[RouterC-vsi-vpna-vxlan-10] quit
[RouterC-vsi-vpna] quit
# Map HundredGigE 1/0/1 to VSI vpna.
[RouterC] interface hundredgige 1/0/1
[RouterC-HundredGigE1/0/1] xconnect vsi vpna
[RouterC-HundredGigE1/0/1] quit
Verifying the configuration
1. Verify the VXLAN IP gateway settings on Router B:
# Verify that the VXLAN tunnel interfaces are up on Router B.
[RouterB] display interface tunnel 2
Tunnel2
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
# Verify that VSI-interface 1 is up.
[RouterB] display interface vsi-interface 1
Vsi-interface1
Current state: UP
Line protocol state: UP
Description: Vsi-interface100 Interface
Bandwidth: 1000000 kbps
Maximum transmission unit: 1500
Internet address: 10.1.1.1/24 (primary)
IP packet frame type: Ethernet II, hardware address: 0011-2200-0102
IPv6 packet frame type: Ethernet II, 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
# Verify that the VXLAN tunnels have been assigned to the VXLAN, and VSI-interface 1 is the gateway interface of VSI vpna.
[RouterB] display l2vpn vsi verbose
VSI Name: vpna
VSI Index : 0
VSI State : Up
MTU : 1500
Bandwidth : Unlimited
Broadcast Restrain : 4294967295 kbps
Multicast Restrain : 4294967295 kbps
Unknown Unicast Restrain: 4294967295 kbps
MAC Learning : Enabled
MAC Table Limit : -
MAC Learning rate : -
Local MAC aging time : 300 sec
Remote MAC aging time : 300 sec
Drop Unknown : -
PW Redundancy Mode : Slave
Flooding : Enabled
Statistics : Disabled
Gateway interface : VSI-interface 1
VXLAN ID : 10
Tunnel Statistics : Disabled
Tunnels:
Tunnel Name Link ID State Type Flood Proxy
Tunnel2 0x5000002 Up Manual Disabled
Tunnel3 0x5000003 Up Manual Disabled
# Verify that Router B has created ARP entries for the VMs.
[RouterB] display arp
Type: S-Static D-Dynamic O-Openflow R-Rule M-Multiport I-Invalid
IP address MAC address VLAN/VSI name Interface Aging Type
20.1.1.5 000c-29c1-5e46 -- HGE1/0/1 19 D
10.1.1.11 0000-1234-0001 0 Tunnel2 20 D
10.1.1.12 0000-1234-0002 0 Tunnel3 19 D
# Verify that Router B has created FIB entries for the VMs.
[RouterB] display fib 10.1.1.11
Destination count: 1 FIB entry count: 1
Flag:
U:Usable G:Gateway H:Host B:Blackhole D:Dynamic S:Static
R:Relay F:FRR
Destination/Mask Nexthop Flag OutInterface/Token Label
10.1.1.11/32 10.1.1.11 UH Vsi1 Null
2. Verify that the network connectivity for the VMs meets the network requirements:
# Verify that VM 1 and VM 2 can ping each other. (Details not shown.)
# Verify that VM 1, VM 2, and HundredGigE 1/0/1 (20.1.1.5) on Router E can ping each other. (Details not shown.)
Example: Configuring distributed VXLAN IPv4 gateways (IPv4 underlay network)
Network configuration
As shown in Figure 20:
· Configure VXLAN 10, VXLAN 20, and VXLAN 30 as unicast-mode VXLANs on Router A, Router B, and Router C to provide connectivity for the VMs across the network sites.
· Manually establish VXLAN tunnels and assign the tunnels to the VXLANs.
· Configure distributed VXLAN IP gateways on Router A and Router C to forward traffic between the VXLANs.
· Configure Router B as a border gateway to forward traffic between the VXLANs and the WAN connected to Router E.
Procedure
IMPORTANT: By default, interfaces on the device are disabled (in ADM or Administratively Down state). To have an interface operate, you must use the undo shutdown command to enable that interface. |
1. On VM 1, VM 2, and VM 3, specify 10.1.1.1, 10.1.2.1, and 20.1.1.1 as the gateway address, respectively. (Details not shown.)
2. Configure IP addresses and unicast routing settings:
# Assign IP addresses to interfaces, as shown in Figure 20. (Details not shown.)
# Configure OSPF on all transport network routers (Routers A through D). (Details not shown.)
# Configure OSPF to advertise routes to networks 10.1.1.0/24, 10.1.2.0/24, 20.1.1.0/24, and 25.1.1.0/24 on Router B and Router E. (Details not shown.)
3. Configure Router A:
# Enable L2VPN.
<RouterA> system-view
[RouterA] l2vpn enable
# Create VSI vpna and VXLAN 10.
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 10
[RouterA-vsi-vpna-vxlan-10] quit
[RouterA-vsi-vpna] quit
# Create VSI vpnb and VXLAN 20.
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] vxlan 20
[RouterA-vsi-vpnb-vxlan-20] quit
[RouterA-vsi-vpnb] quit
# Create VSI vpnc and VXLAN 30.
[RouterA] vsi vpnc
[RouterA-vsi-vpnc] vxlan 30
[RouterA-vsi-vpnc-vxlan-30] quit
[RouterA-vsi-vpnc] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router B and Router C.
[RouterA] interface loopback 0
[RouterA-Loopback0] ip address 1.1.1.1 255.255.255.255
[RouterA-Loopback0] quit
# Create a VXLAN tunnel to Router B. The tunnel interface name is Tunnel 1.
[RouterA] interface tunnel 1 mode vxlan
[RouterA-Tunnel1] source 1.1.1.1
[RouterA-Tunnel1] destination 2.2.2.2
[RouterA-Tunnel1] quit
# Create a VXLAN tunnel to Router C. The tunnel interface name is Tunnel 2.
[RouterA] interface tunnel 2 mode vxlan
[RouterA-Tunnel2] source 1.1.1.1
[RouterA-Tunnel2] destination 3.3.3.3
[RouterA-Tunnel2] quit
# Assign Tunnel 1 and Tunnel 2 to VXLAN 10.
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 10
[RouterA-vsi-vpna-vxlan-10] tunnel 1
[RouterA-vsi-vpna-vxlan-10] tunnel 2
[RouterA-vsi-vpna-vxlan-10] quit
[RouterA-vsi-vpna] quit
# Assign Tunnel 1 and Tunnel 2 to VXLAN 20.
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] vxlan 20
[RouterA-vsi-vpnb-vxlan-20] tunnel 1
[RouterA-vsi-vpnb-vxlan-20] tunnel 2
[RouterA-vsi-vpnb-vxlan-20] quit
[RouterA-vsi-vpnb] quit
# Assign Tunnel 2 to VXLAN 30.
[RouterA] vsi vpnc
[RouterA-vsi-vpnc] vxlan 30
[RouterA-vsi-vpnc-vxlan-30] tunnel 2
[RouterA-vsi-vpnc-vxlan-30] quit
[RouterA-vsi-vpnc] quit
# Map HundredGigE 1/0/1 to VSI vpna.
[RouterA] interface hundredgige 1/0/1
[RouterA-HundredGigE1/0/1] xconnect vsi vpna
[RouterA-HundredGigE1/0/1] quit
# Map HundredGigE 1/0/3 to VSI vpnb.
[RouterA] interface hundredgige 1/0/3
[RouterA-HundredGigE1/0/3] xconnect vsi vpnb
[RouterA-HundredGigE1/0/3] quit
# Create VSI-interface 1 and assign the interface an IP address and a MAC address. The IP address will be used as the gateway address for VXLAN 10.
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] ip address 10.1.1.1 255.255.255.0
[RouterA-Vsi-interface1] mac-address 1-1-1
# Specify VSI-interface 1 as a distributed gateway and enable local proxy ARP on the interface.
[RouterA-Vsi-interface1] distributed-gateway local
[RouterA-Vsi-interface1] local-proxy-arp enable
[RouterA-Vsi-interface1] quit
# Create VSI-interface 2 and assign the interface an IP address and a MAC address. The IP address will be used as the gateway address for VXLAN 20.
[RouterA] interface vsi-interface 2
[RouterA-Vsi-interface2] ip address 10.1.2.1 255.255.255.0
[RouterA-Vsi-interface2] mac-address 2-2-2
# Specify VSI-interface 2 as a distributed gateway and enable local proxy ARP on the interface.
[RouterA-Vsi-interface2] distributed-gateway local
[RouterA-Vsi-interface2] local-proxy-arp enable
[RouterA-Vsi-interface2] quit
# Enable dynamic ARP entry synchronization for distributed VXLAN IP gateways.
[RouterA] arp distributed-gateway dynamic-entry synchronize
# Specify VSI-interface 1 as the gateway interface for VSI vpna. Assign subnet 10.1.1.0/24 to the VSI.
[RouterA] vsi vpna
[RouterA-vsi-vpna] gateway vsi-interface 1
[RouterA-vsi-vpna] gateway subnet 10.1.1.0 0.0.0.255
[RouterA-vsi-vpna] quit
# Specify VSI-interface 2 as the gateway interface for VSI vpnb.
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] gateway vsi-interface 2
[RouterA-vsi-vpnb] quit
# Assign a secondary IP address to VSI-interface 1. The IP address will be used as the gateway address for VXLAN 30.
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] ip address 20.1.1.1 255.255.255.0 sub
[RouterA-Vsi-interface1] quit
# Specify VSI-interface 1 as the gateway interface for VSI vpnc. Assign subnet 20.1.1.0/24 to the VSI.
[RouterA] vsi vpnc
[RouterA-vsi-vpnc] gateway vsi-interface 1
[RouterA-vsi-vpnc] gateway subnet 20.1.1.0 0.0.0.255
[RouterA-vsi-vpnc] quit
# Configure a routing policy for VXLAN 10. Set the policy name to vxlan10, and set the default next hop to 10.1.1.2 (VSI-interface 1 on Router B).
[RouterA] acl advanced 3000
[RouterA-acl-ipv4-adv-3000] rule 0 permit ip
[RouterA-acl-ipv4-adv-3000] quit
[RouterA] policy-based-route vxlan10 permit node 5
[RouterA-pbr-vxlan10-5] if-match acl 3000
[RouterA-pbr-vxlan10-5] apply default-next-hop 10.1.1.2
[RouterA-pbr-vxlan10-5] quit
# Configure a routing policy for VXLAN 20. Set the policy name to vxlan20, and set the default next hop to 10.1.2.2 (VSI-interface 2 on Router B).
[RouterA] policy-based-route vxlan20 permit node 5
[RouterA-pbr-vxlan20-5] if-match acl 3000
[RouterA-pbr-vxlan20-5] apply default-next-hop 10.1.2.2
[RouterA-pbr-vxlan20-5] quit
# Apply policies vxlan10 and vxlan20 to VSI-interface 1 and VSI-interface 2, respectively.
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] ip policy-based-route vxlan10
[RouterA-Vsi-interface1] quit
[RouterA] interface vsi-interface 2
[RouterA-Vsi-interface2] ip policy-based-route vxlan20
[RouterA-Vsi-interface2] quit
4. Configure Router B:
# Enable L2VPN.
<RouterB> system-view
[RouterB] l2vpn enable
# Create VSI vpna and VXLAN 10.
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 10
[RouterB-vsi-vpna-vxlan-10] quit
[RouterB-vsi-vpna] quit
# Create VSI vpnb and VXLAN 20.
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] vxlan 20
[RouterB-vsi-vpnb-vxlan-20] quit
[RouterB-vsi-vpnb] quit
# Create VSI vpnc and VXLAN 30.
[RouterB] vsi vpnc
[RouterB-vsi-vpnc] vxlan 30
[RouterB-vsi-vpnc-vxlan-30] quit
[RouterB-vsi-vpnc] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router A and Router C.
[RouterB] interface loopback 0
[RouterB-Loopback0] ip address 2.2.2.2 255.255.255.255
[RouterB-Loopback0] quit
# Create a VXLAN tunnel to Router A. The tunnel interface name is Tunnel 2.
[RouterB] interface tunnel 2 mode vxlan
[RouterB-Tunnel2] source 2.2.2.2
[RouterB-Tunnel2] destination 1.1.1.1
[RouterB-Tunnel2] quit
# Create a VXLAN tunnel to Router C. The tunnel interface name is Tunnel 3.
[RouterB] interface tunnel 3 mode vxlan
[RouterB-Tunnel3] source 2.2.2.2
[RouterB-Tunnel3] destination 3.3.3.3
[RouterB-Tunnel3] quit
# Assign Tunnel 2 to VXLAN 10.
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 10
[RouterB-vsi-vpna-vxlan-10] tunnel 2
[RouterB-vsi-vpna-vxlan-10] quit
[RouterB-vsi-vpna] quit
# Assign Tunnel 2 to VXLAN 20.
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] vxlan 20
[RouterB-vsi-vpnb-vxlan-20] tunnel 2
[RouterB-vsi-vpnb-vxlan-20] quit
[RouterB-vsi-vpnb] quit
# Assign Tunnel 3 to VXLAN 30.
[RouterB] vsi vpnc
[RouterB-vsi-vpnc] vxlan 30
[RouterB-vsi-vpnc-vxlan-30] tunnel 3
[RouterB-vsi-vpnc-vxlan-30] quit
[RouterB-vsi-vpnc] quit
# Create VSI-interface 1 and assign the interface an IP address.
[RouterB] interface vsi-interface 1
[RouterB-Vsi-interface1] ip address 10.1.1.2 255.255.255.0
[RouterB-Vsi-interface1] quit
# Create VSI-interface 2 and assign the interface an IP address.
[RouterB] interface vsi-interface 2
[RouterB-Vsi-interface2] ip address 10.1.2.2 255.255.255.0
[RouterB-Vsi-interface2] quit
# Create VSI-interface 3 and assign the interface an IP address.
[RouterB] interface vsi-interface 3
[RouterB-Vsi-interface3] ip address 20.1.1.2 255.255.255.0
[RouterB-Vsi-interface3] quit
# Specify VSI-interface 1 as the gateway interface for VSI vpna.
[RouterB] vsi vpna
[RouterB-vsi-vpna] gateway vsi-interface 1
[RouterB-vsi-vpna] quit
# Specify VSI-interface 2 as the gateway interface for VSI vpnb.
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] gateway vsi-interface 2
[RouterB-vsi-vpnb] quit
# Specify VSI-interface 3 as the gateway interface for VSI vpnc.
[RouterB] vsi vpnc
[RouterB-vsi-vpnc] gateway vsi-interface 3
[RouterB-vsi-vpnc] quit
5. Configure Router C:
# Enable L2VPN.
<RouterC> system-view
[RouterC] l2vpn enable
# Create VSI vpna and VXLAN 10.
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 10
[RouterC-vsi-vpna-vxlan-10] quit
[RouterC-vsi-vpna] quit
# Create VSI vpnb and VXLAN 20.
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] vxlan 20
[RouterC-vsi-vpnb-vxlan-20] quit
[RouterC-vsi-vpnb] quit
# Create VSI vpnc and VXLAN 30.
[RouterC] vsi vpnc
[RouterC-vsi-vpnc] vxlan 30
[RouterC-vsi-vpnc-vxlan-30] quit
[RouterC-vsi-vpnc] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router A and Router B.
[RouterC] interface loopback 0
[RouterC-Loopback0] ip address 3.3.3.3 255.255.255.255
[RouterC-Loopback0] quit
# Create a VXLAN tunnel to Router A. The tunnel interface name is Tunnel 1.
[RouterC] interface tunnel 1 mode vxlan
[RouterC-Tunnel1] source 3.3.3.3
[RouterC-Tunnel1] destination 1.1.1.1
[RouterC-Tunnel1] quit
# Create a VXLAN tunnel to Router B. The tunnel interface name is Tunnel 3.
[RouterC] interface tunnel 3 mode vxlan
[RouterC-Tunnel3] source 3.3.3.3
[RouterC-Tunnel3] destination 2.2.2.2
[RouterC-Tunnel3] quit
# Assign Tunnel 1 to VXLAN 10.
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 10
[RouterC-vsi-vpna-vxlan-10] tunnel 1
[RouterC-vsi-vpna-vxlan-10] quit
[RouterC-vsi-vpna] quit
# Assign Tunnel 1 to VXLAN 20.
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] vxlan 20
[RouterC-vsi-vpnb-vxlan-20] tunnel 1
[RouterC-vsi-vpnb-vxlan-20] quit
[RouterC-vsi-vpnb] quit
# Assign Tunnel 1 and Tunnel 3 to VXLAN 30.
[RouterC] vsi vpnc
[RouterC-vsi-vpnc] vxlan 30
[RouterC-vsi-vpnc-vxlan-30] tunnel 1
[RouterC-vsi-vpnc-vxlan-30] tunnel 3
[RouterC-vsi-vpnc-vxlan-30] quit
[RouterC-vsi-vpnc] quit
# Map HundredGigE 1/0/1 to VSI vpnc.
[RouterC] interface hundredgige 1/0/1
[RouterC-HundredGigE1/0/1] xconnect vsi vpnc
[RouterC-HundredGigE1/0/1] quit
# Create VSI-interface 1 and assign the interface an IP address and a MAC address. The IP address will be used as the gateway address for VXLAN 10.
[RouterC] interface vsi-interface 1
[RouterC-Vsi-interface1] ip address 10.1.1.1 255.255.255.0
[RouterC-Vsi-interface1] mac-address 1-1-1
# Specify VSI-interface 1 as a distributed gateway and enable local proxy ARP on the interface.
[RouterC-Vsi-interface1] distributed-gateway local
[RouterC-Vsi-interface1] local-proxy-arp enable
[RouterC-Vsi-interface1] quit
# Create VSI-interface 2 and assign the interface an IP address and a MAC address. The IP address will be used as the gateway address for VXLAN 20.
[RouterC] interface vsi-interface 2
[RouterC-Vsi-interface2] ip address 10.1.2.1 255.255.255.0
[RouterC-Vsi-interface2] mac-address 2-2-2
# Specify VSI-interface 2 as a distributed gateway and enable local proxy ARP on the interface.
[RouterC-Vsi-interface2] distributed-gateway local
[RouterC-Vsi-interface2] local-proxy-arp enable
[RouterC-Vsi-interface2] quit
# Enable dynamic ARP entry synchronization for distributed VXLAN IP gateways.
[RouterC] arp distributed-gateway dynamic-entry synchronize
# Specify VSI-interface 1 as the gateway interface for VSI vpna. Assign subnet 10.1.1.0/24 to the VSI.
[RouterC] vsi vpna
[RouterC-vsi-vpna] gateway vsi-interface 1
[RouterC-vsi-vpna] gateway subnet 10.1.1.0 0.0.0.255
[RouterC-vsi-vpna] quit
# Specify VSI-interface 2 as the gateway interface for VSI vpnb.
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] gateway vsi-interface 2
[RouterC-vsi-vpnb] quit
# Assign a secondary IP address to VSI-interface 1. The IP address will be used as the gateway address for VXLAN 30.
[RouterC] interface vsi-interface 1
[RouterC-Vsi-interface1] ip address 20.1.1.1 255.255.255.0 sub
[RouterC-Vsi-interface1] quit
# Specify VSI-interface 1 as the gateway interface for VSI vpnc. Assign subnet 20.1.1.0/24 to the VSI.
[RouterC] vsi vpnc
[RouterC-vsi-vpnc] gateway vsi-interface 1
[RouterC-vsi-vpnc] gateway subnet 20.1.1.0 0.0.0.255
[RouterC-vsi-vpnc] quit
# Configure a routing policy for the VXLANs. Set the policy name to vxlan, and set the default next hop to 20.1.1.2 (VSI-interface 1 on Router B).
[RouterC] acl advanced 3000
[RouterC-acl-ipv4-adv-3000] rule 0 permit ip
[RouterC-acl-ipv4-adv-3000] quit
[RouterC] policy-based-route vxlan permit node 5
[RouterC-pbr-vxlan-5] if-match acl 3000
[RouterC-pbr-vxlan-5] apply default-next-hop 20.1.1.2
[RouterC-pbr-vxlan-5] quit
# Apply the policy vxlan to VSI-interface 1.
[RouterC] interface vsi-interface1
[RouterC-Vsi-interface1] ip policy-based-route vxlan
[RouterC-Vsi-interface1] quit
Verifying the configuration
1. Verify the distributed VXLAN IP gateway settings on Router A:
# Verify that the VXLAN tunnel interfaces are up on Router A.
[RouterA] display interface tunnel 2
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 1.1.1.1, destination 3.3.3.3
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
# Verify that VSI-interface 1 is up.
[RouterA] display interface vsi-interface 1
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: Ethernet II, hardware address: 0001-0001-0001
IPv6 packet frame type: Ethernet II, hardware address: 0001-0001-0001
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
# Verify that the VXLAN tunnels have been assigned to VXLAN 10, and VSI-interface 1 is the gateway interface for VSI vpna.
[RouterA] display l2vpn vsi name vpna verbose
VSI Name: vpna
VSI Index : 0
VSI State : Up
MTU : 1500
Bandwidth : Unlimited
Broadcast Restrain : 4294967295 kbps
Multicast Restrain : 4294967295 kbps
Unknown Unicast Restrain: 4294967295 kbps
MAC Learning : Enabled
MAC Table Limit : -
MAC Learning rate : -
Local MAC aging time : 300 sec
Remote MAC aging time : 300 sec
Drop Unknown : -
PW Redundancy Mode : Slave
Flooding : Enabled
Statistics : Disabled
Gateway interface : VSI-interface 1
VXLAN ID : 10
Tunnel Statistics : Disabled
Tunnels:
Tunnel Name Link ID State Type Flood Proxy
Tunnel1 0x5000001 Up Manual Disabled
Tunnel2 0x5000002 Up Manual Disabled
ACs:
AC Link ID State
HGE1/0/1 0 Up
# Verify that Router A has created ARP entries for the VMs.
[RouterA] display arp
Type: S-Static D-Dynamic O-Openflow R-Rule M-Multiport I-Invalid
IP address MAC address VLAN/VSI name Interface Aging Type
11.1.1.4 000c-29c1-5e46 -- HGE1/0/2 19 D
10.1.1.2 3c8c-400d-867a 0 Tunnel1 20 D
10.1.1.11 0cda-41b5-cf09 0 0 20 D
10.1.2.2 3c8c-400d-867a 1 Tunnel1 20 D
10.1.2.11 0cda-41b5-cf89 1 0 20 D
20.1.1.12 0001-0001-0001 2 Tunnel2 19 D
2. Verify the configuration on the border gateway Router B:
# Verify that the VXLAN tunnel interfaces are up on Router B.
[RouterB] display interface tunnel 2
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 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
# Verify that VSI-interface 1 is up.
[RouterB] display interface vsi-interface 1
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.2/24 (primary)
IP packet frame type: Ethernet II, hardware address: 0011-2200-0102
IPv6 packet frame type: Ethernet II, 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
# Verify that the VXLAN tunnels have been assigned to VXLAN 10, and VSI-interface 1 is the gateway interface for VSI vpna.
[RouterB] display l2vpn vsi name vpna verbose
VSI Name: vpna
VSI Index : 0
VSI State : Up
MTU : 1500
Bandwidth : Unlimited
Broadcast Restrain : 4294967295 kbps
Multicast Restrain : 4294967295 kbps
Unknown Unicast Restrain: 4294967295 kbps
MAC Learning : Enabled
MAC Table Limit : -
MAC Learning rate : -
Local MAC aging time : 300 sec
Remote MAC aging time : 300 sec
Drop Unknown : -
PW Redundancy Mode : Slave
Flooding : Enabled
Statistics : Disabled
Gateway interface : VSI-interface 1
VXLAN ID : 10
Tunnel Statistics : Disabled
Tunnels:
Tunnel Name Link ID State Type Flood Proxy
Tunnel1 0x5000001 Up Manual Disabled
Tunnel2 0x5000002 Up Manual Disabled
# Verify that Router B has created ARP entries for the VMs.
[RouterB] display arp
Type: S-Static D-Dynamic O-Openflow R-Rule M-Multiport I-Invalid
IP address MAC address VLAN/VSI name Interface Aging Type
12.1.1.4 0000-fc00-00ab -- HGE1/0/2 14 D
25.1.1.5 4431-9234-24bb -- HGE1/0/1 17 D
10.1.1.1 0001-0001-0001 0 Tunnel2 17 D
10.1.1.11 0001-0001-0001 0 Tunnel2 20 D
10.1.2.1 0002-0002-0002 1 Tunnel2 17 D
10.1.2.11 0002-0002-0002 1 Tunnel2 20 D
20.1.1.1 0001-0001-0001 2 Tunnel3 17 D
20.1.1.12 0001-0001-0001 2 Tunnel3 20 D
# Verify that Router B has created FIB entries for the VMs.
[RouterB] display fib 10.1.1.11
Destination count: 1 FIB entry count: 1
Flag:
U:Usable G:Gateway H:Host B:Blackhole D:Dynamic S:Static
R:Relay F:FRR
Destination/Mask Nexthop Flag OutInterface/Token Label
10.1.1.11/32 10.1.1.11 UH Vsi1 Null
[RouterB] display fib 20.1.1.12
Destination count: 1 FIB entry count: 1
Flag:
U:Usable G:Gateway H:Host B:Blackhole D:Dynamic S:Static
R:Relay F:FRR
Destination/Mask Nexthop Flag OutInterface/Token Label
20.1.1.12/32 20.1.1.12 UH Vsi3 Null
3. Verify that the network connectivity for VMs meets the requirements:
# Verify that VM 1, VM 2, and VM 3 can ping each other. (Details not shown.)
# Verify that VM 1, VM 2, and VM 3 can ping HundredGigE 1/0/1 (25.1.1.5) on Router E for WAN access. (Details not shown.)
Example: Configuring distributed VXLAN IPv4 gateways (IPv6 underlay network)
Network configuration
As shown in Figure 21:
· Configure VXLAN 10, VXLAN 20, and VXLAN 30 as unicast-mode VXLANs on Router A, Router B, and Router C to provide connectivity for the VMs across the network sites.
· Manually establish VXLAN tunnels and assign the tunnels to the VXLANs.
· Configure distributed VXLAN IP gateways on Router A and Router C to forward traffic between the VXLANs.
· Configure Router B as a border gateway to forward traffic between the VXLANs and the WAN connected to Router E.
Procedure
IMPORTANT: By default, interfaces on the device are disabled (in ADM or Administratively Down state). To have an interface operate, you must use the undo shutdown command to enable that interface. |
1. On VM 1, VM 2, and VM 3, specify 10.1.1.1, 10.1.2.1, and 20.1.1.1 as the gateway address, respectively. (Details not shown.)
2. Configure IP addresses and unicast routing settings:
# Assign IP addresses to interfaces, as shown in Figure 21. (Details not shown.)
# Configure OSPF on all transport network routers (Routers A through D). (Details not shown.)
# Configure OSPF to advertise routes to networks 10.1.1.0/24, 10.1.2.0/24, 20.1.1.0/24, and 25.1.1.5/24 on Router B and Router E. (Details not shown.)
3. Configure Router A:
# Enable L2VPN.
<RouterA> system-view
[RouterA] l2vpn enable
# Create VSI vpna and VXLAN 10.
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 10
[RouterA-vsi-vpna-vxlan-10] quit
[RouterA-vsi-vpna] quit
# Create VSI vpnb and VXLAN 20.
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] vxlan 20
[RouterA-vsi-vpnb-vxlan-20] quit
[RouterA-vsi-vpnb] quit
# Create VSI vpnc and VXLAN 30.
[RouterA] vsi vpnc
[RouterA-vsi-vpnc] vxlan 30
[RouterA-vsi-vpnc-vxlan-30] quit
[RouterA-vsi-vpnc] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router B and Router C.
[RouterA] interface loopback 0
[RouterA-Loopback0] ipv6 address 7::7 128
[RouterA-Loopback0] quit
# Create a VXLAN tunnel to Router B. The tunnel interface name is Tunnel 1.
[RouterA] interface tunnel 1 mode vxlan ipv6
[RouterA-Tunnel1] source 7::7
[RouterA-Tunnel1] destination 8::8
[RouterA-Tunnel1] quit
# Create a VXLAN tunnel to Router C. The tunnel interface name is Tunnel 2.
[RouterA] interface tunnel 2 mode vxlan ipv6
[RouterA-Tunnel2] source 7::7
[RouterA-Tunnel2] destination 9::9
[RouterA-Tunnel2] quit
# Assign Tunnel 1 and Tunnel 2 to VXLAN 10.
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 10
[RouterA-vsi-vpna-vxlan-10] tunnel 1
[RouterA-vsi-vpna-vxlan-10] tunnel 2
[RouterA-vsi-vpna-vxlan-10] quit
[RouterA-vsi-vpna] quit
# Assign Tunnel 1 and Tunnel 2 to VXLAN 20.
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] vxlan 20
[RouterA-vsi-vpnb-vxlan-20] tunnel 1
[RouterA-vsi-vpnb-vxlan-20] tunnel 2
[RouterA-vsi-vpnb-vxlan-20] quit
[RouterA-vsi-vpnb] quit
# Assign Tunnel 2 to VXLAN 30.
[RouterA] vsi vpnc
[RouterA-vsi-vpnc] vxlan 30
[RouterA-vsi-vpnc-vxlan-30] tunnel 2
[RouterA-vsi-vpnc-vxlan-30] quit
[RouterA-vsi-vpnc] quit
# Map HundredGigE 1/0/1 to VSI vpna.
[RouterA] interface hundredgige 1/0/1
[RouterA-HundredGigE1/0/1] xconnect vsi vpna
[RouterA-HundredGigE1/0/1] quit
# Map HundredGigE 1/0/3 to VSI vpnb.
[RouterA] interface hundredgige 1/0/3
[RouterA-HundredGigE1/0/3] xconnect vsi vpnb
[RouterA-HundredGigE1/0/3] quit
# Create VSI-interface 1 and assign the interface an IP address and a MAC address. The IP address will be used as the gateway address for VXLAN 10.
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] ip address 10.1.1.1 255.255.255.0
[RouterA-Vsi-interface1] mac-address 1-1-1
# Specify VSI-interface 1 as a distributed gateway and enable local proxy ARP on the interface.
[RouterA-Vsi-interface1] distributed-gateway local
[RouterA-Vsi-interface1] local-proxy-arp enable
[RouterA-Vsi-interface1] quit
# Create VSI-interface 2 and assign the interface an IP address and a MAC address. The IP address will be used as the gateway address for VXLAN 20.
[RouterA] interface vsi-interface 2
[RouterA-Vsi-interface2] ip address 10.1.2.1 255.255.255.0
[RouterA-Vsi-interface2] mac-address 2-2-2
# Specify VSI-interface 2 as a distributed gateway and enable local proxy ARP on the interface.
[RouterA-Vsi-interface2] distributed-gateway local
[RouterA-Vsi-interface2] local-proxy-arp enable
[RouterA-Vsi-interface2] quit
# Enable dynamic ARP entry synchronization for distributed VXLAN IP gateways.
[RouterA] arp distributed-gateway dynamic-entry synchronize
# Specify VSI-interface 1 as the gateway interface for VSI vpna. Assign subnet 10.1.1.0/24 to the VSI.
[RouterA] vsi vpna
[RouterA-vsi-vpna] gateway vsi-interface 1
[RouterA-vsi-vpna] gateway subnet 10.1.1.0 0.0.0.255
[RouterA-vsi-vpna] quit
# Specify VSI-interface 2 as the gateway interface for VSI vpnb.
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] gateway vsi-interface 2
[RouterA-vsi-vpnb] quit
# Assign a secondary IP address to VSI-interface 1. The IP address will be used as the gateway address for VXLAN 30.
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] ip address 20.1.1.1 255.255.255.0 sub
[RouterA-Vsi-interface1] quit
# Specify VSI-interface 1 as the gateway interface for VSI vpnc. Assign subnet 20.1.1.0/24 to the VSI.
[RouterA] vsi vpnc
[RouterA-vsi-vpnc] gateway vsi-interface 1
[RouterA-vsi-vpnc] gateway subnet 20.1.1.0 0.0.0.255
[RouterA-vsi-vpnc] quit
# Configure a routing policy for VXLAN 10. Set the policy name to vxlan10, and set the default next hop to 10.1.1.2 (VSI-interface 1 on Router B).
[RouterA] acl advanced 3000
[RouterA-acl-ipv4-adv-3000] rule 0 permit ip
[RouterA-acl-ipv4-adv-3000] quit
[RouterA] policy-based-route vxlan10 permit node 5
[RouterA-pbr-vxlan10-5] if-match acl 3000
[RouterA-pbr-vxlan10-5] apply default-next-hop 10.1.1.2
[RouterA-pbr-vxlan10-5] quit
# Configure a routing policy for VXLAN 20. Set the policy name to vxlan20, and set the default next hop to 10.1.2.2 (VSI-interface 2 on Router B).
[RouterA] policy-based-route vxlan20 permit node 5
[RouterA-pbr-vxlan20-5] if-match acl 3000
[RouterA-pbr-vxlan20-5] apply default-next-hop 10.1.2.2
[RouterA-pbr-vxlan20-5] quit
# Apply policies vxlan10 and vxlan20 to VSI-interface 1 and VSI-interface 2, respectively.
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] ip policy-based-route vxlan10
[RouterA-Vsi-interface1] quit
[RouterA] interface vsi-interface 2
[RouterA-Vsi-interface2] ip policy-based-route vxlan20
[RouterA-Vsi-interface2] quit
4. Configure Router B:
# Enable L2VPN.
<RouterB> system-view
[RouterB] l2vpn enable
# Create VSI vpna and VXLAN 10.
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 10
[RouterB-vsi-vpna-vxlan-10] quit
[RouterB-vsi-vpna] quit
# Create VSI vpnb and VXLAN 20.
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] vxlan 20
[RouterB-vsi-vpnb-vxlan-20] quit
[RouterB-vsi-vpnb] quit
# Create VSI vpnc and VXLAN 30.
[RouterB] vsi vpnc
[RouterB-vsi-vpnc] vxlan 30
[RouterB-vsi-vpnc-vxlan-30] quit
[RouterB-vsi-vpnc] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router A and Router C.
[RouterB] interface loopback 0
[RouterB-Loopback0] ipv6 address 8::8 128
[RouterB-Loopback0] quit
# Create a VXLAN tunnel to Router A. The tunnel interface name is Tunnel 2.
[RouterB] interface tunnel 2 mode vxlan ipv6
[RouterB-Tunnel2] source 8::8
[RouterB-Tunnel2] destination 7::7
[RouterB-Tunnel2] quit
# Create a VXLAN tunnel to Router C. The tunnel interface name is Tunnel 3.
[RouterB] interface tunnel 3 mode vxlan ipv6
[RouterB-Tunnel3] source 8::8
[RouterB-Tunnel3] destination 9::9
[RouterB-Tunnel3] quit
# Assign Tunnel 2 to VXLAN 10.
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 10
[RouterB-vsi-vpna-vxlan-10] tunnel 2
[RouterB-vsi-vpna-vxlan-10] quit
[RouterB-vsi-vpna] quit
# Assign Tunnel 2 to VXLAN 20.
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] vxlan 20
[RouterB-vsi-vpnb-vxlan-20] tunnel 2
[RouterB-vsi-vpnb-vxlan-20] quit
[RouterB-vsi-vpnb] quit
# Assign Tunnel 3 to VXLAN 30.
[RouterB] vsi vpnc
[RouterB-vsi-vpnc] vxlan 30
[RouterB-vsi-vpnc-vxlan-30] tunnel 3
[RouterB-vsi-vpnc-vxlan-30] quit
[RouterB-vsi-vpnc] quit
# Create VSI-interface 1 and assign the interface an IP address.
[RouterB] interface vsi-interface 1
[RouterB-Vsi-interface1] ip address 10.1.1.2 255.255.255.0
[RouterB-Vsi-interface1] quit
# Create VSI-interface 2 and assign the interface an IP address.
[RouterB] interface vsi-interface 2
[RouterB-Vsi-interface2] ip address 10.1.2.2 255.255.255.0
[RouterB-Vsi-interface2] quit
# Create VSI-interface 3 and assign the interface an IP address.
[RouterB] interface vsi-interface 3
[RouterB-Vsi-interface3] ip address 20.1.1.2 255.255.255.0
[RouterB-Vsi-interface3] quit
# Specify VSI-interface 1 as the gateway interface for VSI vpna.
[RouterB] vsi vpna
[RouterB-vsi-vpna] gateway vsi-interface 1
[RouterB-vsi-vpna] quit
# Specify VSI-interface 2 as the gateway interface for VSI vpnb.
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] gateway vsi-interface 2
[RouterB-vsi-vpnb] quit
# Specify VSI-interface 3 as the gateway interface for VSI vpnc.
[RouterB] vsi vpnc
[RouterB-vsi-vpnc] gateway vsi-interface 3
[RouterB-vsi-vpnc] quit
5. Configure Router C:
# Enable L2VPN.
<RouterC> system-view
[RouterC] l2vpn enable
# Create VSI vpna and VXLAN 10.
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 10
[RouterC-vsi-vpna-vxlan-10] quit
[RouterC-vsi-vpna] quit
# Create VSI vpnb and VXLAN 20.
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] vxlan 20
[RouterC-vsi-vpnb-vxlan-20] quit
[RouterC-vsi-vpnb] quit
# Create VSI vpnc and VXLAN 30.
[RouterC] vsi vpnc
[RouterC-vsi-vpnc] vxlan 30
[RouterC-vsi-vpnc-vxlan-30] quit
[RouterC-vsi-vpnc] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router A and Router B.
[RouterC] interface loopback 0
[RouterC-Loopback0] ipv6 address 9::9 128
[RouterC-Loopback0] quit
# Create a VXLAN tunnel to Router A. The tunnel interface name is Tunnel 1.
[RouterC] interface tunnel 1 mode vxlan ipv6
[RouterC-Tunnel1] source 9::9
[RouterC-Tunnel1] destination 7::7
[RouterC-Tunnel1] quit
# Create a VXLAN tunnel to Router B. The tunnel interface name is Tunnel 3.
[RouterC] interface tunnel 3 mode vxlan ipv6
[RouterC-Tunnel3] source 9::9
[RouterC-Tunnel3] destination 8::8
[RouterC-Tunnel3] quit
# Assign Tunnel 1 to VXLAN 10.
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 10
[RouterC-vsi-vpna-vxlan-10] tunnel 1
[RouterC-vsi-vpna-vxlan-10] quit
[RouterC-vsi-vpna] quit
# Assign Tunnel 1 to VXLAN 20.
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] vxlan 20
[RouterC-vsi-vpnb-vxlan-20] tunnel 1
[RouterC-vsi-vpnb-vxlan-20] quit
[RouterC-vsi-vpnb] quit
# Assign Tunnel 1 and Tunnel 3 to VXLAN 30.
[RouterC] vsi vpnc
[RouterC-vsi-vpnc] vxlan 30
[RouterC-vsi-vpnc-vxlan-30] tunnel 1
[RouterC-vsi-vpnc-vxlan-30] tunnel 3
[RouterC-vsi-vpnc-vxlan-30] quit
[RouterC-vsi-vpnc] quit
# Map HundredGigE 1/0/1 to VSI vpnc.
[RouterC] interface hundredgige 1/0/1
[RouterC-HundredGigE1/0/1] xconnect vsi vpnc
[RouterC-HundredGigE1/0/1] quit
# Create VSI-interface 1 and assign the interface an IP address and a MAC address. The IP address will be used as the gateway address for VXLAN 10.
[RouterC] interface vsi-interface 1
[RouterC-Vsi-interface1] ip address 10.1.1.1 255.255.255.0
[RouterC-Vsi-interface1] mac-address 1-1-1
# Specify VSI-interface 1 as a distributed gateway and enable local proxy ARP on the interface.
[RouterC-Vsi-interface1] distributed-gateway local
[RouterC-Vsi-interface1] local-proxy-arp enable
[RouterC-Vsi-interface1] quit
# Create VSI-interface 2 and assign the interface an IP address and a MAC address. The IP address will be used as the gateway address for VXLAN 20.
[RouterC] interface vsi-interface 2
[RouterC-Vsi-interface2] ip address 10.1.2.1 255.255.255.0
[RouterC-Vsi-interface2] mac-address 2-2-2
# Specify VSI-interface 2 as a distributed gateway and enable local proxy ARP on the interface.
[RouterC-Vsi-interface2] distributed-gateway local
[RouterC-Vsi-interface2] local-proxy-arp enable
[RouterC-Vsi-interface2] quit
# Enable dynamic ARP entry synchronization for distributed VXLAN IP gateways.
[RouterC] arp distributed-gateway dynamic-entry synchronize
# Specify VSI-interface 1 as the gateway interface for VSI vpna. Assign subnet 10.1.1.0/24 to the VSI.
[RouterC] vsi vpna
[RouterC-vsi-vpna] gateway vsi-interface 1
[RouterC-vsi-vpna] gateway subnet 10.1.1.0 0.0.0.255
[RouterC-vsi-vpna] quit
# Specify VSI-interface 2 as the gateway interface for VSI vpnb.
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] gateway vsi-interface 2
[RouterC-vsi-vpnb] quit
# Assign a secondary IP address to VSI-interface 1. The IP address will be used as the gateway address for VXLAN 30.
[RouterC] interface vsi-interface 1
[RouterC-Vsi-interface1] ip address 20.1.1.1 255.255.255.0 sub
[RouterC-Vsi-interface1] quit
# Specify VSI-interface 1 as the gateway interface for VSI vpnc. Assign subnet 20.1.1.0/24 to the VSI.
[RouterC] vsi vpnc
[RouterC-vsi-vpnc] gateway vsi-interface 1
[RouterC-vsi-vpnc] gateway subnet 20.1.1.0 0.0.0.255
[RouterC-vsi-vpnc] quit
# Configure a routing policy for the VXLANs. Set the policy name to vxlan, and set the default next hop to 20.1.1.2 (VSI-interface 1 on Router B).
[RouterC] acl advanced 3000
[RouterC-acl-ipv4-adv-3000] rule 0 permit ip
[RouterC-acl-ipv4-adv-3000] quit
[RouterC] policy-based-route vxlan permit node 5
[RouterC-pbr-vxlan-5] if-match acl 3000
[RouterC-pbr-vxlan-5] apply default-next-hop 20.1.1.2
[RouterC-pbr-vxlan-5] quit
# Apply the policy vxlan to VSI-interface 1.
[RouterC] interface vsi-interface1
[RouterC-Vsi-interface1] ip policy-based-route vxlan
[RouterC-Vsi-interface1] quit
Verifying the configuration
1. Verify the distributed VXLAN IP gateway settings on Router A:
# Verify that the VXLAN tunnel interfaces are up on Router A.
[RouterA] display interface tunnel 2
Tunnel2
Current state: UP
Line protocol state: UP
Description: Tunnel40 Interface
Bandwidth: 64 kbps
Maximum transmission unit: 1444
Internet protocol processing: Disabled
Last clearing of counters: Never
Tunnel source 8::8 destination 7::7
Tunnel protocol/transport UDP_VXLAN/IPv6
Last 5 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 5 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
# Verify that VSI-interface 1 is up.
[RouterA] display interface Vsi-interface 1
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: Ethernet II, hardware address: 0001-0001-0001
IPv6 packet frame type: Ethernet II, hardware address: 0001-0001-0001
Physical: Unknown, baudrate: 1000000 kbps
Last clearing of counters: Never
Last 5 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 5 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
# Verify that the VXLAN tunnels have been assigned to VXLAN 10, and VSI-interface 1 is the gateway interface for VSI vpna.
[RouterA] display l2vpn vsi name vpna verbose
VSI Name: vpna
VSI Index : 10
VSI State : Up
MTU : 1500
Bandwidth : Unlimited
Broadcast Restrain : 4294967295 kbps
Multicast Restrain : 4294967295 kbps
Unknown Unicast Restrain: 4294967295 kbps
MAC Learning : Enabled
MAC Table Limit : -
MAC Learning rate : -
Local MAC aging time : 300 sec
Remote MAC aging time : 300 sec
Drop Unknown : -
PW Redundancy Mode : Slave
Gateway Interface : VSI-interface 1
VXLAN ID : 10
Tunnel Statistics : Disabled
Tunnels:
Tunnel Name Link ID State Type Flood Proxy
Tunnel1 0x5000001 UP Manual Disabled
Tunnel2 0x5000001 UP Manual Disabled
ACs:
AC Link ID State
HGE1/0/1 0 Up
# Verify that Router A has created ARP entries for the VMs. (Details not shown.)
2. Verify the configuration on the border gateway Router B:
# Verify that the VXLAN tunnel interfaces are up on Router B.
[RouterB] display interface tunnel 2
Tunnel2
Current state: UP
Line protocol state: UP
Description: Tunnel40 Interface
Bandwidth: 64 kbps
Maximum transmission unit: 1444
Internet protocol processing: Disabled
Last clearing of counters: Never
Tunnel source 8::8 destination 7::7
Tunnel protocol/transport UDP_VXLAN/IPv6
Last 5 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 5 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
# Verify that VSI-interface 1 is up.
[RouterB] display interface vsi-interface 1
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: Ethernet II, hardware address: 0001-0001-0001
IPv6 packet frame type: Ethernet II, hardware address: 0001-0001-0001
Physical: Unknown, baudrate: 1000000 kbps
Last clearing of counters: Never
Last 5 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 5 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
# Verify that the VXLAN tunnels have been assigned to VXLAN 10, and VSI-interface 1 is the gateway interface for VSI vpna.
[RouterB] display l2vpn vsi name vpna verbose
VSI Name: vpna
VSI Index : 10
VSI State : Up
MTU : 1500
Bandwidth : Unlimited
Broadcast Restrain : 4294967295 kbps
Multicast Restrain : 4294967295 kbps
Unknown Unicast Restrain: 4294967295 kbps
MAC Learning : Enabled
MAC Table Limit : -
MAC Learning rate : -
Local MAC aging time : 300 sec
Remote MAC aging time : 300 sec
Drop Unknown : -
PW Redundancy Mode : Slave
Gateway Interface : VSI-interface 1
VXLAN ID : 10
Tunnel Statistics : Disabled
Tunnels:
Tunnel Name Link ID State Type Flood Proxy
Tunnel1 0x5000001 UP Manual Disabled
Tunnel2 0x5000002 UP Manual Disabled
ACs:
AC Link ID State
HGE1/0/1 0 Up
# Verify that Router B has created ARP entries for the VMs. (Details not shown.)
# Verify that Router B has created FIB entries for the VMs.
[RouterB] display fib 10.1.1.11
FIB entry count: 1
Flag:
U:Usable G:Gateway H:Host B:Blackhole D:Dynamic S:Static
R:Relay F:FRR
Destination/Mask Nexthop Flag OutInterface/Token Label
10.1.1.11/32 10.1.1.11 UH Vsi1 Null
3. Verify that the network connectivity for VMs meets the requirements:
# Verify that VM 1, VM 2, and VM 3 can ping each other. (Details not shown.)
# Verify that VM 1, VM 2, and VM 3 can ping HundredGigE 1/0/1 (25.1.1.5) on Router E for WAN access. (Details not shown.)
Example: Configuring distributed VXLAN IPv6 gateways (IPv6 underlay network)
Network configuration
As shown in Figure 22:
· Configure VXLAN 10 and VXLAN 20 as unicast-mode VXLANs on Router A, Router B, and Router C to provide connectivity for the VMs across the network sites.
· Manually establish VXLAN tunnels and assign the tunnels to the VXLANs.
· Configure distributed VXLAN IP gateways on Router A and Router C to forward traffic between VXLANs.
· Configure Router B as a border gateway to forward traffic between the VXLANs and the WAN connected to Router E.
Procedure
IMPORTANT: By default, interfaces on the device are disabled (in ADM or Administratively Down state). To have an interface operate, you must use the undo shutdown command to enable that interface. |
1. On VM 1 and VM 2, specify 1::1 and 4::1 as the gateway address, respectively. (Details not shown.)
2. Configure IP addresses and unicast routing settings:
# Assign IP addresses to interfaces, as shown in Figure 22. (Details not shown.)
# Configure OSPF on all transport network routers (Routers A through D). (Details not shown.)
# Configure OSPFv3 to advertise routes to networks 1::/64, 4::/64, and 3::/64 on Router B and Router E. (Details not shown.)
3. Configure Router A:
# Enable L2VPN.
<RouterA> system-view
[RouterA] l2vpn enable
# Create VSI vpna and VXLAN 10.
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 10
[RouterA-vsi-vpna-vxlan-10] quit
[RouterA-vsi-vpna] quit
# Create VSI vpnb and VXLAN 20.
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] vxlan 20
[RouterA-vsi-vpnb-vxlan-20] quit
[RouterA-vsi-vpnb] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router B and Router C.
[RouterA] interface loopback 0
[RouterA-Loopback0] ip address 1.1.1.1 255.255.255.255
[RouterA-Loopback0] quit
# Create a VXLAN tunnel to Router B. The tunnel interface name is Tunnel 1.
[RouterA] interface tunnel 1 mode vxlan
[RouterA-Tunnel1] source 1.1.1.1
[RouterA-Tunnel1] destination 2.2.2.2
[RouterA-Tunnel1] quit
# Create a VXLAN tunnel to Router C. The tunnel interface name is Tunnel 2.
[RouterA] interface tunnel 2 mode vxlan
[RouterA-Tunnel2] source 1.1.1.1
[RouterA-Tunnel2] destination 3.3.3.3
[RouterA-Tunnel2] quit
# Assign Tunnel 1 and Tunnel 2 to VXLAN 10.
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 10
[RouterA-vsi-vpna-vxlan-10] tunnel 1
[RouterA-vsi-vpna-vxlan-10] tunnel 2
[RouterA-vsi-vpna-vxlan-10] quit
[RouterA-vsi-vpna] quit
# Assign Tunnel 1 and Tunnel 2 to VXLAN 20.
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] vxlan 20
[RouterA-vsi-vpnb-vxlan-20] tunnel 1
[RouterA-vsi-vpnb-vxlan-20] tunnel 2
[RouterA-vsi-vpnb-vxlan-20] quit
[RouterA-vsi-vpnb] quit
# Map HundredGigE 1/0/1 to VSI vpna.
[RouterA] interface hundredgige 1/0/1
[RouterA-HundredGigE1/0/1] xconnect vsi vpna
[RouterA-HundredGigE1/0/1] quit
# Create VSI-interface 1 and assign the interface two IPv6 anycast addresses. The IP addresses will be used as gateway addresses for VXLAN 10 and VXLAN 20.
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] ipv6 address 1::1/64 anycast
[RouterA-Vsi-interface1] ipv6 address 4::1/64 anycast
# Specify VSI-interface 1 as a distributed gateway and enable local ND proxy on the interface.
[RouterA-Vsi-interface1] distributed-gateway local
[RouterA-Vsi-interface1] local-proxy-nd enable
[RouterA-Vsi-interface1] quit
# Specify VSI-interface 1 as the gateway interface for VSI vpna. Assign subnet 1::1/64 to the VSI.
[RouterA] vsi vpna
[RouterA-vsi-vpna] gateway vsi-interface 1
[RouterA-vsi-vpna] gateway subnet 1::1 64
[RouterA-vsi-vpna] quit
# Specify VSI-interface 1 as the gateway interface for VSI vpnb. Assign subnet 4::1/64 to the VSI.
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] gateway vsi-interface 1
[RouterA-vsi-vpnb] gateway subnet 4::1 64
[RouterA-vsi-vpnb] quit
# Configure an IPv6 static route. Set the destination address to 3::/64 and the next hop to 1::2.
[RouterA] ipv6 route-static 3:: 64 1::2
4. Configure Router B:
# Enable L2VPN.
<RouterB> system-view
[RouterB] l2vpn enable
# Create VSI vpna and VXLAN 10.
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 10
[RouterB-vsi-vpna-vxlan-10] quit
[RouterB-vsi-vpna] quit
# Create VSI vpnb and VXLAN 20.
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] vxlan 20
[RouterB-vsi-vpnb-vxlan-20] quit
[RouterB-vsi-vpnb] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router A and Router C.
[RouterB] interface loopback 0
[RouterB-Loopback0] ip address 2.2.2.2 255.255.255.255
[RouterB-Loopback0] quit
# Create a VXLAN tunnel to Router A. The tunnel interface name is Tunnel 2.
[RouterB] interface tunnel 2 mode vxlan
[RouterB-Tunnel2] source 2.2.2.2
[RouterB-Tunnel2] destination 1.1.1.1
[RouterB-Tunnel2] quit
# Create a VXLAN tunnel to Router C. The tunnel interface name is Tunnel 3.
[RouterB] interface tunnel 3 mode vxlan
[RouterB-Tunnel3] source 2.2.2.2
[RouterB-Tunnel3] destination 3.3.3.3
[RouterB-Tunnel3] quit
# Assign Tunnel 2 and Tunnel 3 to VXLAN 10.
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 10
[RouterB-vsi-vpna-vxlan-10] tunnel 2
[RouterB-vsi-vpna-vxlan-10] tunnel 3
[RouterB-vsi-vpna-vxlan-10] quit
[RouterB-vsi-vpna] quit
# Assign Tunnel 2 and Tunnel 3 to VXLAN 20.
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] vxlan 20
[RouterB-vsi-vpnb-vxlan-20] tunnel 2
[RouterB-vsi-vpnb-vxlan-20] tunnel 3
[RouterB-vsi-vpnb-vxlan-20] quit
[RouterB-vsi-vpnb] quit
# Create VSI-interface 1 and assign the interface IPv6 addresses.
[RouterB] interface vsi-interface 1
[RouterB-Vsi-interface1] ipv6 address 1::2/64
[RouterB-Vsi-interface1] ipv6 address 4::2/64
[RouterB-Vsi-interface1] quit
# Specify VSI-interface 1 as the gateway interface for VSI vpna.
[RouterB] vsi vpna
[RouterB-vsi-vpna] gateway vsi-interface 1
[RouterB-vsi-vpna] quit
# Specify VSI-interface 2 as the gateway interface for VSI vpnb.
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] gateway vsi-interface 1
[RouterB-vsi-vpnb] quit
5. Configure Router C:
# Enable L2VPN.
<RouterC> system-view
[RouterC] l2vpn enable
# Create VSI vpna and VXLAN 10.
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 10
[RouterC-vsi-vpna-vxlan-10] quit
[RouterC-vsi-vpna] quit
# Create VSI vpnb and VXLAN 20.
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] vxlan 20
[RouterC-vsi-vpnb-vxlan-20] quit
[RouterC-vsi-vpnb] quit
# Assign an IP address to Loopback 0. The IP address will be used as the source IP address of the VXLAN tunnels to Router A and Router B.
[RouterC] interface loopback 0
[RouterC-Loopback0] ip address 3.3.3.3 255.255.255.255
[RouterC-Loopback0] quit
# Create a VXLAN tunnel to Router A. The tunnel interface name is Tunnel 1.
[RouterC] interface tunnel 1 mode vxlan
[RouterC-Tunnel1] source 3.3.3.3
[RouterC-Tunnel1] destination 1.1.1.1
[RouterC-Tunnel1] quit
# Create a VXLAN tunnel to Router B. The tunnel interface name is Tunnel 3.
[RouterC] interface tunnel 3 mode vxlan
[RouterC-Tunnel3] source 3.3.3.3
[RouterC-Tunnel3] destination 2.2.2.2
[RouterC-Tunnel3] quit
# Assign Tunnel 1 and Tunnel 3 to VXLAN 10.
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 10
[RouterC-vsi-vpna-vxlan-10] tunnel 1
[RouterC-vsi-vpna-vxlan-10] tunnel 3
[RouterC-vsi-vpna-vxlan-10] quit
[RouterC-vsi-vpna] quit
#Assign Tunnel 1 and Tunnel 3 to VXLAN 20.
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] vxlan 20
[RouterC-vsi-vpnb-vxlan-20] tunnel 1
[RouterC-vsi-vpnb-vxlan-20] tunnel 3
[RouterC-vsi-vpnb-vxlan-20] quit
[RouterC-vsi-vpnb] quit
# Map HundredGigE 1/0/1 to VSI vpnb.
[RouterC] interface hundredgige 1/0/1
[RouterC-HundredGigE1/0/1] xconnect vsi vpnb
[RouterC-HundredGigE1/0/1] quit
# Create VSI-interface 1 and assign the interface two IPv6 anycast addresses. The IP addresses will be used as gateway addresses for VXLAN 10 and VXLAN 20.
[RouterC] interface vsi-interface 1
[RouterC-Vsi-interface1] ipv6 address 1::1/64 anycast
[RouterC-Vsi-interface1] ipv6 address 4::1/64 anycast
# Specify VSI-interface 1 as a distributed gateway and enable local ND proxy on the interface.
[RouterC-Vsi-interface1] distributed-gateway local
[RouterC-Vsi-interface1] local-proxy-nd enable
[RouterC-Vsi-interface1] quit
# Specify VSI-interface 1 as the gateway interface for VSI vpna. Assign subnet 1::1/64 to the VSI.
[RouterC] vsi vpna
[RouterC-vsi-vpna] gateway vsi-interface 1
[RouterC-vsi-vpna] gateway subnet 1::1 64
[RouterC-vsi-vpna] quit
# Specify VSI-interface 1 as the gateway interface for VSI vpnb. Assign subnet 4::1/64 to the VSI.
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] gateway vsi-interface 1
[RouterC-vsi-vpnb] gateway subnet 4::1 64
[RouterC-vsi-vpnb] quit
# Configure an IPv6 static route. Set the destination address to 3::/64 and the next hop to 4::2.
[RouterC] ipv6 route-static 3:: 64 4::2
Verifying the configuration
1. Verify the distributed VXLAN IP gateway settings on Router A:
# Verify that the VXLAN tunnel interfaces are up on Router A.
[RouterA] display interface tunnel 2
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 1.1.1.1, destination 3.3.3.3
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
# Verify that VSI-interface 1 is up.
[RouterA] display interface vsi-interface 1
Vsi-interface1
Current state: UP
Line protocol state: UP
Description: Vsi-interface1 Interface
Bandwidth: 1000000 kbps
Maximum transmission unit: 1500
Internet protocol processing: Disabled
IP packet frame type: Ethernet II, hardware address: 0011-2200-0102
IPv6 packet frame type: Ethernet II, 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
# Verify that the VXLAN tunnels have been assigned to VXLAN 10 and VXLAN 20, and VSI-interface 1 is the gateway interface for VSIs vpna and vpnb.
[RouterA] display l2vpn vsi verbose
VSI Name: vpna
VSI Index : 0
VSI State : Up
MTU : 1500
Bandwidth : Unlimited
Broadcast Restrain : 4294967295 kbps
Multicast Restrain : 4294967295 kbps
Unknown Unicast Restrain: 4294967295 kbps
MAC Learning : Enabled
MAC Table Limit : -
MAC Learning rate : -
Local MAC aging time : 300 sec
Remote MAC aging time : 300 sec
Drop Unknown : -
PW Redundancy Mode : Slave
Flooding : Enabled
Statistics : Disabled
Gateway Interface : VSI-interface 1
VXLAN ID : 10
Tunnel Statistics : Disabled
Tunnels:
Tunnel Name Link ID State Type Flood Proxy
Tunnel1 0x5000001 Up Manual Disabled
Tunnel2 0x5000002 Up Manual Disabled
ACs:
AC Link ID State
HGE1/0/1 0 Up
VSI Name: vpnb
VSI Index : 0
VSI State : Up
MTU : 1500
Bandwidth : Unlimited
Broadcast Restrain : 4294967295 kbps
Multicast Restrain : 4294967295 kbps
Unknown Unicast Restrain: 4294967295 kbps
MAC Learning : Enabled
MAC Table Limit : -
MAC Learning rate : -
Local MAC aging time : 300 sec
Remote MAC aging time : 300 sec
Drop Unknown : -
PW Redundancy Mode : Slave
Flooding : Enabled
Statistics : Disabled
Gateway Interface : VSI-interface 1
VXLAN ID : 20
Tunnel Statistics : Disabled
Tunnels:
Tunnel Name Link ID State Type Flood Proxy
Tunnel1 0x5000001 Up Manual Disabled
Tunnel2 0x5000002 Up Manual Disabled
# Verify that Router A has created neighbor entries for the VMs.
[RouterA] display ipv6 neighbors all
Type: S-Static D-Dynamic O-Openflow R-Rule I-Invalid
IPv6 address Link layer VID Interface State T Age
1::2 3c8c-400d-867a 0 Tunnel1 STALE D 7
1::100 0001-0000-0047 0 0 STALE D 22
4::400 0002-0000-0047 1 Tunnel2 REACH D 5
FE80::201:FF:FE00:47 0001-0000-0047 0 Tunnel1 REACH D 30
FE80::202:FF:FE00:0 0002-0000-0000 1 Tunnel2 REACH D 27
FE80::202:FF:FE00:47 0002-0000-0047 0 0 DELAY D 5
# Verify that Router A has created FIB entries for the VMs.
[RouterA] display ipv6 fib 4::400
Destination count: 1 FIB entry count: 1
Flag:
U:Usable G:Gateway H:Host B:Blackhole D:Dynamic S:Static
R:Relay F:FRR
Destination: 4::400 Prefix length: 128
Nexthop : 4::400 Flags: UH
Time stamp : 0x2c Label: Null
Interface : vsi1 Token: Invalid
[RouterA] display ipv6 fib 3::300
Destination count: 1 FIB entry count: 1
Flag:
U:Usable G:Gateway H:Host B:Blackhole D:Dynamic S:Static
R:Relay F:FRR
Destination: 3:: Prefix length: 40
Nexthop : 1::2 Flags: USGR
Time stamp : 0x23 Label: Null
Interface : vsi1 Token: Invalid
2. Verify the configuration on the border gateway Router B:
# Verify that the VXLAN tunnel interfaces are up on Router B.
[RouterB] display interface tunnel 2
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 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
# Verify that VSI-interface 1 is up.
[RouterB] display interface vsi-interface 1
Vsi-interface1
Current state: UP
Line protocol state: UP
Description: Vsi-interface1 Interface
Bandwidth: 1000000 kbps
Maximum transmission unit: 1500
Internet protocol processing: Disabled
IP packet frame type: Ethernet II, hardware address: 0011-2200-0102
IPv6 packet frame type: Ethernet II, 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
# Verify that the VXLAN tunnels have been assigned to VXLAN 10, and VSI-interface 1 is the gateway interface of VSI vpna.
[RouterB] display l2vpn vsi name vpna verbose
VSI Name: vpna
VSI Index : 0
VSI State : Up
MTU : 1500
Bandwidth : Unlimited
Broadcast Restrain : 4294967295 kbps
Multicast Restrain : 4294967295 kbps
Unknown Unicast Restrain: 4294967295 kbps
MAC Learning : Enabled
MAC Table Limit : -
MAC Learning rate : -
Local MAC aging time : 300 sec
Remote MAC aging time : 300 sec
Drop Unknown : -
PW Redundancy Mode : Slave
Flooding : Enabled
Statistics : Disabled
Gateway interface : VSI-interface 1
VXLAN ID : 10
Tunnel Statistics : Disabled
Tunnels:
Tunnel Name Link ID State Type Flood Proxy
Tunnel1 0x5000001 Up Manual Disabled
Tunnel2 0x5000002 Up Manual Disabled
# Verify that Router B has created neighbor entries for the VMs.
[RouterB] display ipv6 neighbors all
Type: S-Static D-Dynamic O-Openflow R-Rule I-Invalid
IPv6 address Link layer VID Interface State T Age
3::300 0003-0000-0047 N/A HGE1/0/1 DELAY D 3
FE80::203:FF:FE00:47 0003-0000-0047 N/A HGE1/0/1 STALE D 222
1::100 0001-0000-0047 0 Tunnel2 STALE D 232
4::400 0002-0000-0047 1 Tunnel3 REACH D 3
FE80::201:FF:FE00:0 0001-0000-0000 0 Tunnel2 STALE D 237
FE80::201:FF:FE00:47 0001-0000-0047 N/A HGE1/0/1 STALE D 222
FE80::202:FF:FE00:0 0002-0000-0000 1 Tunnel3 STALE D 345
# Verify that Router B has created FIB entries for the VMs.
[RouterB] display ipv6 fib 1::100
Destination count: 1 FIB entry count: 1
Flag:
U:Usable G:Gateway H:Host B:Blackhole D:Dynamic S:Static
R:Relay F:FRR
Destination: 1::100 Prefix length: 128
Nexthop : 1::100 Flags: UH
Time stamp : 0x21 Label: Null
Interface : vsi1 Token: Invalid
[RouterB] display ipv6 fib 4::400
Destination count: 1 FIB entry count: 1
Flag:
U:Usable G:Gateway H:Host B:Blackhole D:Dynamic S:Static
R:Relay F:FRR
Destination: 4:: Prefix length: 64
Nexthop : :: Flags: U
Time stamp : 0x19 Label: Null
Interface : vsi1 Token: Invalid
3. Verify that the network connectivity for the VMs meet the network requirements:
# Verify that VM 1 and VM 2 can ping each other. (Details not shown.)
# Verify that VM 1, VM 2, and HundredGigE 1/0/1 (3::300) on Router E can ping each other. (Details not shown.)