Re: Bridging when one interface has no carrier

2002-10-27 Thread Lars Eggert
[Re-send, forgot to attach the patches. Argh.] Lars Eggert wrote: > This causes the problem decribed in PR kern/41632 > (http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/41632), where dhcpd > "listens" on interface A which is bridged to interface B. When A has no > carrier, DHCP requests arriving

Re: Bridging when one interface has no carrier

2002-10-27 Thread Lars Eggert
Lars Eggert wrote: This causes the problem decribed in PR kern/41632 (http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/41632), where dhcpd "listens" on interface A which is bridged to interface B. When A has no carrier, DHCP requests arriving on B are ignored. When A has a carrier, dhcp will get a

Re: Bridging when one interface has no carrier

2002-10-25 Thread Lars Eggert
Lars Eggert wrote: Attached is a rough patch to if_ethersubr.c that fixes the problem. It should probably further be tweaked (there's a chance for duplicates), but I wanted some comments first :-) Here's a revised version of the patch (against bridge.c, which is a better place for it) that onl

Re: Bridging when one interface has no carrier

2002-10-25 Thread Lars Eggert
Marko, Marko Zec wrote: This problem was also solved in the giant patch for network stack virtualization. I had looked at that patch briefly, and it looked like VERY interesting work. If it fixes the bridging code, too, it's even better - I'll definitly look forward to using it, once it has

Re: Bridging when one interface has no carrier

2002-10-25 Thread Marko Zec
Lars Eggert wrote: > The ISC dhcpd uses a bpf to "listen" on an interface. When a broadcast > packet (e.g. DHCP request) comes in on one interface, the bridging code > will correctly forward it out all the other interfaces in the cluster, > and also deliver it locally. However, it will not send co

Re: Bridging when one interface has no carrier

2002-10-24 Thread Lars Eggert
Hi, I debugged this a bit further and figured out what the problem is. The ISC dhcpd uses a bpf to "listen" on an interface. When a broadcast packet (e.g. DHCP request) comes in on one interface, the bridging code will correctly forward it out all the other interfaces in the cluster, and also