Linux

使用 BIND9 創建私有名稱伺服器來託管網站

  • July 30, 2011

我有幾個域我想指向一個 VPS,我希望他們使用 VPS 作為他們的名稱伺服器,這樣每個域都是 ns1.example.com 和 ns2.example.com。因此,名稱伺服器與 Web 伺服器具有相同的 IP。我的域託管在 1and1,它可能有也可能沒有任何關係。我嘗試遵循http://www.newmediapower.com/blog/setting-up-your-own-dns-server-with-bind9/http://mysql-apache-php.com/dns-server-tutorial。 htm,但最終沒有成功。

這是我的/etc/bind/db.odie5533.com文件:

$TTL    604800
odie5533.com.   IN      SOA     ns1.odie5533.com. admin.odie5533.com. (
                             16        ; Serial
                        604800         ; Refresh
                         86400         ; Retry
                       2419200         ; Expire
                        604800 )       ; Negative Cache TTL
;
odie5533.com.   IN      NS      ns1.odie5533.com.
@       IN      A       184.82.142.241
ns1     IN      A       184.82.142.241
www     IN      CNAME       odie5533.com.

這是我的/etc/bind/named.conf.options文件:

options {
       directory "/var/cache/bind";
       forwarders {
                   184.82.142.241;
       };
       query-source address * port 53;
       notify-source * port 53;
       transfer-source * port 53;
       auth-nxdomain no;    # conform to RFC1035
       listen-on-v6 { any; };
};

這是我的/etc/bind/named.conf.local文件:

zone "odie5533.com" {
       type master;
       file "/etc/bind/db.odie5533.com";
};

如果有人能說出我做錯了什麼,我將不勝感激。謝謝。

好吧,您的區域文件中至少有一個重大錯誤:A記錄需要一個地址,而不是另一個名稱,所以

www     IN      A       odie5533.com.

是完全錯誤的。嘗試使用 CNAME,或將 rrdata 更改為 IP 地址。

此外,在同一個 IP 上執行您的兩個名稱伺服器是……好吧,PG 級的話讓我失望。可以這麼說,停止。有數以千計的免費輔助服務。

似乎184.82.142.241沒有執行 SMTP 伺服器,並且鑑於該域缺少任何 MX 記錄,admin@odie5533.com是一個無效的電子郵件地址。最好也解決這個問題。

對A 記錄執行squishodie5533.com會給我一個 SERVFAIL,所以你的名稱伺服器配置從根本上搞砸了。您給出的位看起來不錯,但實際上包括/etc/bind/named.conf.local什麼?這可能不存在於您的named.conf(我們無法判斷,您沒有提供)中。

確保您在放入所有這些配置後實際上重新啟動了綁定,並確保沒有其他東西被設置allow-query為限制性的東西。在同一程序中執行遞歸和權威名稱伺服器也不是一個好習慣。

最後,檢查您的日誌。他們幾乎肯定能夠為您提供出錯的原因。

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