Linux-Networking

使用 BIND 為模擬的 DNS 伺服器層次結構配置反向 DNS

  • June 29, 2021

我正在使用 Kathara(類似於 Netkit)模擬一個網路,但我無法弄清楚如何讓反向 DNS 在所有三個網路中工作。

這是拓撲

這是 DNS 層次結構

我確實設法讓遞歸查找工作。當查詢一個不在其數據庫中的名稱時,ns.as1.net 將查詢 nsroot,然後沿著層次結構向下,最終從權威伺服器獲得響應。我通過添加一個帶有 nsroot 地址記錄的 db.root 文件並將其用於區域“。”來做到這一點。

命名的.conf:

[...]
zone "." {
   type hint;
   file "/etc/bind/db.root";
};
[...]

db.root:

.                   IN  NS    ROOT-SERVER.
ROOT-SERVER.        IN  A     1.1.2.2

我的問題是:如何讓反向 DNS 以相同的方式工作?

我只能通過配置zone "3.3.in-addr.arpa" on使其在本地工作ns.as3.net,但這樣,它只適用於將 ns.as3.net 設置為解析器的主機。

AS3中的地鐵:

                            My traceroute  [v0.93]
c2as3 (3.3.2.2)                                        2021-06-29T02:11:52+0000
Keys:  Help   Display mode   Restart statistics   Order of fields   quit
                                      Packets               Pings
Host                                Loss%   Snt   Last   Avg  Best  Wrst StDev
1. r33.as3.net (3.3.2.1)             0.0%    12    0.1   0.1   0.1   0.2   0.0
2. r32.as3.net (3.3.1.13)            0.0%    12    0.1   0.2   0.1   0.3   0.0
3. ns.as3.net (3.3.4.2)              0.0%    11    0.2   0.2   0.2   0.2   0.0

從 AS2 到 AS3 的地鐵:

                            My traceroute  [v0.93]
c1as2 (2.2.2.2)                                        2021-06-29T02:14:22+0000
Keys:  Help   Display mode   Restart statistics   Order of fields   quit
                                      Packets               Pings
Host                                Loss%   Snt   Last   Avg  Best  Wrst StDev
1. 2.2.2.1 (2.2.2.1)                 0.0%     7    0.1   0.1   0.1   0.2   0.0
2. 2.2.1.9 (2.2.1.9)                 0.0%     6    0.1   0.1   0.1   0.1   0.0
3. 2.2.0.2 (2.2.0.2)                 0.0%     6    0.2   0.1   0.1   0.2   0.0
4. 3.3.1.6 (3.3.1.6)                 0.0%     6    0.2   0.2   0.2   0.2   0.0
5. 3.3.4.2 (3.3.4.2)                 0.0%     6    0.2   0.2   0.2   0.3   0.0

我確實考慮過在所有名稱伺服器中添加每個 arpa 區域,但我認為這不是正確的方法。

我將非常感謝提供的任何提示或幫助。

據我所知,您需要模擬一個root hintsNS 伺服器,因為否則如何ns.as3.net知道在哪裡可以找到負責 和 的區域記錄的 NS1.1.in-addr.arpa伺服器2.2.in-addr.arpa

這同樣適用於其他兩個名稱伺服器。

免責聲明

以下是用手機寫的,所以我無法驗證語法是否正確,但希望你能明白。:-)

替代方法當然是您添加一個區域條目,ns.as3.net例如:

zone "1.1.in-addr.arpa" {
 type forward;
 forwarders { x.x.x.x; }
 forward only;
};

zone "2.2.in-addr.arpa" {
type forward;
 forwarders { y.y.y.y; }
 forward only;
};

x.x.x.x將和替換為和y.y.y.y的相應名稱伺服器的 IP 地址 。as1.net``as2.net

類似的條目需要添加到其他名稱伺服器,因此所有名稱伺服器都知道所有區域記錄的位置。

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