西村です。 Reply to <86h6z5bnmc.wl-...@mahoroba.org> Hajimu UMEMOTO <u...@mahoroba.org> wrote: > getent(1) は伝統的な getXXX(3) を呼び出します。hosts の場合は > gethostbyname(3) と IPv6 の場合は gethostbyname2(1) を呼び出し、それら > の結果を出力します。 > > getaddrinfo(1) は getaddrinfo(3) を呼び出します。今時のアプリの多くは > getaddrinfo(3) を呼び出すようになっていますから、実際のアプリを使った > 場合と同じ検索を行うことができます。
なるほど、 getaddrinfo を使う方が、現状のアプリの実際の挙動に近い結果が得られると言う事ですね > 例えば、IPv6 と IPv4 のどちらを優先するかは ip6addrctl(8) で設定できま > すが、getaddrinfo(1) の出力順はこの設定に従います。 > getent(1) は IPv6 → IPv4 の順で出力します。 この違いは全く知りませんでした 確かに言われてみれば、IPv4とIPv6アドレスがあるのに なんでIPv6が有るのに繋ぎに行かないのかな? なんて思っていましたが ip6addrctl の重み付けは名前解決の段階で行われていたのですね ありがとうございました -- NISHIMURA,Yutaka./西村ゆたか <iscr...@nugae.org>