A few things have changed since the previous version of the vxlan documentation was written, so update it and correct some grammar and such while we are at it.
Unified · Split
| @@ -1,32 +1,36 @@ | ||
| 1 | 1 | Virtual eXtensible Local Area Networking documentation |
| 2 | 2 | ====================================================== |
| 3 | 3 | |
| 4 | −The VXLAN protocol is a tunnelling protocol that is designed to | |
| 5 | −solve the problem of limited number of available VLAN's (4096). | |
| 6 | −With VXLAN identifier is expanded to 24 bits. | |
| 7 | − | |
| 8 | −It is a draft RFC standard, that is implemented by Cisco Nexus, | |
| 9 | −Vmware and Brocade. The protocol runs over UDP using a single | |
| 10 | −destination port (still not standardized by IANA). | |
| 11 | −This document describes the Linux kernel tunnel device, | |
| 12 | −there is also an implantation of VXLAN for Openvswitch. | |
| 13 | − | |
| 14 | −Unlike most tunnels, a VXLAN is a 1 to N network, not just point | |
| 15 | −to point. A VXLAN device can either dynamically learn the IP address | |
| 16 | −of the other end, in a manner similar to a learning bridge, or the | |
| 17 | −forwarding entries can be configured statically. | |
| 18 | − | |
| 19 | −The management of vxlan is done in a similar fashion to it's | |
| 20 | −too closest neighbors GRE and VLAN. Configuring VXLAN requires | |
| 21 | −the version of iproute2 that matches the kernel release | |
| 22 | −where VXLAN was first merged upstream. | |
| 4 | +The VXLAN protocol is a tunnelling protocol designed to solve the | |
| 5 | +problem of limited VLAN IDs (4096) in IEEE 802.1q. With VXLAN the | |
| 6 | +size of the identifier is expanded to 24 bits (16777216). | |
| 7 | + | |
| 8 | +VXLAN is described by IETF RFC 7348, and has been implemented by a | |
| 9 | +number of vendors. The protocol runs over UDP using a single | |
| 10 | +destination port. This document describes the Linux kernel tunnel | |
| 11 | +device, there is also a separate implementation of VXLAN for | |
| 12 | +Openvswitch. | |
| 13 | + | |
| 14 | +Unlike most tunnels, a VXLAN is a 1 to N network, not just point to | |
| 15 | +point. A VXLAN device can learn the IP address of the other endpoint | |
| 16 | +either dynamically in a manner similar to a learning bridge, or make | |
| 17 | +use of statically-configured forwarding entries. | |
| 18 | + | |
| 19 | +The management of vxlan is done in a manner similar to its two closest | |
| 20 | +neighbors GRE and VLAN. Configuring VXLAN requires the version of | |
| 21 | +iproute2 that matches the kernel release where VXLAN was first merged | |
| 22 | +upstream. | |
| 23 | 23 | |
| 24 | 24 | 1. Create vxlan device |
| 25 | − # ip li add vxlan0 type vxlan id 42 group 239.1.1.1 dev eth1 | |
| 26 | − | |
| 27 | −This creates a new device (vxlan0). The device uses the | |
| 28 | −the multicast group 239.1.1.1 over eth1 to handle packets where | |
| 29 | −no entry is in the forwarding table. | |
| 25 | + # ip link add vxlan0 type vxlan id 42 group 239.1.1.1 dev eth1 dstport 4789 | |
| 26 | + | |
| 27 | +This creates a new device named vxlan0. The device uses the multicast | |
| 28 | +group 239.1.1.1 over eth1 to handle traffic for which there is no | |
| 29 | +entry in the forwarding table. The destination port number is set to | |
| 30 | +the IANA-assigned value of 4789. The Linux implementation of VXLAN | |
| 31 | +pre-dates the IANA's selection of a standard destination port number | |
| 32 | +and uses the Linux-selected value by default to maintain backwards | |
| 33 | +compatibility. | |
| 30 | 34 | |
| 31 | 35 | 2. Delete vxlan device |
| 32 | 36 | # ip link delete vxlan0 |