Date: Tue, 26 Feb 2008 11:51:38 -0500 From: Boris Kochergin <spawk@acm.poly.edu> To: Eugene Grosbein <eugen@kuzbass.ru> Cc: freebsd-net@freebsd.org Subject: Re: if_gif/if_bridge problem Message-ID: <47C4439A.9050502@acm.poly.edu> In-Reply-To: <20080226162307.GA80931@svzserv.kemerovo.su> References: <47C428EC.3090909@acm.poly.edu> <20080226162307.GA80931@svzserv.kemerovo.su>
next in thread | previous in thread | raw e-mail | index | archive | help
Eugene Grosbein wrote: > On Tue, Feb 26, 2008 at 09:57:48AM -0500, Boris Kochergin wrote: > > >> bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu >> 1500 >> ether 3e:7f:e8:ef:f6:a4 >> inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255 >> id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15 >> maxage 20 holdcnt 6 proto rstp maxaddr 100 timeout 1200 >> root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0 >> member: gif6 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP> >> > > [skip] > > >> So, the tunnels and bridges appear to be sending the traffic around >> properly, but the concentrator machine isn't replying to ARP requests >> for its bridge0 interface's IP. This is where I'm stuck. Any help is >> appreciated. >> > > The problem is that if_bridge(4) won't work this way - with only one gif-member > without patching. I've faced this recently and debugged it in detail. > Then I've produced a patch and now I run it over a month in production > without a problem: > > ftp://www.kuzbass.ru/pub/freebsd/lagg-0.1.tgz > > Description inside, in Russian. In short: if_gif(4) no more kills > ethernet frames returned by if_bridge(4) as designated for upper levels > of TCP/IP stack but really passes them there. If the patched system > does not have EtherIP-tunnels then the patch affects nothing, > so it's safe to apply it. Also, you need not to reboot the system > if you load if_gif/if_bridge as modules, just rebuld and reload these. > > The patch applies to all of 6.2, 6.3-PRERELEASE and 7.0-PRERELEASE, > and works (tested). > > My task was a bit more complex so the patch touches if_lagg(4) too > but you need not use lagg(4) if you do not need it. The patch just > contains the solution for your problem too. > > You can read detailed discussion in Russian there: > http://groups.google.com/group/fido7.ru.unix.bsd/browse_thread/thread/d6787b865515a66a/488d738afc265b19 > > Eugene Grosbein > I just tested it on my 7.0-RC1 setup and it did indeed take care of the problem. Thank you very much! -Boris
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47C4439A.9050502>