Skip site navigation (1)Skip section navigation (2)
Date:      24 Sep 2001 13:00:58 -0700
From:      swear@blarg.net (Gary W. Swearingen)
To:        Joe Abley <jabley@automagic.org>
Cc:        Juha Saarinen <juha@saarinen.org>, "'Andrew Reilly'" <areilly@bigpond.net.au>, freebsd-stable@FreeBSD.ORG
Subject:   Re: 127/8 continued
Message-ID:  <swr8swwe85.8sw@localhost.localdomain>
In-Reply-To: <20010924070102.I4205@buffoon.automagic.org>
References:  <20010924160936.A10863@gurney.reilly.home> <00e001c144c8$c33bf900$0a01a8c0@den2> <20010924070102.I4205@buffoon.automagic.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Joe Abley <jabley@automagic.org> writes:

> RFC 1122, "Requirements for Internet Hosts -- Communication Layers"
> provides guidance for the interpretation of any address within
> 127/8 -- it says such addresses are for use as "internal host loopback
> addresses". RFC 1122 is STD 3, an Official Internet Protocol Standard,
> and hence is worth complying with.

Are IANA/IETF/Internet standards EVER applicable to what goes on inside
our computers?   Or just to the data crossing our Internet interfaces?
(Not rhetorical - I'm wondering.)

> RFC 1122 does not state that "every possible address within 127/8
> must be treated as though it is a configured loopback address",
> and to interpret it as such is bizarre and counter-intuitive.

Be nice; that's a tough thing to say convincingly, intuitions being what
they are.  I don't think the RFC should even be addressing the issue,
but if FreeBSD goes along and uses 127/8 address as "internal host
loopback addresses" (as quoted above), it seems fair (and intuitive) to
me to say that those addresses should have no other use and it would
both keep them inside the host and save people the effort of configuring
separate loopback aliases if they need them.  FreeBSD does 127.0.0.1 for
free; it might as well do them all, especially since it's no extra
effort (more than blackholing them).

> Installing a null covering route for 127/8 with the blackhole bit
> set seems a good way of preventing addresses with a destination
> within 127/8 from being sent out on a non-loopback interface, without
> resorting to nasty hacks which make address handling on the loopback
> interface different to every other interface. It is also consistent
> with the robustness principle.

I don't see need for any hack. (None beyond the need to mess with this
stuff at all. I think this stuff would be better hidden and out of the
routing table listings, boot scripts, etc.)  Having loopback addresses
automatically loop back shouldn't suprise anyone.

Now, maybe I'd need to modify my opinion if the lo(4) man page indicated
that the "pseudo-device loop" KERNCONF line had "[count]" in which case
it probably wouldn't make sense to have all loopback addresses looping
back to the same lo0 by default. (I saw some code which looked like it
supported multiple "lo#"s, but the man page and LINT give no hint of it.)

>   route add 127.0.0.0 -netmask 255.0.0.0 -iface lo0 -blackhole

I sure don't see how anyone could get that from the "route" man page.
I'd write a PR+patch on it if I had a clue.  I think it needs to say
that the gateway may be specified as "interface" (eg, "lo0") when the
"-iface" modifier is used (the page implies that's only valid with
"-interface").  Is the placement of modifiers critical?  The man page's
syntax lines looks wrong, as does the discussion of the specification of
netmasks.

> But, whatever. This is hardly a monumental requirement worth bickering
> over.

But apparently worthwhile to Joe, me, and others, if not FreeBSD.  Looks
to me like a (sometime-counter-productive ;-) attempt to discourage other
opinions.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?swr8swwe85.8sw>