UDP:
dig +dnssec +multi nic.cz A
dig +dnssec dnssec-failed.org A
------------------------------------------------------------------------------------
DoH:
curl -H 'accept: application/dns-json' 'https://cloudflare-dns.com/dns-query?name=nic.cz&type=A' --insecure
curl -H 'accept: application/dns-json' 'https://cloudflare-dns.com/dns-query?name=nic.cz&type=RRSIG' --insecure
curl -H 'accept: application/dns-json' 'https://cloudflare-dns.com/dns-query?name=dnssec-failed.org&type=A' --insecure
curl -H 'accept: application/dns-json' 'https://cloudflare-dns.com/dns-query?name=dnssec-failed.org&type=RRSIG' --insecure
上面示例中测试的是 cloudflare的 dns 是否支持dnssec,所以测试自己的服务器需要替换成自己的DoH地址。
--------------------------------------------------------------------------------------
如果本地的DNS解析器支持DNSSEC的话,会返回下面的预期数据。
nic.cz 会返回 :
AD:true 代表已验证数据
type:46 代表返回了RRSIG
type:1 代表返回了正确的 IP 地址。
dnssec-failed.org 会返回 :
AD:false 代表没有通过DNSSEC验证,因为是伪造的签名
Status:2 代表 SERVFAIL
Answer:缺失 没有返回 IP 地址的结果是预期的。
--------------------------------------------------------------------------------------
不是以上的预期数据的话,比如 dig +dnssec dnssec-failed.org A 结果依然返回了 IP 地址,没有返回SERVFAIL, 那就认为 DNSSEC 验证链路不完整。
没有评论:
发表评论