From owner-freebsd-net@FreeBSD.ORG Tue Feb 26 16:51:52 2008 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 791B91065677 for ; Tue, 26 Feb 2008 16:51:52 +0000 (UTC) (envelope-from spawk@acm.poly.edu) Received: from acm.poly.edu (acm.poly.edu [128.238.9.200]) by mx1.freebsd.org (Postfix) with ESMTP id 3A02613C4CE for ; Tue, 26 Feb 2008 16:51:52 +0000 (UTC) (envelope-from spawk@acm.poly.edu) Received: (qmail 26514 invoked from network); 26 Feb 2008 16:55:43 -0000 Received: from unknown (HELO ?10.0.0.199?) (spawk@128.238.64.31) by acm.poly.edu with AES256-SHA encrypted SMTP; 26 Feb 2008 16:55:43 -0000 Message-ID: <47C4439A.9050502@acm.poly.edu> Date: Tue, 26 Feb 2008 11:51:38 -0500 From: Boris Kochergin User-Agent: Thunderbird 2.0.0.9 (X11/20071208) MIME-Version: 1.0 To: Eugene Grosbein References: <47C428EC.3090909@acm.poly.edu> <20080226162307.GA80931@svzserv.kemerovo.su> In-Reply-To: <20080226162307.GA80931@svzserv.kemerovo.su> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-net@freebsd.org Subject: Re: if_gif/if_bridge problem X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Feb 2008 16:51:52 -0000 Eugene Grosbein wrote: > On Tue, Feb 26, 2008 at 09:57:48AM -0500, Boris Kochergin wrote: > > >> bridge0: flags=8843 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 >> > > [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