私は少なくとも3つの異なるLinuxインストール(Ubuntu 16.04、2017年6月28日現在、Antergos、Debian 9.0)で次の動作を観察しました。
- IPv6が構成解除されました(アドレスが割り当てられていません)。
- DNSサーバーは、実行する結果を得るためにAクエリとAAAAクエリの両方を受け取ります。
nsswitch.conf
私は何も成功せずに(オプションipnodes
)、resolv.conf
(存在しないオプションno-ipv6
)を台無しにしましたgai.conf
。
私が受け取ったCプログラムこのウェブサイトAAAA クエリは実行されません。
このシンプルで愚かなPHPプログラムは実際にAAAAとA DNSクエリの両方を実行します。
<?php
$ch = curl_init($argv[1]);
curl_exec($ch);
getaddrinfo
おそらく、何十ものクライアント(LXCコンテナ内でも)がDNSサーバーに無駄なクエリを投げてこの問題を示しているので、これらの標準システムコール(など)を介してAAAA DNSクエリを回避する方法があるかどうかを尋ねたいと思います。 )。
クライアントとDNSサーバーがIPv6用に構成されていないため、これらのAAAAクエリはIPv4を介して実行されます。
$ ip addr show dev venet0
2: venet0: <BROADCAST,POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
link/void
inet 127.0.0.2/32 scope host venet0
inet 192.168.8.40/32 brd 192.168.8.40 scope global venet0:0