[ovs-discuss] [OVS] bridges with vlan trunk and one interface

LACROIX Jean Marc jeanmarc.lacroix at free.fr
Mon Mar 28 16:41:39 UTC 2016


Le 28/03/2016 18:26, Scott Lowe a écrit :
> Please see my response below.
>
>
>> On Mar 28, 2016, at 10:12 AM, LACROIX Jean Marc <jeanmarc.lacroix at free.fr> wrote:
>>
>> HI experts,
>>
>> I am migrating from linux brctl to ovs on recent kernel (3.16.0-4-amd64 Debian) and ovs 2.3.
>>
>> With my current configuration (brctl), my VLAN trunk is entering on eth0 and i have one interface (eth0.ii) with ii for VLAN VID.
>>
>> My goal is to create as many as VLAN bridge as in the following example. Each bridge is used to uncap the 802.1Q
>>
>> For example, with one trunk with 2 VLAN,
>> # brctl show
>> bridge name     bridge id    STP enabled     interfaces
>> br-admin    8000.001a64a0e452  no     e0-cloud-adm
>>                                       eth0.9
>>
>> br-wifi-usr 8000.001a64a0e452  no     e2-cloud-wifi
>>                                       eth0.11
>>
>>
>> I try to mimic the same behaviour with a first bridge according following command
>>
>> sudo ovs-vsctl add-br br-net-wifi && \
>> sudo ovs-vsctl add-port br-net-wifi eth-11-wifi tag=11 -- set interface eth-11-wifi  type=internal && \
>> sudo ovs-vsctl add-port br-net-wifi eth0
>>
>> admlocal at syspeo:~$ sudo ovs-vsctl show
>> 25f2d62b-88b1-4315-9bad-ae8c8aaa9cd4
>>     Bridge br-net-wifi
>>         Port br-net-wifi
>>             Interface br-net-wifi
>>                 type: internal
>>         Port "eth0"
>>             Interface "eth0"
>>         Port "eth-11-wifi"
>>             tag: 11
>>             Interface "eth-11-wifi"
>>                 type: internal
>>     ovs_version: "2.3.0"
>>
>> is ok and dhclient run perfectly
>>
>> admlocal at syspeo:~$ dhclient -v eth-11-wifi
>> -bash: dhclient : commande introuvable
>> admlocal at syspeo:~$ sudo dhclient -v eth-11-wifi
>> Internet Systems Consortium DHCP Client 4.3.1
>> Copyright 2004-2014 Internet Systems Consortium.
>> All rights reserved.
>> For info, please visit https://www.isc.org/software/dhcp/
>>
>> Listening on LPF/eth-11-wifi/b2:a2:79:b4:75:c9
>> Sending on   LPF/eth-11-wifi/b2:a2:79:b4:75:c9
>> Sending on   Socket/fallback
>> DHCPDISCOVER on eth-11-wifi to 255.255.255.255 port 67 interval 4
>> DHCPREQUEST on eth-11-wifi to 255.255.255.255 port 67
>> DHCPOFFER from 192.168.11.244
>> DHCPACK from 192.168.11.244
>> bound to 192.168.11.168 -- renewal in 30 seconds.
>>
>> When i repeat operation, but for one another VLAN and of course one another bridge, i have following error
>>
>> sudo ovs-vsctl add-br br-net-trusted  && \
>> sudo ovs-vsctl add-port br-net-trusted eth-12-trus tag=12 -- set interface eth-12-trus type=internal && \
>> sudo ovs-vsctl add-port br-net-trusted eth0
>>
>> ovs-vsctl: cannot create a port named eth0 because a port named eth0 already exists on bridge br-net-wifi
>>
>>
>> admlocal at syspeo:~$ sudo ovs-vsctl show
>> 25f2d62b-88b1-4315-9bad-ae8c8aaa9cd4
>>     Bridge br-net-wifi
>>         Port br-net-wifi
>>             Interface br-net-wifi
>>                 type: internal
>>         Port "eth0"
>>             Interface "eth0"
>>         Port "eth-11-wifi"
>>             tag: 11
>>             Interface "eth-11-wifi"
>>                 type: internal
>>     Bridge br-net-trusted
>>         Port "eth-12-trus"
>>             tag: 12
>>             Interface "eth-12-trus"
>>                 type: internal
>>         Port br-net-trusted
>>             Interface br-net-trusted
>>                 type: internal
>>     ovs_version: "2.3.0"
>>
>>
>> How can i  bind eth-12-trus to eth0  in order to emulate old 802.1Q Linux eth0.12 interface ?
>
>
> If you want multiple bridges, then don't add eth0 to the bridge; instead, add the VLAN sub-interface (eth0.9 or eth0.12) to each VLAN-specific bridge.
>
> If you don't want to deal with VLAN sub-interfaces, then use a single bridge with eth0 and then tag your eth-11-wifi/eth-12-trus interfaces. You may need to adjust the native VLAN/untagged VLAN behavior, depending on your upstream switch.
>

admlocal at syspeo:~$ sudo ovs-vsctl show
25f2d62b-88b1-4315-9bad-ae8c8aaa9cd4
     Bridge br-net-trusted
         Port "eth-12-trus"
             tag: 12
             Interface "eth-12-trus"
                 type: internal
         Port br-net-trusted
             Interface br-net-trusted
                 type: internal
     ovs_version: "2.3.0"

admlocal at syspeo:~$ sudo ovs-vsctl add-port br-net-trusted eth0.12
ovs-vsctl: Error detected while setting up 'eth0.12'.  See ovs-vswitchd 
log for details.

Problem is that the bridge is changed event with error ?

admlocal at syspeo:~$ sudo ovs-vsctl show
25f2d62b-88b1-4315-9bad-ae8c8aaa9cd4
     Bridge br-net-trusted
         Port "eth0.12"
             Interface "eth0.12"
         Port "eth-12-trus"
             tag: 12
             Interface "eth-12-trus"
                 type: internal
         Port br-net-trusted
             Interface br-net-trusted
                 type: internal


and in /var/log/openvswitch/ovs-vswitchd.log

2016-03-28T16:53:54.708Z|00100|connmgr|INFO|br-net-wifi: added service 
controller "punix:/var/run/openvswitch/br-net-wifi.mgmt"
2016-03-28T16:53:54.736Z|00101|bridge|WARN|could not open network device 
eth0.11 (No such device)
2


Another simple test with a fresh ovs
admlocal at syspeo:~$ sudo ovs-vsctl show
25f2d62b-88b1-4315-9bad-ae8c8aaa9cd4
     ovs_version: "2.3.0"
admlocal at syspeo:~$ sudo ovs-vsctl add-br br-net-wifi && sudo ovs-vsctl 
add-port br-net-wifi eth0.11
ovs-vsctl: Error detected while setting up 'eth0.11'.  See ovs-vswitchd 
log for details.
admlocal at syspeo:~$ sudo ovs-vsctl show
25f2d62b-88b1-4315-9bad-ae8c8aaa9cd4
     Bridge br-net-wifi
         Port "eth0.11"
             Interface "eth0.11"
         Port br-net-wifi
             Interface br-net-wifi
                 type: internal
     ovs_version: "2.3.0"
admlocal at syspeo:~$



-- 
--------------------------------------
  -- Jean-Marc LACROIX                 --
   -- mailto : jeanmarc.lacroix at free.fr --
     ---------------------------------------



More information about the discuss mailing list