tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: About bridges



Greg Troxel wrote:
At this point I think it's probably time for you to dig into debugging the
kernel.  It sounds like there might be a problem

Sure, but I was hoping that someone who already is familiar with kernel
programming and the bits involved would wake up and save me the trouble :-)

[tcpdump doesn't show all packets on tap]
The problem could be about the bpf_tap calls as well as forwarding.

Alright, I don't know how that works.

I am unclear on the details, but it's not immediately obvious what running
STP on one interface and not another interface of a bridge means.  I think
it's just that the protocol is spoken on one and thus it's eligible to be
disabled, and that isn't true of the other.  A bridge with tap0 and
physical0 can't have a loop (unless you make a second bridge or something)
so you could leave that out to simplify.

I tried leaving it out but it just makes configuring instant because the bridge
doesn't have to go through the listening/learning phases before forwarding
packets.
AFAIK STP couldn't hurt anything, but you're absolutely right to invoke
occam's razor here.

My only hint is don't assume that you must be doing something wrong. It's
possible that bridge support has gotten broken somehow.  I had trouble with
it under I think 7 and 8 with vr0 (net5501) and I just stopped using it.
There, it was about which mac address was used for NDP and I would get
broken v6 connectivity because hosts on e.g. vr0 were using the ethernet
address of vr2 in the IPv6 NDP tables, or something like that.

One issue is that tap0 will show "status: no carrier", presumably because
the controlling device isn't open.   That tends to cause various things to
behave differently.

So maybe you want something like tap, but that thinks it is connected to an
ethernet that is valid but has nothing else.   That may be doable by
opening /dev/tap0 and just throwing away read data, and it might be that
tap should have  link0 flag that means 'pretend there is carrier'.

Thanks for the confidence :-)

I'm not sure what you mean about carrier though, ifconfig tap0 has no status
field and always seems to be up (no tentative addresses for instance, which
was the problem with configured-but-without-cable real interfaces somewhere
in the beginning of this thread).

Staffan



Home | Main Index | Thread Index | Old Index