[Bridge] Bridging eth0 and tap0 stop working after a while

Feighery,Patrick D. feighery at mitre.org
Mon Sep 19 08:38:13 PDT 2005

I've developed an TCP proxing application to improve performance over
satellite and wireless links.  When I ported it to linux I used a
combination of bridging and the tap interface to read and write
packets/frames to the physical interface.

I created two separate bridges:  aif bridges between eth2 and tap0
while bif bridges between eth1 and tap1.  After a while I noticed that
the bridge stops working.  It seems to bridge correctly for at least 8
hours then for some reason just stops.

If I tcpdump eth2, I see packets.  If I tcpdump aif, I see packets.
However if I tcpdump tap0, nothing.

I've currently using a 2.4.22-1.2115 kernel. But I believe the problem
also occurs with a 2.6.9 based kernel.

Below is a list of commands to set up the bridge.

:: ip link set dev tap0 up
:: ip link set dev tap1 up
:: brctl addbr aif
:: brctl addif aif tap0
:: brctl addif aif eth2
:: brctl stp aif off
:: ifconfig aif up
:: brctl addbr bif
:: brctl addif bif tap1
:: brctl addif bif eth0
:: brctl stp bif off
:: ifconfig bif up
:: ip addr del dev eth2
:: ifconfig aif netmask
:: ip addr del dev eth0
:: ifconfig bif netmask

Has anyone seen anything like this?  Any pointers to what I could be
doing wrong, or pointers to how I can debug thus?

Many thanks


More information about the Bridge mailing list