| stephen hemminger | d342894 | 2012-10-01 12:32:35 +0000 | [diff] [blame] | 1 | Virtual eXtensible Local Area Networking documentation | 
 | 2 | ====================================================== | 
 | 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. | 
 | 23 |  | 
 | 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. | 
 | 30 |  | 
 | 31 | 2. Delete vxlan device | 
 | 32 |   # ip link delete vxlan0 | 
 | 33 |  | 
 | 34 | 3. Show vxlan info | 
 | 35 |   # ip -d show vxlan0 | 
 | 36 |  | 
 | 37 | It is possible to create, destroy and display the vxlan | 
 | 38 | forwarding table using the new bridge command. | 
 | 39 |  | 
 | 40 | 1. Create forwarding table entry | 
 | 41 |   # bridge fdb add to 00:17:42:8a:b4:05 dst 192.19.0.2 dev vxlan0 | 
 | 42 |  | 
 | 43 | 2. Delete forwarding table entry | 
 | 44 |   # bridge fdb delete 00:17:42:8a:b4:05 | 
 | 45 |  | 
 | 46 | 3. Show forwarding table | 
 | 47 |   # bridge fdb show dev vxlan0 |