[Bridge] Re: My configuration in Bridge, 802.1Q VLAN, and hotmail login, Thanks to all

Stephen Hemminger shemminger at osdl.org
Thu Dec 2 09:48:23 PST 2004


On Thu, 2 Dec 2004 20:10:58 -0800
"kingz" <jzhang at cienettechnologies.com> wrote:

> Hi All,
> 
> For my issue, first thanks to ALL, I have some idea of it.
> Also Thank Peter for his kind remind, I would become one good guy in
> this list.
> 
> Most mentioned MTU, but how I assure that the problem is just MTU, how I
> debug it?
> Here is my bridge configuration:
> Internet
>        |
>        |
>   Gateway
>        |
>        |   eth0
> Ethernet Bridge
>        |   eth1
>        |
>      H u b    ( one normal hub or switch , no VLAN settings)
>       |   \
>       |     \
>   D-Link  802.1Q VLAN Switches (their uplink port-port 1  connected to
> the upper hub are tagged, those ports connected with PCs are untagged).
> 
> Bridge configuration:
> Linux 2.4.26 ( kernel built in bridge function)
> Eth0   RTL8139 driver
> Eth1   Intel e100 NIC with eepro100 driver
> 
> With VLAN tag, I met the hotmail login error, if without VLAN tag, all
> are OK!
> 
> Peter and Ben suggested me use intel NICs, I have one intel e100 NIC and
> e1000 NIC, e1000 NIC is OK, but I cannt use the e100 card with the e100
> driver( from both Linux 2.4.26 and Intel site e100-3.2.3), so I only use
> eepro100 driver.
> How I can use the e100 with e100 driver? Can I use e100 and e1000
> together( use them as eth0,1)?
> Any one can help me?

There is some confusion about mtu and VLAN. Does mtu include VLAN tag or not?
E100 allows the VLAN tag to be included (ie. actual_size > nic->netdev->mtu + VLAN_ETH_HLEN)
but other drivers don't and the MTU reported to the bridge doesn't include the
VLAN tag. 

You could change:
	
int br_dev_queue_push_xmit(struct sk_buff *skb)
{
	if (skb->len > skb->dev->mtu) 
		kfree_skb(skb);
to:

int br_dev_queue_push_xmit(struct sk_buff *skb)
{
	if (skb->len > skb->dev->mtu + 4) 
		kfree_skb(skb);




More information about the Bridge mailing list