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

Re: v6ops-v6onbydefault: link-locals and AI_ADDRCONFIG




On Mon, 3 Nov 2003, Keith Moore wrote:

> > On Mon, Nov 03, 2003 at 10:42:02AM -0500, Keith Moore wrote:
> > > I don't think that we should be defining getaddrinfo() in terms of
> > > "whatever lookup service happens to be around" because it's very
> > > difficult to get reliable and repeatable behavior that way.
> >
> > Isn't the DNS a lookup service that happens to be around ?
>
> DNS is a specific lookup service.  not a random one that just might happen
> to be around.
>
> > The purpose of getaddrinfo is to perform network address and service
> > translation. Whilst a portable, granular, interface to DNS would be
> > very much welcome - getaddrinfo should not be it.
>
> Perhaps.  But if getaddrinfo isn't the service that does DNS lookups,
> then at least some apps should not be using it.


getaddrinfo() and getnameinfo() was developed as a generalisation of
gethostbyname() and gethostbyaddr(). Thus, from pragmatic point of view
should follow the behaviour of the extended functions (gethostbyname etc.)

Basically if you call them you are rely on the several different name
service functions controlled by local configuration (e.g nsswitch.conf
resolv.conf etc.)

>
> Well, link-local addresses should never be in DNS in the first place.

Yes this is advisable!

> My argument is not that link-local addresses should be returned by
> getaddrinfo() , it is that getaddrinfo() should be transparent.

Completely agree. The getaddrinfo() should be completely transparent from
programmers' point of view. The local setup should be system/environment
specific. I think the cleanest solution would be to setup the DNS
resolution order locally by administrator: IPv6 address-resolution enable,
and order of IPv4/IPv6 address-resolution. In my opinion, this should be
included the resolver code and configurable from resolv.conf.

We already have sortlist: IPv6 should be added, and then we could
configure whether we want IPv6 address or IPv4 in the first place. To
disable IPv6 DNS query should be configurable one the _res.options e.g
RES_NO_INET6_QUERY.  The current default is to do IPv6 RR query, so that
one could be disabled.

I strongly against the idea, to change the current default behavior of
IPv6 applications without setting up new things. The compatibility is one
of the most important feature that we have to keep!

Regards,
	Janos Mohacsi

--------------------------------------------------------------------
IETF IPv6 working group mailing list
ipv6@ietf.org
Administrative Requests: https://www1.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------