]> git.proxmox.com Git - mirror_ovs.git/blame - README-native-tunneling.md
flow: Generate checksum and udp_len in flow_compose().
[mirror_ovs.git] / README-native-tunneling.md
CommitLineData
e3639cbd
BP
1Native Tunneling in Open vSwitch userspace
2------------------------------------------
a36de779
PS
3
4Open vSwitch supports tunneling in userspace. Tunneling is implemented in
5platform independent way.
6
7Setup:
8======
9Setup physical bridges for all physical interfaces. Create integration bridge.
10Add VXLAN port to int-bridge. Assign IP address to physical bridge where
11VXLAN traffic is expected.
12
13Example:
14========
15Connect to VXLAN tunnel endpoint logical ip: 192.168.1.2 and 192.168.1.1.
16
17Configure OVS bridges as follows.
18
191. Lets assume 172.168.1.2/24 network is reachable via eth1 create physical bridge br-eth1
20 assign ip address (172.168.1.1/24) to br-eth1, Add eth1 to br-eth1
212. Check ovs cached routes using appctl command
22 ovs-appctl ovs/route/show
23 Add tunnel route if not present in OVS route table.
24 ovs-appctl ovs/route/add 172.168.1.1/24 br-eth1
4b257504 253. Add integration bridge int-br and add tunnel port using standard syntax.
a36de779
PS
26 ovs-vsctl add-port int-br vxlan0 -- set interface vxlan0 type=vxlan options:remote_ip=172.168.1.2
274. Assign IP address to int-br, So final topology looks like:
28
84072381
MG
29 192.168.1.1/24
30 +--------------+
31 | int-br | 192.168.1.2/24
32 +--------------+ +--------------+
33 | vxlan0 | | vxlan0 |
34 +--------------+ +--------------+
35 | |
36 | |
37 | |
38 172.168.1.1/24 |
39 +--------------+ |
40 | br-eth1 | 172.168.1.2/24
41 +--------------+ +---------------+
42 | eth1 |----------------------------------| eth1 |
43 +--------------+ +---------------+
44
45 Host A with OVS. Remote host.
a36de779
PS
46
47With this setup, ping to VXLAN target device (192.168.1.2) should work
48There are following commands that shows internal tables:
49
50Tunneling related commands:
51===========================
52Tunnel routing table:
53 To Add route:
54 ovs-appctl ovs/route/add <IP address>/<prefix length> <output-bridge-name> <gw>
55 To see all routes configured:
56 ovs-appctl ovs/route/show
57 To del route:
58 ovs-appctl ovs/route/del <IP address>/<prefix length>
bc786797
YT
59 To look up and display the route for a destination:
60 ovs-appctl ovs/route/lookup <IP address>
a36de779
PS
61
62ARP:
63 To see arp cache content:
64 ovs-appctl tnl/arp/show
65 To flush arp cache:
66 ovs-appctl tnl/arp/flush
67
68To check tunnel ports listening in vswitchd:
69 ovs-appctl tnl/ports/show
70
71To set range for VxLan udp source port:
72 To set:
73 ovs-appctl tnl/egress_port_range <num1> <num2>
74 Shows Current range:
75 ovs-appctl tnl/egress_port_range
76
77To check datapath ports:
78 ovs-appctl dpif/show
79
80To check datapath flows:
81 ovs-appctl dpif/dump-flows
82
83Contact
84=======
85bugs@openvswitch.org