Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 Apr 2005 18:39:41 -0400
From:      Damian Gerow <dgerow@afflictions.org>
To:        stable@freebsd.org
Subject:   TXCSUM on bge0 breaks bridging
Message-ID:  <20050424223941.GN720@afflictions.org>

next in thread | raw e-mail | index | archive | help
Someone just helped me through a bridging problem I was having, and I
thought I'd throw the problem out to the list to see if it's a bug, or at
least, for archival purposes.

I have a machine that I'm using as a workstation, that I would also like to
use to bridge a home LAN.  It has two interfaces: bge and fxp.

    bge0 -> 172.19.206.56
    fxp0 -> ipless

When I bridged the two interfaces, the workstation could only talk on the
bge side of the network, not the fxp side.  Note that any device on either
side of the network could speak to the other side.

Some initial debugging:

    # sysctl net.link.ether.bridge
    net.link.ether.bridge.version: 031224
    net.link.ether.bridge.debug: 0
    net.link.ether.bridge.ipf: 0
    net.link.ether.bridge.ipfw: 0
    net.link.ether.bridge.copy: 0
    net.link.ether.bridge.ipfw_drop: 0
    net.link.ether.bridge.ipfw_collisions: 0
    net.link.ether.bridge.packets: 2687590
    net.link.ether.bridge.dropped: 0
    net.link.ether.bridge.predict: 70
    net.link.ether.bridge.enable: 1
    net.link.ether.bridge.config: fxp0 bge0
    #

I tcpdump'ed on the fxp interface, and could see a device nab an address via
DHCP, and an ARP to the device from my workstation seemed to work, but I
could not ping it.  It was pointed out to me that the fxp does off-board
checksumming, and what would happen if I disabled the one on bge0?  Well, it
fixed the problem.

I can have TXCSUM enabled *only* on fxp0, not on bge0: so long as TXCSUM is
disabled on bge0, irregardless of the state of fxp0, I can talk to any
device attached to fxp0.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050424223941.GN720>