From owner-freebsd-hackers Wed Sep 11 15:32:50 1996 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id PAA08265 for hackers-outgoing; Wed, 11 Sep 1996 15:32:50 -0700 (PDT) Received: from mail.cdsnet.net (mail.cdsnet.net [204.118.244.5]) by freefall.freebsd.org (8.7.5/8.7.3) with SMTP id PAA08251 for ; Wed, 11 Sep 1996 15:32:48 -0700 (PDT) Received: from mail.cdsnet.net (mail.cdsnet.net [204.118.244.5]) by mail.cdsnet.net (8.6.12/8.6.12) with SMTP id PAA11515 for ; Wed, 11 Sep 1996 15:32:43 -0700 Date: Wed, 11 Sep 1996 15:32:43 -0700 (PDT) From: Jaye Mathisen Reply-To: Jaye Mathisen To: hackers@freebsd.org Subject: Routed issues, and some questions on the routed code. Looks flaky. Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk I have FreeBSD acting as a router on several boxes here, and for some weird reason, it's broadcasting itself as the default route on all interfaces, even ones where is doesn't make sense. ie: Net A + --- +-----------+ | FBSD1 | Cisco to rest of world Net B + --- +-----------+ \ / Net C / \ Net D + --- +-----------+ Node X | FBSD2 | Net E + --- +-----------+ The Cisco is kicking out RIP packets saying it has the default route. So far so good. But routed running on FBSD1 is broadcasting to Net A, Net B, and Net C that it has the default route. So Node X running routed -q sees first the Cisco as the default, then FBSD1, then FBSD2. Everything works, because they get redirected when the packets for off-site get to FBSD1 then the static route apparently takes over and it sends them to the Cisco, and so on. But I want FBSD1 to advertise via RIP that it has Net A and B, and on the Net A/B side I want it to advertise itself as the default, but on the C side, I want it to just send out that it's the router for A and B and STFU about the default. Similar things apply to FBSD2. I'm running the -current routed on everything, but no luck so far. On the Cisco I can put a distribute list to tell it not to blab some of this stuff (or rather the second cisco not shown going off to the FR cloud). But I don't see that functionality. I mucked with putting stuff in /etc/gateways, but routed hollers if the Cisco is marked passive, since it actually kicks out routing info. There appears to be some funkyness in the parms.c file for routed as well. "active" is listed on the man page as a valid parameter, but when going through the code, it doesn't appear to be valid. Also, the test for active implies that somehow you can get a "null" (\0) in the field and that's used to determine remote gateways, but I can't see how you can even get to the if statement, since you have to match 5 parameters in the scanf above, and with nothing after the metric number, you only get 4. SO I think there's some flakiness in the code.