순수 IPv4 호스트에서 DNS AAAA 쿼리를 비활성화하는 방법은 무엇입니까?

순수 IPv4 호스트에서 DNS AAAA 쿼리를 비활성화하는 방법은 무엇입니까?

나는 적어도 세 가지 다른 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

관련 정보