From owner-freebsd-net@FreeBSD.ORG Thu Jul 17 17:09:18 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 74920106564A for ; Thu, 17 Jul 2008 17:09:18 +0000 (UTC) (envelope-from julian@elischer.org) Received: from outM.internet-mail-service.net (outm.internet-mail-service.net [216.240.47.236]) by mx1.freebsd.org (Postfix) with ESMTP id 667E28FC1B for ; Thu, 17 Jul 2008 17:09:18 +0000 (UTC) (envelope-from julian@elischer.org) Received: from idiom.com (mx0.idiom.com [216.240.32.160]) by out.internet-mail-service.net (Postfix) with ESMTP id 104D82486 for ; Thu, 17 Jul 2008 10:09:19 -0700 (PDT) Received: from julian-mac.elischer.org (localhost [127.0.0.1]) by idiom.com (Postfix) with ESMTP id 0F4022D6023 for ; Thu, 17 Jul 2008 10:09:17 -0700 (PDT) Message-ID: <487F7C0C.8090303@elischer.org> Date: Thu, 17 Jul 2008 10:06:20 -0700 From: Julian Elischer User-Agent: Thunderbird 2.0.0.14 (Macintosh/20080421) MIME-Version: 1.0 To: FreeBSD Net Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Requesting comments on Multi-routing table usage 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: Thu, 17 Jul 2008 17:09:18 -0000 The current code in -current will add a new interface to all FIBs. So for example when you add a gre interface irt shows up everywhere. This behaviour is probbaly correct for the base NICs on the system when you boot, but it is probably wrong in other cases. For example, when mpd makes tunnels it probably (but not always) wants to add that set of routes into one FIB. Similarly for other apps that can create tunnels. What is needed is a way to allow the caller to somehow specify the behaviour wanted whenever new interfaces are added. various things crossed my minds.. ------------- Maybe real hardware shoudl go everywhere and virtual should go to the FIB of the creator Maybe P2P interfaces should not go everywhere. Maybe a sysctl can be used to 'flip' teh mode from "everywhere" to "specific fib" after boot has completed. (I have code for this but it's not the perfect solution). Maybe ifconfig can set a new flag somewhere somehow. Maybe a process can set a flag for itself saying what its mode is.. ---------- The trouble is that there is not an "always correct" answer. some people may want to see a tunnel turn up on all FIBs and others may not.