为什么我无法使用特定 DNS 访问特定主机?

为什么我无法使用特定 DNS 访问特定主机?

我正在尝试发送一些信息给www2.agenciatributaria.gob.es。我可以从多个主机执行此操作,但只能从一个主机执行。

从这一个我得到错误名称解析暂时失败。但是,从同一台主机,我可以通过其默认 DNS 访问许多其他服务器(我可以 pingwww.google.es, ETC)。

因此我使用 dig 来检查发生了什么。如果我执行dig www2.agenciatributaria.gob.es,DNS 会在 127.0.0.53 上搜索远程主机的 IP,结果会出错(尽管如此,如果我继续 dig ,结果还是成功的。www.google.es):

; <<>> DiG 9.16.1-Ubuntu <<>> www2.agenciatributaria.gob.es
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 58113
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;www2.agenciatributaria.gob.es. IN      A

;; Query time: 7 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Mon Sep 27 09:17:00 UTC 2021
;; MSG SIZE  rcvd: 58

另一方面,如果我执行dig +norecurse @8.8.8.8 www2.agenciatributaria.gob.es,使用 8.8.8.8 上的 DNS 搜索远程主机的 IP,结果是成功的:

; <<>> DiG 9.16.1-Ubuntu <<>> +norecurse @8.8.8.8 www2.agenciatributaria.gob.es
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31565
;; flags: qr ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;www2.agenciatributaria.gob.es. IN      A

;; ANSWER SECTION:
www2.agenciatributaria.gob.es. 201 IN   A       195.77.198.18

;; Query time: 0 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Mon Sep 27 09:16:28 UTC 2021
;; MSG SIZE  rcvd: 74

我不是这方面的专家。但我猜只有该域的 DNS 有问题。有人能帮我吗?我该如何解决这个问题或者我现在应该检查什么?

resolvectl 状态

Global
       LLMNR setting: no                  
MulticastDNS setting: no                  
  DNSOverTLS setting: no                  
      DNSSEC setting: no                  
    DNSSEC supported: no                  
          DNSSEC NTA: 10.in-addr.arpa     
                      16.172.in-addr.arpa 
                      168.192.in-addr.arpa
                      17.172.in-addr.arpa 
                      18.172.in-addr.arpa 
                      19.172.in-addr.arpa 
                      20.172.in-addr.arpa 
                      21.172.in-addr.arpa 
                      22.172.in-addr.arpa 
                      23.172.in-addr.arpa 
                      24.172.in-addr.arpa 
                      25.172.in-addr.arpa 
                      26.172.in-addr.arpa 
                      27.172.in-addr.arpa 
                      28.172.in-addr.arpa 
                      29.172.in-addr.arpa 
                      30.172.in-addr.arpa 
                      31.172.in-addr.arpa 
                      corp                
                      d.f.ip6.arpa        
                      home                
                      internal            
                      intranet            
                      lan                 
                      local               
                      private             
                      test                

Link 2 (ens3)
      Current Scopes: DNS           
DefaultRoute setting: yes           
       LLMNR setting: yes           
MulticastDNS setting: no            
  DNSOverTLS setting: no            
      DNSSEC setting: no            
    DNSSEC supported: no            
  Current DNS Server: 213.186.33.99 
         DNS Servers: 213.186.33.99 
          DNS Domain: openstacklocal

答案1

您的域名配置不正确,请参阅https://dnsviz.net/d/www2.agenciatributaria.gob.es/YVHoZA/dnssec/

您可以忽略警告,因为您无法对这些警告采取任何措施,而且它们也不会阻止解决方案DSesgob.es

但是,请阅读有关设置不匹配的警告NS,这意味着您处于一个不合格的委派情况。这直接导致您的结果将取决于您询问的名称服务器,并且错误率可能达到 50% 或更多。

修复你的 DNS 设置,确保你的父母 ( gob.es) 列出的服务器与你一样具有权威性:

$ dig gob.es NS +short
c.nic.es.
fnicdos.rediris.es.
n3ns.nic.es.
h.nic.es.
g.nic.es.
$ dig agenciatributaria.gob.es NS @c.nic.es +noall +auth
agenciatributaria.gob.es. 1d IN NS ns3chos01.telefonica-data.com.
agenciatributaria.gob.es. 1d IN NS nsjc8hos01.telefonica-data.com.
$ dig agenciatributaria.gob.es NS @nsjc8hos01.telefonica-data.com. +short
nsalchos01.telefonica-data.com.
nsjc8hos01.telefonica-data.com.

这两组NS记录不匹配,但它们必须匹配才能获得正确的 DNS 解析。

答案2

您的本地解析器配置为将 DNS 查询转发到 213.186.33.99,这是 OVH 向其客户提供的 DNS 服务器。查询此服务器直接显示正在报告失败。

$ host www2.agenciatributaria.gob.es 213.186.33.99
Using domain server:
Name: 213.186.33.99
Address: 213.186.33.99#53
Aliases: 

Host www2.agenciatributaria.gob.es not found: 2(SERVFAIL)

编辑您的/etc/resolv.conf以提供另一组名称服务器,然后重试。请记住,您正在查找的域名仍然有问题,正如 Patrick Mevzek 的回答所述,所以这只是一种解决方法。

相关内容