tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: connect to 0.0.0.0 vs ::



>> What they [do] is to connect to one of the listen address [...]
> As soon as I sent the last note I figured out why this is probably a
> good idea.

I'm of two minds as to whether this actually is a good idea.  On the
one hand....

> If you run on a host without a loopback address for whatever reason

...then a bunch of other stuff will break too.

> (if you use multiple routing tables/vrf's/domains it can be boring to
> configure a loopback in every one)

It's boring to have to set up a default route in each one, too.  Should
apache include a full routing engine to make up for that (potential)
defect as well?!

If you don't want to have to configure something manually for every
routing domain, it seems to me the sensible thing is to make routing
domain setup configure it automatically.

But, on the other hand...

It _is_ logically coherent to want a way to say "connect to the local
wildcard listener bound to this port", if there is such a listener.
That's the only thing I can think of that using :: or 0.0.0.0 as a
connect-to address could reasonably do, and that is the most sensible
way I can think of offhand to express that desire.  And the specs I
cited upthread, as someone else already indirectly pointed out,
constrain behaviour on the wire but not behaviour internal to a host.

So, depending on exactly what it is that Linux does with such
connection attempts, I may want to retract my remarks about it being
broken, and I think making connection attempts to :: or 0.0.0.0 connect
to the wildcard listener for the port in question, or fail if there is
no such, would be a sane thing for NetBSD to do.

I would still call Apache broken in the portability sense that there
are relatively popular IP stacks that don't work that way, but that's a
separate issue.

/~\ The ASCII				  Mouse
\ / Ribbon Campaign
 X  Against HTML		mouse%rodents-montreal.org@localhost
/ \ Email!	     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B


Home | Main Index | Thread Index | Old Index