查看域名的IPv6地址,最直接的方法是使用系统自带的nslookup或dig命令查询AAAA记录;如果域名没有配置IPv6,则查询结果为空,这时需要联系管理员添加AAAA记录。
为什么你的域名需要IPv6地址
如今运营商和云厂商都在加速普及IPv6,很多家庭宽带和5G手机网络默认分配IPv6地址,如果网站只有IPv4记录,这些用户访问时可能要经过运营商级的NAT转换,速度变慢不说,部分网络环境甚至直接无法访问,行业共识认为,未来两三年内IPv6流量占比会持续上升,提前给域名配上AAAA记录是迟早要做的事。
要查看一个域名当前的IPv6解析情况,本质上就是查询它的AAAA记录,这个记录保存了域名和IPv6地址的对应关系,类似于IPv4世界的A记录,下面从命令行、在线工具、DNS服务商后台三个角度来说清楚具体怎么查。
用命令行查看域名IPv6地址
命令行是排查域名解析问题最可靠的途径,不依赖任何网页,也不会被缓存干扰,Windows、macOS、Linux都有相应办法。
Windows系统:使用nslookup
打开命令提示符或PowerShell,输入:
nslookup -type=AAAA 你的域名
把“你的域名”换成你要查的域名,比如www.example.com,系统会返回类似这样的结果:
名称: www.example.com
地址: 240e:db8:2000:3000::1
如果返回“找不到主机”或者空地址,说明该域名当前没有IPv6记录,注意有些域名本身没有AAAA记录,但CDN节点有,这种情况下查询源站域名可能查不到,需要查实际访问的域名。
Linux和macOS:使用dig命令
dig输出的信息比nslookup更详细,是运维人员最常用的工具,执行:
dig AAAA 你的域名
重点看“ANSWER SECTION”部分,每一行代表一条AAAA记录。
;; ANSWER SECTION:
www.example.com. 600 IN AAAA 240e:db8:2000:3000::1
TTL值为600秒,表示这条记录在DNS缓存中最多存活10分钟,如果不想看多余信息,可以加+short参数,只输出地址:
dig +short AAAA 你的域名
用host命令快速验证
比dig更简洁的是host命令,同样常见于Linux系统:
host -t AAAA 你的域名
返回格式类似“你的域名 has IPv6 address 240e:db8:2000:3000::1”,适合只想看一眼结果、不关心细节的场景。
在线工具查询域名IPv6解析记录
不想开终端的话,在线工具更方便,不过要注意,这类工具通常默认查A记录,需要手动切换到AAAA查询。
国内常用工具:站长工具、爱站网
打开站长工具的“DNS查询”页面,输入域名后选择“AAAA”类型,即可看到IPv6地址,爱站网的用法类似,操作路径基本一致,这类工具适合快速验证自己网站的IPv6配置是否生效,域名解析IPv6查询方法”,在线的操作逻辑和命令行完全一样都是向DNS服务器发起AAAA记录请求,只不过工具帮你省略了参数。
国际通用工具:DNSPod、Google Public DNS
如果怀疑本地DNS缓存导致结果不准,可以直接查询公共DNS服务器,DNSPod的“DNS诊断”功能支持自定义DNS服务器,填入2400:3200::1或8.8.8,能避开本地运营商DNS缓存,也可以直接用Google Public DNS的网页版查询接口,它会从全球多个节点给你返回解析结果,适合判断自己的宽带运营商是否屏蔽了某些IPv6路由。
从域名DNS服务商后台查看
如果你就是这个域名的管理者,直接在DNS控制台看最省事,登录酷番云DNSPod、简米云云解析、Cloudflare等后台,找到域名解析列表,过滤记录类型为“AAAA”的条目即可看到已配置的IPv6地址,这里能看到源站地址、TTL、是否启用CDN加速等信息。
区分解析记录和实际连通性
后台显示有AAAA记录,不代表IPv6通畅,你需要用ping -6测试实际连通情况:
ping -6 你的域名
如果返回类似Reply from 240e:db8:2000:3000::1: time=20ms,说明IPv6解析和路由都正常,如果超时,可能是防火墙或运营商路由问题,这时候要检查源站服务器的IPv6网络配置。
如何判断域名是否需要添加IPv6地址
先查一下当前域名有没有AAAA记录,如果没有,再结合以下几个场景判断是否要补上:
- 你的网站面向家庭宽带用户,而国内主要运营商早已全面分配IPv6地址
- 你的服务器或云主机本身有IPv6地址,只是没绑定域名
- 你的网站主要用户群在移动端,5G网络下IPv6占比已经相当高
符合任一条件,建议尽快添加,添加方法很简单:在DNS解析服务商后台新增一条“AAAA”记录,主机记录填或www,记录值填服务器的IPv6地址,TTL保持默认即可,生效时间一般在几分钟到24小时不等,取决于之前设置的TTL值。
关于IPv6地址查询的常见误区
很多人第一次查IPv6地址时,容易混淆以下概念:
域名IPv6地址不等于服务器IPv6地址
域名只是解析到IPv6地址,真正提供服务的是服务器,如果你在云控制台看到服务器的IPv6地址,但DNS记录里没有对应AAAA记录,那么外部用户仍然无法通过IPv6访问你的网站,两者要通过解析记录关联起来。
一个域名可以有多条AAAA记录
和A记录一样,AAAA记录也支持多条,用于负载均衡,查询时如果看到多个IPv6地址,这是正常现象,代表域名解析到了多个节点,比如www.baidu.com在部分区域可能返回两个AAAA地址。
没有IPv6地址不代表域名有问题
纯粹只有IPv4的域名仍然正常工作,只是无法被纯IPv6网络环境直接访问,目前主流操作系统和浏览器都支持双栈,大部分用户会先尝试IPv4连接,失败后再尝试IPv6,反之亦然。
查看域名IPv6地址时如何验证结果是否准确
验证不只是“看到地址”这么简单,需要经过几个步骤才能确认解析真正可用:
- 使用
dig @8.8.8.8 AAAA 域名查询公共DNS,排除本地缓存干扰 - 用
ping -6 域名看是否收到ICMPv6响应 - 用
curl -6 http://域名测试HTTP服务是否能通过IPv6正常访问 - 访问
ipv6-test.com这类网站,输入域名查看综合评分
如果以上全部通过,基本可以断定该域名的IPv6解析和连通性都没问题。
Q&A:域名IPv6地址查询常见问题
怎么查某个域名的IPv6地址是否生效?
执行dig +short AAAA 域名,然后等几秒钟再执行一次,看返回结果是否一致且非空,如果第一次为空、第二次有地址,说明记录刚刚生效;如果多次都为空,说明该域名还没有配置IPv6解析记录。
查IPv6地址用什么命令最准确?
dig命令准确度最高,因为能指定DNS服务器、显示TTL、避免缓存干扰,Windows没有内置dig,可以安装之后使用,或者直接用nslookup -type=AAAA代替,两种方式结果一致,只是dig的调试信息更丰富。
IPv6地址查询工具哪个支持批量查询?
Norsecar和站长工具提供批量DNS查询功能,输入最多20个域名,可以一次性返回每个域名的AAAA记录,但注意批量查询的频率限制比较严格,一次性查询太多域名容易被封IP,建议每次不超过10个。