
我正在嘗試發送一些訊息至www2.agenciatributaria.gob.es。我可以從多個主機執行此操作,但只有一個。
從這個我得到了錯誤名稱解析暫時失敗。然而,從同一台主機我可以通過其預設 DNS 到達許多其他伺服器(我可以 pingwww.google.es, ETC)。
所以我用 dig 來檢查發生了什麼事。如果我執行dig www2.agenciatributaria.gob.es
,則在 127.0.0.53 上透過 DNS 搜尋遠端主機的 IP,結果是錯誤的(但是,如果我繼續挖掘,結果是成功的)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 存在一些問題。有人能幫我一下嗎?我該如何解決這個問題或我現在應該檢查什麼?
解析狀態
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/
您可以忽略和DS
上的警告,因為您將無法對這些警告執行任何操作,並且它們不會阻止解決方案。es
gob.es
但是,請閱讀有關設定不匹配的警告NS
,這意味著您處於蹩腳的委派情況。這會產生直接影響,即您的結果將取決於您詢問的名稱伺服器,並且可能在 50% 或更多的情況下是錯誤的。
透過確保您的父母 ( gob.es
) 列出與您相同的權威伺服器來修復您的 DNS 設定:
$ 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)的答案所描述的那樣,您正在查找的域名仍然被破壞,因此這只是一個解決方法。