![DNS 查找忽略 AAAA (IPv6),而支持 A (IPv4)](https://linux22.com/image/1040847/DNS%20%E6%9F%A5%E6%89%BE%E5%BF%BD%E7%95%A5%20AAAA%20(IPv6)%EF%BC%8C%E8%80%8C%E6%94%AF%E6%8C%81%20A%20(IPv4).png)
当我尝试解析同时包含两种记录类型的名称时,操作系统会返回 A 记录。跟踪显示,首先返回 AAAA 记录,然后返回 A,但应用程序(基于 Apache 的 HTTP GET、nslookup 或 dig)始终返回 v4 地址。
我运行的是双栈、单网卡机器,安装了 Ubuntu 12.04.1 LTS。我的本地网络是 v4,互联网上只有 v6。我的 resolv.conf 仅配置了 v6(Google)名称服务器,并且我的 gai.conf 没有非注释/空白行,这些行应该使用默认顺序。
根据其他帖子,我尝试添加options inet6
并resolv.conf
修改了以下几行gai.conf
:
label ::1/128 0
label ::/0 1
label 2002::/16 2
label ::/96 3
label ::ffff:0:0/96 4
label fec0::/10 5
label fc00::/7 6
#label 2001:0::/32 7
两者都没有改变结果。有人知道发生了什么吗?
谢谢。
答案1
dig(1)
表示“如果没有提供类型参数,dig 将执行 A 记录查找。”换句话说,如果您想要,则需要指定 AAAA。nslookup
默认情况下也会查找 A 记录。
例如:“dig google.com AAAA”将返回 google.com 的 IPv6 地址
我通常使用host
,因为默认情况下它会查找 A、AAAA 和 MX 记录。