Domain-Name-System
dig 和 host 命令返回不同的 SOA
所以我發現另一個文章說主機和探勘本質上是相同的,除了主機更使用者友好。在大多數情況下,這似乎是真的,但是我在嘗試為我的一個域查找 SOA 時遇到了這個問題。
michael@collins:/etc/tinydns/root$ host -t SOA tareme.ddns.net tareme.ddns.net has no SOA record michael@collins:/etc/tinydns/root$ dig tareme.ddns.net SOA ; <<>> DiG 9.10.3-P4-Ubuntu <<>> tareme.ddns.net SOA ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31834 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;tareme.ddns.net. IN SOA ;; AUTHORITY SECTION: ddns.net. 1461 IN SOA nf1.no-ip.com. hostmaster.no-ip.com. 2166190473 10800 1800 604800 1800 ;; Query time: 23 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Sun Jan 21 16:10:02 EST 2018 ;; MSG SIZE rcvd: 104
此外,當嘗試使用 tcpdump 查看它們之間的區別時,我得到以下第一個是主機請求,第二個是探勘。
16:09:44.276445 IP 10.0.0.5.33198 > google-public-dns-a.google.com.domain: 59495+ SOA? tareme.ddns.net. (33) 16:09:44.304564 IP google-public-dns-a.google.com.domain > 10.0.0.5.33198: 59495 0/1/0 (93) 16:10:02.653507 IP 10.0.0.5.59141 > google-public-dns-a.google.com.domain: 31834+ [1au] SOA? tareme.ddns.net. (44) 16:10:02.676878 IP google-public-dns-a.google.com.domain > 10.0.0.5.59141: 31834 0/1/1 (104)
似乎唯一的區別是
$$ 1au $$在探勘請求中,但是Google搜尋我無法找到這意味著什麼。
這兩個答案其實是一致的。
dig
輸出(基本上只是一個漂亮列印的 DNS 消息)顯示了一個響應NODATA
(即該部分中相關區域的NOERROR
狀態 + )。這種類型的響應意味著在 沒有請求類型()的記錄。SOA``AUTHORITY``SOA``tareme.ddns.net
host
輸出表示與英語句子相同的情況。旁注:如果有
SOA
記錄,它將在ANSWER
響應的部分中,並且所有者名稱將是匹配的(即,在這種情況下它必須是 attareme.ddns.net
)。