Folks,

I really struggle to get 802.1q trunks with VLANS working with openvswitch.




The server that got issues is a VXLAN GW on an ESX machine. That server should 
create connectivity for the VM's on ESX to the domains in KVM.

The VXLAN-GW machine has two interfaces:

eth0: native untagged for mgmt connectivity
eth1: 802.1q tagged for all user VLAN's


eth0 is up and forwards traffic as intended.

eth1 can talk to IP' addresses via vlans if there is no OVS involved. eth1.1, 
eth1.100, eth1.101 work fine if directly addressed.

I have tried now over three days dozens of configuration but can't get these 
scenario up and running correctly.

I would like to connect VLAN 1, 100 and 101 to the local VXLAN GW and also 
tunnel these VLANs over VXLAN to the KVM host. (Tunnel works fine)

Strange is that I do see the ARP reply, but no L3 connectivity goes trough.

I have tried "normal" ovs-vsctl based configuration and also ovs-stanza 
configuration. I have pasted below the OVS-Stanza config as I think that is 
most clean.

Any tip please ?

ovs-vsctl show
5cb98216-7245-45c1-ac3c-8d546c891306
    Bridge "ovsbr1"
        Port "eth1.1"
            tag: 1
            Interface "eth1.1"
        Port "eth1.100"
            tag: 100
            Interface "eth1.100"
        Port "ovsvx3"
            trunks: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 20, 30, 100, 101]
            Interface "ovsvx3"
                type: vxlan
                options: {key=flow, remote_ip="2.2.2.2"}
        Port "ovsbr1.101"
            tag: 101
            Interface "ovsbr1.101"
                type: internal
        Port "ovsbr1"
            Interface "ovsbr1"
                type: internal
        Port "ovsbr1.1"
            tag: 1
            Interface "ovsbr1.1"
                type: internal
        Port "ovsbr1.100"
            tag: 100
            Interface "ovsbr1.100"
                type: internal
        Port "eth1.101"
            tag: 101
            Interface "eth1.101"
        Port "eth1"
            Interface "eth1"
    Bridge "ovsbr0"
        Port "ovsbr0"
            Interface "ovsbr0"
                type: internal
        Port "eth0"
            Interface "eth0"
    ovs_version: "2.3.1"



cat  /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

allow-ovs ovsbr0
auto ovsbr0
iface ovsbr0 inet static
        address 1.1.1.2
        netmask 255.255.255.224
        gateway 1.1.1.1
        ovs_type OVSBridge

allow-ovsbr0 eth0
auto eth0
iface eth0 inet manual
up ifconfig $IFACE 0.0.0.0 up
down ifconfig $IFACE down
ovs_bridge ovsbr0
  ovs_type OVSPort


allow-ovs ovsbr1
auto ovsbr1
iface ovsbr1 inet manual
up ifconfig $IFACE 0.0.0.0 up
down ifconfig $IFACE down
  ovs_type OVSBridge
  ovs_ports ovsbr1.1,ovsbr1.100,ovsbr1.101

allow-ovsbr1 eth1
auto eth1
iface eth1 inet manual
up ifconfig $IFACE 0.0.0.0 up
down ifconfig $IFACE down
ovs_bridge ovsbr1
  ovs_type OVSPort

allow-ovsbr1 ovsbr1.1
auto ovsbr1.1
iface ovsbr1.1 inet static
address 192.168.1.32
broadcast 192.168.1.254
netmask 255.255.255.0
mtu 1400
ovs_bridge ovsbr1
ovs_type OVSIntPort
ovs_options tag=1
ovs_extra set interface ${IFACE} external-ids:iface-id=$(hostname -s)

allow-ovsbr1 ovsbr1.100
auto ovsbr1.100
iface ovsbr1.100 inet static
address 192.168.100.32
broadcast 192.168.100.254
netmask 255.255.255.0
mtu 1400
ovs_bridge ovsbr1
ovs_type OVSIntPort
ovs_options tag=100
ovs_extra set interface ${IFACE} external-ids:iface-id=$(hostname -s)

allow-ovsbr1 ovsbr1.101
auto ovsbr1.101
iface ovsbr1.101 inet static
address 192.168.101.32
broadcast 192.168.101.254
netmask 255.255.255.0
mtu 1400
ovs_bridge ovsbr1
ovs_type OVSIntPort
ovs_options tag=101
ovs_extra set interface ${IFACE} external-ids:iface-id=$(hostname -s)

auto eth1.1
iface eth1.1 inet manual
up ifconfig $IFACE 0.0.0.0 up
down ifconfig $IFACE down
ovs_bridge ovsbr1
  ovs_type OVSPort
ovs_options tag=1

auto eth1.100
iface eth1.100 inet manual
up ifconfig $IFACE 0.0.0.0 up
down ifconfig $IFACE down
ovs_bridge ovsbr1
  ovs_type OVSPort
ovs_options tag=100

auto eth1.101
iface eth1.101 inet manual
up ifconfig $IFACE 0.0.0.0 up
down ifconfig $IFACE down
ovs_bridge ovsbr1
  ovs_type OVSPort
ovs_options tag=101


ping 192.168.1.22
PING 192.168.1.22 (192.168.1.22) 56(84) bytes of data.
^C
--- 192.168.1.22 ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 1008ms

root@nuv-vir-esx-ubuntu-2 ~ # arp n
n: Unknown host
root@nuv-vir-esx-ubuntu-2 ~ # arp -n
Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.1.102            ether   62:ca:86:a6:25:73   C                     
ovsbr1.1
192.168.1.21             ether   0e:f6:43:87:f7:2a   C                     
ovsbr1.1
192.168.1.22             ether   00:50:56:69:15:cb   C                     
ovsbr1.1
192.168.1.8              ether   52:54:00:a8:a4:37   C                     
ovsbr1.1
192.168.100.104                  (incomplete)                              
ovsbr1.100
192.168.101.104                  (incomplete)                              
ovsbr1.101
192.168.1.104            ether   56:8e:0c:62:78:ad   C                     
ovsbr1.1

1.22 is the vmkernel interface on the ESX host that hosts the VM

Thanks and cheers
marco


 <http://www.nuvula.ch/>
Marco Kuendig / CEO / Founder 
[email protected] <mailto:[email protected]> / +41 78 751 99 71

Marco's Google Hangout <https://plus.google.com/hangouts/_/nuvula.ch/marco>
Nuvula AG - Hybrid Clouds 
Weierbachstrasse 7b 8193 Eglisau Switzerland 
http://www.nuvula.ch <http://www.nuvula.ch/>
_______________________________________________
discuss mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/discuss

Reply via email to