From owner-freebsd-net@FreeBSD.ORG Wed Apr 6 12:41:14 2011 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 DD837106564A for ; Wed, 6 Apr 2011 12:41:14 +0000 (UTC) (envelope-from if@freebsd.org) Received: from chile.gbit.at (ns1.xip.at [193.239.188.99]) by mx1.freebsd.org (Postfix) with ESMTP id 4B5898FC0C for ; Wed, 6 Apr 2011 12:41:13 +0000 (UTC) Received: (qmail 14271 invoked from network); 6 Apr 2011 14:41:12 +0200 Received: from unknown (HELO filebunker.xip.at) (89.207.145.147) by chile.gbit.at with (DHE-RSA-AES256-SHA encrypted) SMTP; 6 Apr 2011 14:41:12 +0200 Date: Wed, 6 Apr 2011 14:41:11 +0200 (CEST) From: Ingo Flaschberger X-X-Sender: if@filebunker.xip.at To: freebsd-net@freebsd.org In-Reply-To: Message-ID: References: User-Agent: Alpine 2.00 (LRH 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; format=flowed; charset=US-ASCII Subject: Re: Routing enhancement - reduce routing table locking 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: Wed, 06 Apr 2011 12:41:14 -0000 Hi, regarding multipath problems: Setup which should work: +--------+ +--------+ |Router A|----(ospf)----|Router B| +--------+ +--------+ |(carp) |(carp) | | +----------+-----------+ | Lan Router A & B run quagga and exchange routing table. Router B has during failover of carp a route to lan via ospf/router A and a direct connected interface. Thus FreeBSD carp is not able to handle this correctly, I use a modified version of ucarp. Testsetup: +---------+ (em1) +-----+ | FreeBSD |--------------|Probe| +---------+ +-----+ Probe: 10.13.13.95/24 FreeBSD: em2: 10.11.11.100/24 ++ probe answer ping -- probe does not answer ping Script: --- snip --- ifconfig em1 alias 10.13.13.90/24 ping -c 1 10.13.13.95 ++ route add 10.13.13.0/24 10.11.11.1 -weight 2 ping -c 1 10.13.13.95 ++ route add 10.13.13.0/24 10.11.11.2 -weight 3 ping -c 1 10.13.13.95 ++ route delete 10.13.13.0/24 10.11.11.1 ping -c 1 10.13.13.95 ++ route delete 10.13.13.0/24 10.11.11.2 ping -c 1 10.13.13.95 ++ ifconfig em1 -alias 10.13.13.90 ping -c 1 10.13.13.95 -- route add 10.13.13.0/24 10.11.11.1 -weight 2 ping -c 1 10.13.13.95 -- ifconfig em1 alias 10.13.13.90/24 ping -c 1 10.13.13.95 ++ route add 10.13.13.0/24 10.11.11.2 -weight 3 ping -c 1 10.13.13.95 ++ ifconfig em1 -alias 10.13.13.90 ping -c 1 10.13.13.95 -- route delete 10.13.13.0/24 10.11.11.1 ping -c 1 10.13.13.95 -- route delete 10.13.13.0/24 10.11.11.2 ping -c 1 10.13.13.95 -- route add 10.13.13.0/24 10.11.11.1 -weight 2 ping -c 1 10.13.13.95 -- route add 10.13.13.0/24 10.11.11.2 -weight 3 ping -c 1 10.13.13.95 -- ifconfig em1 alias 10.13.13.90/24 ping -c 1 10.13.13.95 ++ route delete 10.13.13.0/24 10.11.11.2 ping -c 1 10.13.13.95 ++ route delete 10.13.13.0/24 10.11.11.1 ping -c 1 10.13.13.95 ++ ifconfig em1 -alias 10.13.13.90 -- route add 10.13.13.0/24 10.11.11.1 ifconfig em1 alias 10.13.13.90/24 ifconfig em1 down ifconfig em1 up ifconfig em1 down ifconfig em1 -alias 10.13.13.90 route delete 10.13.13.0/24 10.11.11.1 ifconfig em1 alias 10.13.13.90/24 route add 10.13.13.0/24 10.11.11.1 ifconfig em1 down ifconfig em1 up ifconfig em1 down --- snap --- If this script runs without any kernels errors (dmesg), crashes and probe replies accordingly - then everything is alright. Mit freundlichen Gruessen, Ingo Flaschberger Geschaeftsleitung ____________________________________ crossip communications gmbh A-1020 Wien, Sebastian Kneipp Gasse 1/3 Sitz der Gesellschaft: 1020 Wien, Oesterreich Firmenbuchgericht: Handelsgericht Wien, FN 269698 s, Umsatzsteueridentifikationsnummer (UID): ATU62080367 Haftungsausschluss / Disclaimer