Date: Fri, 21 Apr 2000 20:02:01 +0100 From: Nik Clayton <nik@freebsd.org> To: Nik Clayton <nik@freebsd.org> Cc: hackers@freebsd.org Subject: Re: No route for 127/8 to lo0 (?) Message-ID: <20000421200201.A34984@catkin.nothing-going-on.org> In-Reply-To: <20000331125739.A97865@catkin.nothing-going-on.org>; from nik@freebsd.org on Fri, Mar 31, 2000 at 12:57:40PM %2B0100 References: <20000331125739.A97865@catkin.nothing-going-on.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Mar 31, 2000 at 12:57:40PM +0100, Nik Clayton wrote: > In the course of debugging why Samba was bringing my modem link up > periodically, I discovered it was sending netbios packets to > 127.255.255.255. Because the relevent entries from the routing table > looked like > > Destination Gateway Flags Refs Use Netif Expire > default 158.152.1.222 UGSc 22 0 tun0 > 127.0.0.1 127.0.0.1 UH 0 201 lo0 > [...] > > 127.255.255.255 was going out of the default route, tun0, and bringing > the line up. [...] > I thought that 127/8 was the "local net", and that packets sent to any of > those addresses would go via the loopback interface. That seems to be > how Linux and Windows 98 do things (the only systems I can check this on > at the moment). Assuming that's the case, why does FreeBSD only add a > a host route to 127.0.0.1, and not a network route for 127/8? Various > other people have confirmed that they only have a 127.0.0.1 host route > as well, so I don't believe this is a misconfiguration of my system. No one's actually been able to answer this, save a few comments that the loopback interface is special-cased to do this in the code, and that the code in question is quite old. In light of that, I'd like to commit: Index: rc.network =================================================================== RCS file: /home/ncvs/src/etc/rc.network,v retrieving revision 1.74 diff -u -r1.74 rc.network --- rc.network 2000/02/29 12:53:28 1.74 +++ rc.network 2000/04/21 18:48:15 @@ -254,6 +254,9 @@ done fi + # 127/8 goes through lo0. + route add -net 127 -interface lo0 + echo -n 'Additional routing options:' case ${tcp_extensions} in [Yy][Ee][Ss] | '') as a stop gap. FWIW, the code in question is sys/netinet/in.c:in_ifinit(), around line 701. Comments? N -- Internet connection, $19.95 a month. Computer, $799.95. Modem, $149.95. Telephone line, $24.95 a month. Software, free. USENET transmission, hundreds if not thousands of dollars. Thinking before posting, priceless. Somethings in life you can't buy. For everything else, there's MasterCard. -- Graham Reed, in the Scary Devil Monastery To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000421200201.A34984>