Bridging two vlans on a single interface don't work ( kernel2.6.15, tg3 driver for Broadcom NetXtreme BCM5705M_2 )

"a.gatta" <[email protected]>
Newsgroups gmane.linux.drivers.vlan
Message-ID <[email protected]>
[email protected] wrote:

>Send Vlan mailing list submissions to
>	[email protected]
>
>To subscribe or unsubscribe via the World Wide Web, visit
>	http://www.lanforge.com/mailman/listinfo/vlan
>or, via email, send a message with subject or body 'help' to
>	[email protected]
>
>You can reach the person managing the list at
>	[email protected]
>
>When replying, please edit your Subject line so it is more specific
>than "Re: Contents of Vlan digest..."
>
>
>Today's Topics:
>
>   1. Bridging two vlans on a single interface don't work (
>      kernel2.6.15, tg3 driver for Broadcom NetXtreme BCM5705M_2 ) 
>      (a.gatta)
>   2. Re: Bridging two vlans on a single interface don't work (
>      kernel2.6.15, tg3 driver for Broadcom NetXtreme BCM5705M_2 )
>      (Roy-Magne Mo)
>   3. Re: Two VLANs with same IP (Rui Cristo)
>   4. QoS, setting skb->priority (Rui Cristo)
>
>
>----------------------------------------------------------------------
>
>Message: 1
>Date: Wed, 03 May 2006 14:24:58 +0200
>From: "a.gatta" <[email protected]>
>Subject: [VLAN] Bridging two vlans on a single interface don't work (
>	kernel2.6.15, tg3 driver for Broadcom NetXtreme BCM5705M_2 ) 
>To: [email protected]
>Message-ID: <[email protected]>
>Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>
>Dear List,
>I am experiencing problems bridging two vlans on a linux box running debian.
>
>I have a single interface (eth0,Broadcom NetXtreme BCM5705M_2 with tg3 
>module).
>
>This interface has a trunk to a catalyst switch.
>
> 
>I've created two virtual interface with vconfig:
>
>vconfig add eth0 608
>vconfig add eth0 609
>
>At this point all is fully functional, I am able to see traffic on those 
>virtual interfaces and if I give them the ip stack I can use them.
>
>Then I decided two bridge the two virtual interfaces.
>
>So I created a bridge with brctl :
>
>brctl addbr br0
>
>and I've added those virtual interfaces to the bridge :
>
>brctl addif br0 eth0.608
>brctl addif br0 eth0.609
>
>Last thing I enable all the interfaces :
>
>ifconfig br0 up
>ifconfig eth0.608 up
>ifconfig eth0.609 up
>
>The first thing I noticed is that I cannot see any traffic on br0 
>interface and also on the virtual interfaces.
>
>As far as I know the bridge code supports tagged packet but I am not 
>able to see any traffic on the interfaces.
>
>Moreover the tg3 module support natively vlan traffic.
>
>This is what I see on both br0 and virtual interfaces after I add them 
>to the bridge :
>
>14:23:22.539413 00:0a:b7:23:61:97 > 01:00:0c:cc:cc:cd SNAP Unnumbered, 
>ui, Flags [Command], length 50
>14:23:22.540865 00:0a:b7:23:61:97 > 01:00:0c:cc:cc:cd SNAP Unnumbered, 
>ui, Flags [Command], length 50
>
>Any ideas ?
>
>
>
>
>
>
>cisco
>
>------------------------------
>
>Message: 2
>Date: Wed, 03 May 2006 17:44:11 +0200
>From: Roy-Magne Mo <[email protected]>
>Subject: Re: [VLAN] Bridging two vlans on a single interface don't
>	work (	kernel2.6.15, tg3 driver for Broadcom NetXtreme BCM5705M_2 )
>To: "Linux 802.1Q VLAN" <[email protected]>
>Message-ID: <[email protected]>
>Content-Type: text/plain
>
>on den 03.05.2006 klokka 14:24 (+0200) skreiv a.gatta:
>  
>
>>Dear List,
>>I am experiencing problems bridging two vlans on a linux box running debian.
>>
>>I have a single interface (eth0,Broadcom NetXtreme BCM5705M_2 with tg3 
>>module).
>>
>>This interface has a trunk to a catalyst switch.
>>
>> 
>>I've created two virtual interface with vconfig:
>>
>>vconfig add eth0 608
>>vconfig add eth0 609
>>
>>At this point all is fully functional, I am able to see traffic on those 
>>virtual interfaces and if I give them the ip stack I can use them.
>>
>>Then I decided two bridge the two virtual interfaces.
>>
>>So I created a bridge with brctl :
>>
>>brctl addbr br0
>>
>>and I've added those virtual interfaces to the bridge :
>>
>>brctl addif br0 eth0.608
>>brctl addif br0 eth0.609
>>
>>Last thing I enable all the interfaces :
>>
>>ifconfig br0 up
>>ifconfig eth0.608 up
>>ifconfig eth0.609 up
>>
>>The first thing I noticed is that I cannot see any traffic on br0 
>>interface and also on the virtual interfaces.
>>
>>As far as I know the bridge code supports tagged packet but I am not 
>>able to see any traffic on the interfaces.
>>
>>Moreover the tg3 module support natively vlan traffic.
>>
>>This is what I see on both br0 and virtual interfaces after I add them 
>>to the bridge :
>>
>>14:23:22.539413 00:0a:b7:23:61:97 > 01:00:0c:cc:cc:cd SNAP Unnumbered, 
>>ui, Flags [Command], length 50
>>14:23:22.540865 00:0a:b7:23:61:97 > 01:00:0c:cc:cc:cd SNAP Unnumbered, 
>>ui, Flags [Command], length 50
>>
>>Any ideas ?
>>    
>>
>
>
>Do you see the mac address of your switch on both of these vlans on the
>cisco switch? A lot of (broken) switches will croak on traffic flowing
>this way. 
>
>
>
>
>
>------------------------------
>
>Message: 3
>Date: Wed, 3 May 2006 13:46:11 -0300 (ART)
>From: Rui Cristo <[email protected]>
>Subject: Re: [VLAN] Two VLANs with same IP
>To: "Linux 802.1Q VLAN" <[email protected]>
>Message-ID: <[email protected]>
>Content-Type: text/plain; charset="iso-8859-1"
>
>The problem was solved using SO_BINDTODEVICE to both VLANs, thanks.
>  
>Ben Greear <[email protected]> escreveu:
>  Ard van Breemen wrote:
>  
>
>>On Tue, May 02, 2006 at 11:06:49AM -0300, Rui Cristo wrote:
>>
>>    
>>
>>>I have a problem to solve that is to create two VLANs, like
>>>vlan10 and vlan20, and make them have the SAME IP address and I
>>>want to create sockets for each. How can I bind the sockets to
>>>each VLAN instead of binding them to its IP? If I bind with
>>>it's IP I can't control wich VLAN to choose.
>>>      
>>>
>>IP binding is done on a system level. So it really doesn't matter
>>if your IP is on lo or vlan*...
>>    
>>
>
>You can actually tweak this by using policy-based routing and binding
>to local IP and/or devices with sock-opts, and messing with the
>/proc/sys/net/arp filter logic..but it takes a bit of work.
>
>Ben
>
>  
>
Dear list,
I found the problem.

The switch puts in blocking state the two vlan :


3w0d: %SPANTREE-2-RECV_PVID_ERR: Received BPDU with inconsistent peer 
vlan id 608 on FastEthernet0/23 VLAN609.
3w0d: %SPANTREE-2-BLOCK_PVID_PEER: Blocking FastEthernet0/23 on 
VLAN0608. Inconsistent peer vlan.
3w0d: %SPANTREE-2-BLOCK_PVID_LOCAL: Blocking FastEthernet0/23 on 
VLAN0609. Inconsistent local vlan


sh spanning-tree int fastEthernet 0/23
....

VLAN0608         Desg BKN*19        128.23   P2p *PVID_Inc
VLAN0609         Desg BKN*19        128.23   P2p *PVID_Inc
....


This is due to the interaction between PVST+ and CST ( on linux bridge ).

This is the configuration on linux bridge :

host:/proc/net/vlan# brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.000802e842b7       yes                    eth0.609
                                                                                     
eth0.608

The int fast 0/23 is a dot1q trunk with native vlan 1.

It there any way to overcome this issue other than disable spanning tree 
on the switch port ?

Regards
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.