From owner-freebsd-net Fri Jul 27 4:10:17 2001 Delivered-To: freebsd-net@freebsd.org Received: from purus.tcoip (unknown [200.199.244.162]) by hub.freebsd.org (Postfix) with ESMTP id A280937B405 for ; Fri, 27 Jul 2001 04:10:14 -0700 (PDT) (envelope-from daniel.sobral@tcoip.com.br) Received: from tcoip.com.br (nd9g0gqnkp059tsi@dcs.tcoip.com.br [192.168.60.194]) by purus.tcoip (8.11.1/8.11.1) with ESMTP id f6RB8uA03288; Fri, 27 Jul 2001 08:08:56 -0300 Message-ID: <3B614BC8.7040904@tcoip.com.br> Date: Fri, 27 Jul 2001 08:08:56 -0300 From: "Daniel C. Sobral" User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:0.9.2) Gecko/20010705 X-Accept-Language: en, pt-br, ja MIME-Version: 1.0 To: zebra@zebra.org, net@freebsd.org Subject: Re: [zebra 9651] RE: Linux/Ethernet interface status? Linux & BSD References: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org Bulger, Tim wrote: > Well, the verdict is in... FreeBSD does know the interface status (per > ifconfig), but neither the kernel nor zebra reacts to the cable being > pulled. This seems basically broken from a kernel perspective. It doesn't > make sense to retain connected and/or static routes in the routing table for > an interface that is down. If you have two static routes for the same > network with different metrics as a simple failover scheme, it will not work > on these systems because the route with the lower metric is never removed > from the table....... Perhaps this is OK from a workstation perspective, > but this is not suitable for a router. I will be investigating ways to work > around this problem without compromising sanity. The kernel _should not_ react in any such way. In first place, an "no route to host" error is a very different one from lost packets, so the kernel must not presume any knowledge of what you want. Second, if it deletes the static routes it will not know what these are when the interface conectivity is restored. A routing demon, such as Zebra, would be in a proper place to take decisions like this. This would be an ideal application for kqueue. Is there any kqueue events for interface status? -- Daniel C. Sobral (8-DCS) Daniel.Sobral@tcoip.com.br dcs@newsguy.com dcs@freebsd.org capo@notorious.bsdconspiracy.net Maybe Computer Science should be in the College of Theology. -- R. S. Barton To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message