Carsten | 7 Oct 13:43 2009
Picon

Problem Forwarding Bridge to Tap Device

Hello,
I have a problem with bridge and tap network where I can't find a solution 

first my scenario

[ETHx][PC1] <-> [Switch] <-> [PC2][ETHx][VLANx][BR0][TAP0][VBox]

Switchport of PC1 is untagged in VLANx,  Switchport of PC2 is tagged in the same VLAN. I can see the packets
running as I want over all components. 

Now my Problem

I send a Ping from VBox to PC1 all works fine, while the ping is running I restart PC1, as suggested ping now fail.
After PC1 is up again packet transport should work correctly, but it doesn't  (exactly some times is ok, some
times problem comes after 5th reboot or so but is coming if I have enough reboots of PC1)   .
So find the problem I dump the traffic of VLANx, BR0 and TAP0. 
What I see:
 <at> VLANx: arp request and reply 
 <at>  BR0: arp request and reply
 <at>  TAP0: arp request
So I think the bridge stop forwarding packets to the TAP device and I don't understand why.  Have anyone an
idea? 

Thx for help
---- 
versendet mit www.oleco.de Mail - Anmeldung und Nutzung kostenlos!
Oleco www.netlcr.org - jetzt auch mit Spamschutz.
NITIN SS | 7 Oct 22:22 2009
Picon

Distributed RSTP

Hi,
 
I am new to this RSTP/Bridge group and currently planning on distributed RSTP.
 
First of all, Distributed RSTP mean as, we will have 8 linux RSTPs and they all will have the same Bridge ID.
As all bridges will have the same Bridge ID so I need to sync many variables functions across all units.
Additionally there should be only one root port for all the eight bridges.
In this way there should be one master which would be maintaing bridge variables and controlling bridge operations.
There is only point to point link between all bridges through master.
Additioanlly most of the RSTP state machines are port based so it looks feasible.
 
As your guys are RSTP experts, so i think it would be the right place to get suggestions/comments.
 
-What would be the limitations/complex Issues?
-Is it feasible?
 At top level it looks like there would be lot of efforts with respect to final outcome.
-Is there any implementation of distributed RSTP?
 
Appreciate your comments.
 
Regards,
Nitin
_______________________________________________
Bridge mailing list
Bridge <at> lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/bridge
Mircea Gherzan | 9 Oct 04:10 2009
Picon
Picon

bridge in promiscuous mode

Hi,

I'm pretty new to bridging and I'm stumbling upon some strange
behaviour. Please imagine the following simple topology:

    device				laptop
---------------
|br0 |  wlan0 |  (-------802.11 g------) wlan1
---------------

* layer2 between the two wlan's is working.
* all 3 interfaces are on the same subnet. 
* On the device, the only route to that subnet is via br0.
* br0 has a different MAC from the one of wlan0
* STP is disabled
* the device is running 2.6.31 vanilla

If PROMISC is NOT enabled on br0, I can't ping it from wlan1. I could
observe the following with tcpdump -p:
* br0 correctly receives ARP request and sends out replies 
* ICMP echo packet reach wlan0, but
* no ICMP packets reach br0 (the only frames that reach br0 are ARP)

On the other hand, if PROMISC is enabled on br0, pinging it from wlan1
just works. 

I've checked the bridging page from the LF wiki, and I've disabled the
bridge-nf-* entries, but the behaviour did no change.

My goals are the following:
* no IP address on wlan0
* different MACs on br0 and wlan0
* br0 reachable from wlan1

Please, can anyone help me on this one?

Thanks,
Mircea

--

-- 
Dipl.-Ing. Mircea Gherzan
Stephen Hemminger | 9 Oct 08:01 2009

Re: Distributed RSTP

On Wed, 7 Oct 2009 13:22:44 -0700
NITIN SS <hi.nitin2000 <at> gmail.com> wrote:

> Hi,
> 
> I am new to this RSTP/Bridge group and currently planning on distributed
> RSTP.
> 
> First of all, Distributed RSTP mean as, we will have 8 linux RSTPs and they
> all will have the same Bridge ID.

So you plan to take a perfectly good spec 802.1d and break it.
Why?

> As all bridges will have the same Bridge ID so I need to sync many variables
> functions across all units.

You are off in never-never fantasy land. Stop and ask why are you
doing this? It is like the old joke: "Doctor it hurts when I hit
my head with my fist..."

> Additionally there should be only one root port for all the eight bridges.
> In this way there should be one master which would be maintaing bridge
> variables and controlling bridge operations.
> There is only point to point link between all bridges through master.
> Additioanlly most of the RSTP state machines are port based so it looks
> feasible.
> 
> As your guys are RSTP experts, so i think it would be the right place to get
> suggestions/comments.
> 
> -What would be the limitations/complex Issues?
> -Is it feasible?
>  At top level it looks like there would be lot of efforts with respect to
> final outcome.
> -Is there any implementation of distributed RSTP?
> 
> Appreciate your comments.
> 
> Regards,
> Nitin

--

-- 
Philipp Gühring | 15 Oct 16:54 2009
Picon

Linux Dynamic Bridging Support

Hi,

The scenario I have is that I have a computer with one network interface
eth0, that is receiving it's configuration through DHCP, and uses
complex firewalling rules for eth0.

Now I want to add a virtual machine on that computer

According to the usual recipies, I have to do the following:

ifconfig eth0 0.0.0.0
brctl addbr br0
brctl addif br0 eth0
dhclient br0

Afterwards I can add interfaces to the bridge:
brctl addif br0 tun0

This has several disadvantages:
* It causes a network outage for up to a few seconds (mostly due to the
unnecessary DHCP)
* It does not migrate the firewall rules to br0
* It breaks all firewall-rules that were written for eth0
* If I use eth0 in the office today, wlan0 at home, and ppp0 when I am
outside, then I would need lots of different scripts for all the
different bridging combinations.

Now the idea is to add migration support to Linux Bridging.

It could look like this:

brctl addbr br0
brctl takeif br0 eth0

take-interface would migrate the IP address, and routing entries from
the eth0 interface to the bridge, in a more-or-less atomic fashion, and
add eth0 as interface to the brige. It would also adapt iptables-rules
that were written for eth0 to be pointing to br0 now.

To release the bridge again, it could be done like this:
brctl releaseif br0 eth0
brctl delbr br0

Since all that is a bit complex, I still have an alternative proposal:
What if we bridge-enable all normal interfaces?
It could look like this:

brctl enablebr eth0

This would enable bridging mode for the eth0 interface. It automatically
is able to use the DHCP ip address it was given, the firewalling, ...
I can then easily add additional interfaces to the bridge-enabled
interface like this:

brctl addif eth0 tun0

And I don't need to worry about DHCP, firewalls, ... anymore.

So my question now is:
Which way should we go? Migrating interface configuration into bridges,
or bridge-enabling interfaces?

Best regards,
Philipp Gühring
Nicolas de Pesloüan | 15 Oct 21:36 2009
Picon

Re: Linux Dynamic Bridging Support

Philipp Gühring a écrit :
> Hi,
> 
> The scenario I have is that I have a computer with one network interface
> eth0, that is receiving it's configuration through DHCP, and uses
> complex firewalling rules for eth0.
> 
> Now I want to add a virtual machine on that computer
> 
> According to the usual recipies, I have to do the following:
> 
> ifconfig eth0 0.0.0.0
> brctl addbr br0
> brctl addif br0 eth0
> dhclient br0
> 
> Afterwards I can add interfaces to the bridge:
> brctl addif br0 tun0
> 
> This has several disadvantages:
> * It causes a network outage for up to a few seconds (mostly due to the
> unnecessary DHCP)
> * It does not migrate the firewall rules to br0
> * It breaks all firewall-rules that were written for eth0
> * If I use eth0 in the office today, wlan0 at home, and ppp0 when I am
> outside, then I would need lots of different scripts for all the
> different bridging combinations.
> 
> Now the idea is to add migration support to Linux Bridging.
> 
> It could look like this:
> 
> brctl addbr br0
> brctl takeif br0 eth0
> 
> take-interface would migrate the IP address, and routing entries from
> the eth0 interface to the bridge, in a more-or-less atomic fashion, and
> add eth0 as interface to the brige. It would also adapt iptables-rules
> that were written for eth0 to be pointing to br0 now.
> 
> To release the bridge again, it could be done like this:
> brctl releaseif br0 eth0
> brctl delbr br0
> 
> Since all that is a bit complex, I still have an alternative proposal:
> What if we bridge-enable all normal interfaces?
> It could look like this:
> 
> brctl enablebr eth0
> 
> This would enable bridging mode for the eth0 interface. It automatically
> is able to use the DHCP ip address it was given, the firewalling, ...
> I can then easily add additional interfaces to the bridge-enabled
> interface like this:
> 
> brctl addif eth0 tun0
> 
> And I don't need to worry about DHCP, firewalls, ... anymore.
> 
> So my question now is:
> Which way should we go? Migrating interface configuration into bridges,
> or bridge-enabling interfaces?

So you expect some changes in the kernel to reduce the complexity of the scripts that manage your 
different network setup... I'm not sure that adding complexity into the kernel to reduce a script 
complexity is about to happen at some time... :-)

If building a generic script for your network setup is really too complex, you can try and 
dynamically rename your interfaces... For example, you arrange for ppp0, eth0 or br0 to be named 
myinterface0, based on your current needs, then setup myinterface0, with the setup you expect.

HTH.

	Nicolas.
Joachim Schiele | 25 Oct 02:38 2009
Picon

using a bridge (setting priority eth0 > ath0)

hello,

what i want to do:
having two computers both equipped with:
lspci
01:09.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit 
Ethernet (rev 10)
01:0a.0 Ethernet controller: Atheros Communications Inc. AR5212/AR5213 
Multiprotocol MAC/baseband processor (rev 01)

i create two bridges (one on each host)
pc2b ~ # brctl show br0
bridge name     bridge id               STP enabled     interfaces
br0             0000.0040f4a0b037       yes             ath0
                                                        eth0

and then i set all interfaces up using:
ip l set ath0 up
ip l set eth0 up
ip l set br0 up

i put one ath0 interface into master mode and the other ath0 is a normal 
station (client). the connections eth0-eth0 works great, also the ath0-ath0 
link works great (tested with and without bridge).

in general everything works, if i either one of the 4 interfaces down 
(eth0/eth0/ath0/ath0) stp's work creates a working path in no time.

the issue is - the reason i write to this list however:
when all interfaces are up the data always is going over ath0-ath0 instead of 
eth0-eth0. (the wireless lan should be my backup link).

i issues setbridgeprio br0 1 and setbridgeprio br0 10. as well as setpathcost 
with various consistent experiments. say one experiment i set all ath0 
pathcosts to a value 100 all eth0 to 999. 
i don't see any difference when doing the opposite.

any idea? 

dmesg added but i don't see anything special there. there was an error once 
but i think that might have something todo with the routing loop i caused 
(which i resolved with adding setfd with a higher value).

thanks,
joachim schiele

============ pc2 ==============
dmesg
br0: port 2(ath0) entering forwarding state
br0: topology change detected, propagating
br0: port 1(eth0) entering forwarding state
eth0: received packet with  own address as source address
eth0: received packet with  own address as source address
br0: no IPv6 routers present
br0: received tcn bpdu on port 1(eth0)
br0: topology change detected, propagating
br0: port 2(ath0) entering disabled state
br0: port 2(ath0) entering listening state
br0: port 2(ath0) entering learning state
br0: topology change detected, propagating
br0: port 2(ath0) entering forwarding state
ath0: no IPv6 routers present
br0: received tcn bpdu on port 1(eth0)
br0: topology change detected, propagating
br0: port 2(ath0) entering disabled state
br0: port 2(ath0) entering listening state
br0: port 2(ath0) entering learning state
br0: topology change detected, propagating
br0: port 2(ath0) entering forwarding state
ath0: no IPv6 routers present
br0: received tcn bpdu on port 1(eth0)
br0: topology change detected, propagating

ip l
14: ath0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc noqueue 
state UNKNOWN
    link/ether 00:40:f4:a0:b0:37 brd ff:ff:ff:ff:ff:ff
3: eth0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast 
state UP qlen 1000
    link/ether 00:40:f4:eb:16:45 brd ff:ff:ff:ff:ff:ff

pc2b ~ # brctl show
bridge name     bridge id               STP enabled     interfaces
br0             0000.0040f4a0b037       yes             ath0
                                                        eth0
pc2b ~ # brctl showstp br0
br0
 bridge id              0000.0040f4a0b037
 designated root        0000.0040f4a0b037
 root port                 0                    path cost                  0
 max age                   9.99                 bridge max age             
9.99
 hello time                1.99                 bridge hello time          
1.99
 forward delay             2.99                 bridge forward delay       
2.99
 ageing time               3.99
 hello timer               1.49                 tcn timer                  
0.00
 topology change timer     0.00                 gc timer                   
1.49
 flags

ath0 (2)
 port id                0402                    state                
forwarding
 designated root        0000.0040f4a0b037       path cost                999
 designated bridge      0000.0040f4a0b037       message age timer          
0.00
 designated port        0402                    forward delay timer        
0.00
 designated cost           0                    hold timer                 
0.48
 flags

eth0 (1)
 port id                2801                    state                
forwarding
 designated root        0000.0040f4a0b037       path cost                111
 designated bridge      0000.0040f4a0b037       message age timer          
0.00
 designated port        2801                    forward delay timer        
0.00
 designated cost           0                    hold timer                 
0.48
 flags

arp -e
10.0.0.1                 ether   00:40:f4:a0:b0:00   C                     br0

============ pc6 ==============
ip l
17: ath0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc noqueue 
state UP
    link/ether 00:40:f4:a0:b0:00 brd ff:ff:ff:ff:ff:ff
3: eth0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast 
state UP qlen 1000
    link/ether 00:40:f4:ec:59:06 brd ff:ff:ff:ff:ff:ff

dmesg
eth0: received packet with  own address as source address
eth0: received packet with  own address as source address
__ratelimit: 9560 callbacks suppressed
eth0: received packet with  own address as source address
eth0: received packet with  own address as source address
eth0: received packet with  own address as source address
eth0: received packet with  own address as source address
eth0: received packet with  own address as source address
eth0: received packet with  own address as source address
eth0: received packet with  own address as source address
eth0: received packet with  own address as source address
eth0: received packet with  own address as source address
eth0: received packet with  own address as source address
br0: port 2(ath0) entering disabled state
__ratelimit: 7851 callbacks suppressed
eth0: received packet with  own address as source address
br0: port 2(ath0) entering listening state
br0: port 2(ath0) entering learning state
br0: topology change detected, sending tcn bpdu
br0: port 2(ath0) entering forwarding state
br0: port 2(ath0) entering disabled state
eth0: received packet with  own address as source address
br0: port 2(ath0) entering listening state
br0: port 2(ath0) entering learning state
br0: topology change detected, sending tcn bpdu
br0: port 2(ath0) entering forwarding state
br0: port 2(ath0) entering disabled state
eth0: received packet with  own address as source address
br0: port 2(ath0) entering listening state
br0: port 2(ath0) entering learning state
br0: topology change detected, sending tcn bpdu
br0: port 2(ath0) entering forwarding state

arp -e
PC2                      ether   00:40:f4:a0:b0:37   C                     br0

pc2b ~ # brctl  show
bridge name     bridge id               STP enabled     interfaces
br0             0000.0040f4a0b037       yes             ath0
                                                        eth0
pc2b ~ # brctl showstp br0
br0
 bridge id              0000.0040f4a0b037
 designated root        0000.0040f4a0b037
 root port                 0                    path cost                  0
 max age                   9.99                 bridge max age             
9.99
 hello time                1.99                 bridge hello time          
1.99
 forward delay             2.99                 bridge forward delay       
2.99
 ageing time               3.99
 hello timer               1.20                 tcn timer                  
0.00
 topology change timer     0.00                 gc timer                   
0.20
 flags

ath0 (2)
 port id                0402                    state                
forwarding
 designated root        0000.0040f4a0b037       path cost                999
 designated bridge      0000.0040f4a0b037       message age timer          
0.00
 designated port        0402                    forward delay timer        
0.00
 designated cost           0                    hold timer                 
0.20
 flags

eth0 (1)
 port id                2801                    state                
forwarding
 designated root        0000.0040f4a0b037       path cost                111
 designated bridge      0000.0040f4a0b037       message age timer          
0.00
 designated port        2801                    forward delay timer        
0.00
 designated cost           0                    hold timer                 
0.20
 flags
Nicolas de Pesloüan | 27 Oct 23:55 2009
Picon

Re: using a bridge (setting priority eth0 > ath0)

Joachim Schiele wrote:
> hello,
> 
> what i want to do:
> having two computers both equipped with:
> lspci
> 01:09.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit 
> Ethernet (rev 10)
> 01:0a.0 Ethernet controller: Atheros Communications Inc. AR5212/AR5213 
> Multiprotocol MAC/baseband processor (rev 01)

For this kind of setup, if might be easier to setup a bonding interface, instead of a bridge interface.

With a bonding setup, you can define a primary adapter that will be used when available.

	Nicolas.

> 
> i create two bridges (one on each host)
> pc2b ~ # brctl show br0
> bridge name     bridge id               STP enabled     interfaces
> br0             0000.0040f4a0b037       yes             ath0
>                                                         eth0
> 
> and then i set all interfaces up using:
> ip l set ath0 up
> ip l set eth0 up
> ip l set br0 up
> 
> i put one ath0 interface into master mode and the other ath0 is a normal 
> station (client). the connections eth0-eth0 works great, also the ath0-ath0 
> link works great (tested with and without bridge).
> 
> in general everything works, if i either one of the 4 interfaces down 
> (eth0/eth0/ath0/ath0) stp's work creates a working path in no time.
> 
> the issue is - the reason i write to this list however:
> when all interfaces are up the data always is going over ath0-ath0 instead of 
> eth0-eth0. (the wireless lan should be my backup link).
> 
> i issues setbridgeprio br0 1 and setbridgeprio br0 10. as well as setpathcost 
> with various consistent experiments. say one experiment i set all ath0 
> pathcosts to a value 100 all eth0 to 999. 
> i don't see any difference when doing the opposite.
> 
> any idea? 
> 
> dmesg added but i don't see anything special there. there was an error once 
> but i think that might have something todo with the routing loop i caused 
> (which i resolved with adding setfd with a higher value).
> 
> thanks,
> joachim schiele
> 
> 
> 
> 
> 
> ============ pc2 ==============
> dmesg
> br0: port 2(ath0) entering forwarding state
> br0: topology change detected, propagating
> br0: port 1(eth0) entering forwarding state
> eth0: received packet with  own address as source address
> eth0: received packet with  own address as source address
> br0: no IPv6 routers present
> br0: received tcn bpdu on port 1(eth0)
> br0: topology change detected, propagating
> br0: port 2(ath0) entering disabled state
> br0: port 2(ath0) entering listening state
> br0: port 2(ath0) entering learning state
> br0: topology change detected, propagating
> br0: port 2(ath0) entering forwarding state
> ath0: no IPv6 routers present
> br0: received tcn bpdu on port 1(eth0)
> br0: topology change detected, propagating
> br0: port 2(ath0) entering disabled state
> br0: port 2(ath0) entering listening state
> br0: port 2(ath0) entering learning state
> br0: topology change detected, propagating
> br0: port 2(ath0) entering forwarding state
> ath0: no IPv6 routers present
> br0: received tcn bpdu on port 1(eth0)
> br0: topology change detected, propagating
> 
> ip l
> 14: ath0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc noqueue 
> state UNKNOWN
>     link/ether 00:40:f4:a0:b0:37 brd ff:ff:ff:ff:ff:ff
> 3: eth0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast 
> state UP qlen 1000
>     link/ether 00:40:f4:eb:16:45 brd ff:ff:ff:ff:ff:ff
> 
> pc2b ~ # brctl show
> bridge name     bridge id               STP enabled     interfaces
> br0             0000.0040f4a0b037       yes             ath0
>                                                         eth0
> pc2b ~ # brctl showstp br0
> br0
>  bridge id              0000.0040f4a0b037
>  designated root        0000.0040f4a0b037
>  root port                 0                    path cost                  0
>  max age                   9.99                 bridge max age             
> 9.99
>  hello time                1.99                 bridge hello time          
> 1.99
>  forward delay             2.99                 bridge forward delay       
> 2.99
>  ageing time               3.99
>  hello timer               1.49                 tcn timer                  
> 0.00
>  topology change timer     0.00                 gc timer                   
> 1.49
>  flags
> 
> 
> ath0 (2)
>  port id                0402                    state                
> forwarding
>  designated root        0000.0040f4a0b037       path cost                999
>  designated bridge      0000.0040f4a0b037       message age timer          
> 0.00
>  designated port        0402                    forward delay timer        
> 0.00
>  designated cost           0                    hold timer                 
> 0.48
>  flags
> 
> eth0 (1)
>  port id                2801                    state                
> forwarding
>  designated root        0000.0040f4a0b037       path cost                111
>  designated bridge      0000.0040f4a0b037       message age timer          
> 0.00
>  designated port        2801                    forward delay timer        
> 0.00
>  designated cost           0                    hold timer                 
> 0.48
>  flags
> 
> arp -e
> 10.0.0.1                 ether   00:40:f4:a0:b0:00   C                     br0
> 
> 
> 
> 
> 
> 
> 
> 
> 
> ============ pc6 ==============
> ip l
> 17: ath0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc noqueue 
> state UP
>     link/ether 00:40:f4:a0:b0:00 brd ff:ff:ff:ff:ff:ff
> 3: eth0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast 
> state UP qlen 1000
>     link/ether 00:40:f4:ec:59:06 brd ff:ff:ff:ff:ff:ff
> 
> dmesg
> eth0: received packet with  own address as source address
> eth0: received packet with  own address as source address
> __ratelimit: 9560 callbacks suppressed
> eth0: received packet with  own address as source address
> eth0: received packet with  own address as source address
> eth0: received packet with  own address as source address
> eth0: received packet with  own address as source address
> eth0: received packet with  own address as source address
> eth0: received packet with  own address as source address
> eth0: received packet with  own address as source address
> eth0: received packet with  own address as source address
> eth0: received packet with  own address as source address
> eth0: received packet with  own address as source address
> br0: port 2(ath0) entering disabled state
> __ratelimit: 7851 callbacks suppressed
> eth0: received packet with  own address as source address
> br0: port 2(ath0) entering listening state
> br0: port 2(ath0) entering learning state
> br0: topology change detected, sending tcn bpdu
> br0: port 2(ath0) entering forwarding state
> br0: port 2(ath0) entering disabled state
> eth0: received packet with  own address as source address
> br0: port 2(ath0) entering listening state
> br0: port 2(ath0) entering learning state
> br0: topology change detected, sending tcn bpdu
> br0: port 2(ath0) entering forwarding state
> br0: port 2(ath0) entering disabled state
> eth0: received packet with  own address as source address
> br0: port 2(ath0) entering listening state
> br0: port 2(ath0) entering learning state
> br0: topology change detected, sending tcn bpdu
> br0: port 2(ath0) entering forwarding state
> 
> arp -e
> PC2                      ether   00:40:f4:a0:b0:37   C                     br0
> 
> pc2b ~ # brctl  show
> bridge name     bridge id               STP enabled     interfaces
> br0             0000.0040f4a0b037       yes             ath0
>                                                         eth0
> pc2b ~ # brctl showstp br0
> br0
>  bridge id              0000.0040f4a0b037
>  designated root        0000.0040f4a0b037
>  root port                 0                    path cost                  0
>  max age                   9.99                 bridge max age             
> 9.99
>  hello time                1.99                 bridge hello time          
> 1.99
>  forward delay             2.99                 bridge forward delay       
> 2.99
>  ageing time               3.99
>  hello timer               1.20                 tcn timer                  
> 0.00
>  topology change timer     0.00                 gc timer                   
> 0.20
>  flags
> 
> 
> ath0 (2)
>  port id                0402                    state                
> forwarding
>  designated root        0000.0040f4a0b037       path cost                999
>  designated bridge      0000.0040f4a0b037       message age timer          
> 0.00
>  designated port        0402                    forward delay timer        
> 0.00
>  designated cost           0                    hold timer                 
> 0.20
>  flags
> 
> eth0 (1)
>  port id                2801                    state                
> forwarding
>  designated root        0000.0040f4a0b037       path cost                111
>  designated bridge      0000.0040f4a0b037       message age timer          
> 0.00
>  designated port        2801                    forward delay timer        
> 0.00
>  designated cost           0                    hold timer                 
> 0.20
>  flags
> _______________________________________________
> Bridge mailing list
> Bridge <at> lists.linux-foundation.org
> https://lists.linux-foundation.org/mailman/listinfo/bridge
> 

Gmane