Domain-Name-System

CENTOS 6.3 和域名伺服器上的 DNS BIND

  • May 21, 2016

我對 BIND 和 DNS 有點陌生,所以請容忍我的愚蠢問題。我在執行我自己的自定義名稱伺服器時遇到問題。我有一個帶有 openVZ (CENTOS 6.3) 的虛擬主機,有 3 個 IP 地址和一個域名。

我無法從外部 ping 我的域名 (example.com),並且 intodns 出現以下錯誤。

http://www.intodns.com/example.com

不匹配的 NS 記錄 警告:您的一個或多個名稱伺服器未返回您的任何 NS 記錄。
DNS 伺服器響應錯誤:您的一個或多個名稱伺服器沒有響應:
沒有回應的有:
66.215.210.17 66.215.210.19 66.215.210.18
名稱伺服器的名稱有效。父級報告的名稱伺服器不發送任何內容,如上所示。我什麼都檢查不了,所以它是綠色的!
多個名稱伺服器錯誤:您的名稱伺服器似乎少於 2 個。根據 RFC2182 第 5 節,您必須至少有 3 個名稱伺服器,並且不超過 7 個。我也可以擁有 2 個名稱伺服器。
名稱伺服器很糟糕。父伺服器上列出的所有名稱伺服器都為您的域權威地回答。
父 OK 報告的缺少名稱伺服器。所有 NS 記錄在父伺服器和您的名稱伺服器上都是相同的。
您的名稱伺服器報告的缺少名稱伺服器您應該已經知道您的名稱伺服器上的 NS 記錄失去了,所以這裡又是:

ns1.example.com.
ns2.example.com.
ns3.example.com.

我的域(example.com)設置:

example.com 域名伺服器
ns1.example.com
ns2.example.com
ns3.example.com

# unname -a

Linux server1.example.com 2.6.32-042stab072.10 #1 SMP Wed Jan 16 18:54:05 MSK 2013 i686 i686 i386 GNU/Linux

# cat /etc/named.conf


//
//命名.conf
//
// Red Hat提供的綁定包配置ISC BIND named(8) DNS
// 伺服器作為僅記憶體名稱伺服器(僅作為 localhost DNS 解析器)。
//
// 參見 /usr/share/doc/bind*/sample/ 例如命名的配置文件。
//

選項 {
監聽埠 53 { 127.0.0.1; 66.215.210.17;};
監聽 v6 埠 53 { ::1; };
目錄“/var/named”;
轉儲文件“/var/named/data/cache_dump.db”;
統計文件“/var/named/data/named_stats.txt”;
memstatistics-file "/var/named/data/named_mem_stats.txt";
允許查詢{本地主機;};
遞歸是的;

dnssec-啟用是;
dnssec 驗證是的;
dnssec-備份車;

/* ISC DLV 密鑰的路徑 */
bindkeys-file "/etc/named.iscdlv.key";

託管鍵目錄“/var/named/dynamic”;
};

記錄{
頻道預設調試{
文件“數據/named.run”;
嚴重性動態;
};
};

區“。” 在 {
類型提示;
文件“named.ca”;
};

包括“/etc/named.rfc1912.zones”;
包括“/etc/named.root.key”;

區域“example.com” IN {
類型大師;
文件“/var/named/example.com.hosts”;
};

# cat /var/named/example.com.hosts

$ttl 38400
@IN SOA ns1.example.com。網站管理員.example.com。(
2013022401
10800
3600
604800
38400 )

在 NS ns1.example.com。
在 NS ns2.example.com 中。
在 NS ns3.example.com 中。

IN MX 10 mail.example.com。

ns1 IN A 66.215.210.17
ns2 IN A 66.215.210.18
ns3 IN A 66.215.210.19

例子.com。在 66.215.210.17

www IN CNAME example.com。
在 CNAME example.com 中發送郵件。

服務命名狀態

版本:9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6_3.6
找到的 CPU:4
工作執行緒:4
區域數量:20
調試級別:0
xfers 執行:0
xfers 延期:0
正在進行的 soa 查詢:0
查詢記錄已關閉
遞歸客戶端:0/0/1000
tcp 客戶端:0/100
伺服器已啟動並正在執行
命名(pid 21130)正在執行...

貓 /etc/resolv.conf

名稱伺服器 66.215.210.17
名稱伺服器 66.215.210.18
名稱伺服器 66.215.210.19
名稱伺服器 8.8.8.8
名稱伺服器 8.8.4.4

# 主機 66.215.210.17

17.210.215.66.in-addr.arpa 域名指針unknown.hostforweb.net。

# nslookup ns1.example.com

伺服器:66.215.210.17
地址:66.215.210.17#53

名稱:ns1.example.com
地址:66.215.210.17

# 探勘 example.com


; > DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6_3.6 > example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER- opcode: QUERY, status: NOERROR, id: 34794
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 3

;; QUESTION SECTION:
;example.com.                    IN      A

;; ANSWER SECTION:
example.com.             38400   IN      A       66.215.210.17

;; AUTHORITY SECTION:
example.com.             38400   IN      NS      ns2.example.com.
example.com.             38400   IN      NS      ns1.example.com.
example.com.             38400   IN      NS      ns3.example.com.

;; ADDITIONAL SECTION:
ns1.example.com.         38400   IN      A       66.215.210.17
ns2.example.com.         38400   IN      A       66.215.210.18
ns3.example.com.         38400   IN      A       66.215.210.19

;; Query time: 16 msec
;; SERVER: 66.215.210.17#53(66.215.210.17)
;; WHEN: Tue Feb 26 22:47:59 2013
;; MSG SIZE  rcvd: 146

# 如果配置

lo 鏈路封裝:本地環回
inet 地址:127.0.0.1 遮罩:255.0.0.0
inet6 地址::::1/128 範圍:主機
上環回執行 MTU:16436 指標:1
RX 數據包:45964 錯誤:0 丟棄:0 超限:0 幀:0
TX 數據包:45964 錯誤:0 丟棄:0 超限:0 運營商:0
碰撞:0 發送隊列:0
RX 字節:4545207 (4.3 MiB) TX 字節:4545207 (4.3 MiB)

venet0 連結封裝:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet 地址:127.0.0.1 PtP:127.0.0.1 Bcast:0.0.0.0 遮罩:255.255.255.255
上行廣播點執行 NOARP MTU:1500 指標:1
RX 數據包:313568 錯誤:0 丟棄:0 超限:0 幀:0
TX 數據包:329176 錯誤:0 丟棄:888 超限:0 運營商:0
碰撞:0 發送隊列:0
RX 字節:53252985 (50.7 MiB) TX 字節:60679739 (5​​7.8 MiB)

venet0:0 連結封裝:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet 地址:66.215.210.17 PtP:66.215.210.17 Bcast:66.215.210.17 遮罩:255.255.255.255
上行廣播點執行 NOARP MTU:1500 指標:1

venet0:1 連結封裝:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet 地址:66.215.210.18 PtP:66.215.210.18 Bcast:66.215.210.18 遮罩:255.255.255.255
上行廣播點執行 NOARP MTU:1500 指標:1

venet0:2 連結封裝:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet 地址:66.215.210.19 PtP:66.215.210.19 Bcast:66.215.210.19 遮罩:255.255.255.255
上行廣播點執行 NOARP MTU:1500 指標:1

誰能告訴我我做錯了什麼?

我已經編輯了域名和IP地址

您的配置文件集

allow-query     { localhost; };

這意味著 BIND 只會響應來自它自己的伺服器的查詢。

[jonv@desk ~]$ dig @66.215.210.17 example.com. soa

; <<>> DiG 9.7.6-P1 <<>> @66.215.210.17 example.com. soa
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 59075
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available

“狀態:已拒絕”是問題所在的重要指標。

編輯:您應該可以只刪除該行,預設為allow-query {any;};。如果不進一步了解您的環境,就很難給您一個準確的答案。您還可以將 allow-query 行放在 example.com 的 zone 語句中,同時保留 allow-query { localhost;}; 適合全域設置。

引用自:https://serverfault.com/questions/482747