最近在折腾办公室的IPv6 环境,通过ipv6-test.com测试的时候,对页面内的“DNS”的测试结果有点疑问。
- DNS4 + IP6
- Connectivity to an IPv6 address served by an IPv4-only name server
- DNS6 + IP4
- Connectivity to an IPv4 address served by an IPv6-only name server
- DNS6 + IP6
- Connectivity to an IPv6 address served by an IPv6-only name server
看下页面的网络请求,三种测试用例分别请求的地址:
- DNS4 + IP6
- v6.zone4.ipv6-test.com
- AAAA 记录:2001:41d0:8:e8ad::1
- DNS6 + IP4
- v4.zone6.ipv6-test.com
- A 记录:5.135.165.173
- DNS6 + IP6
- v6.zone6.ipv6-test.com
- AAAA 记录:2001:41d0:8:e8ad::1
其实还有个DNS4 + IP4
,没啥好测试的嘛。
明白了,三种测试用例,DNS4/6 表示的是权威服务器的网络环境,要么是IPv4,要么是IPv6;IP4/6 只是其实分别是A和AAAA 记录。测试的其实是本地local dns 对
- 权威服务器托管在IPv4 环境,通过AAAA记录(IPv6 网络)访问
- 权威服务器托管在IPv6 环境,通过A记录(IPv4 网络)访问
- 权威服务器托管在IPv6 环境,通过AAAA(IPv4 网络)访问
所以,如果你是IPv4 网络的话,1、3 测试肯定是失败的,IPv6 不通嘛,但是2 可能能够成功,因为你的local dns 出口可能是能够访问IPv6 环境的,如果不行的话,换成8.8.8.8
试一试?
我在电信的IPv6 环境下测试发现3 失败了,电信还没给IPv6 的DNS,默认的IPv4 的DNS 也不能访问到纯IPv6 环境的权威服务器,手动加个Google 的2001:4860:4860::8888
就好了。
IPv6 要推广了,相关的一堆基础知识得抓紧补了,地址格式、SLAAC、DHCPv6、ICMPv6...想起大学计网老师居然自动跳过了IPv6 这一章!