內網使用公網IP時,外部DNS伺服器無法解析外部域名

內網使用公網IP時,外部DNS伺服器無法解析外部域名

我用來nslookup從內部網路內的電腦進行查詢。如果我使用我的DNS伺服器的私有IP,它可以成功解析外部網域名稱。

> www.ust.hk
伺服器:192.168.28.58
位址:192.168.28.58#53

非權威答案:
名稱:www.ust.hk
地址:143.89.14.1

但是,如果我使用內網 DNS 伺服器的公用 IP,則無法解析外部網域名稱。

$ nslookup
server wxyz
預設伺服器:wxyz
位址 wxyz#53
> www.ust.hk
伺服器:wxyz
位址:wxyz#53
伺服器找不到 www.ust.hk: REFUSED

如果我檢查 dns.log,它表示外部網域被拒絕。

(www.ust.hk): 查詢(快取)「www.ust.hk/A/IN」被拒絕

這是不合理的,因為內部網路允許遞歸。如果電腦位於內部網路之外,則無法解析外部域是正常的。

我的命名設定檔如下:

acl "trusted" {
               192.168.0.0/16;
               localhosts;
               localnets;
};

options{
listen-on port {any;};
listen-on-v6 port 53 { none; };
allow-query { any; };
allow-recursion {trusted;};
allow-query-cache {trusted;};
....
};

我想知道是什麼導致了這個問題。問題是否是由於防火牆配置錯誤引起的?由於 dns.log 指出它被拒絕,因此似乎不是防火牆問題。
我已經包含了環回 NAT 規則,但它仍然沒有幫助。請注意,DNS 伺服器位於 DMZ 區域。

其他編輯

編輯1

對於這一點 - “更改 NAT 設定以不覆蓋此特定流量,以便來源仍保留在本地”。它看起來最可行,但我想知道如何做到這一點。

PDNS1(公用)IP 位於 WAN 區域,而 PDNS1(私有)IP 位於 DMZ 區域。

我們的防火牆品牌是 sonicwall。目前 NAT 為:
來源原始:
任何來源翻譯:Pdns(公共)
目標原始:Pdns(公共)
目標翻譯:Pdns(私人)
服務原始:DNS(名稱服務)
服務翻譯:原始

另外兩個 NAT 規則是普通的一對一自反 NAT。

我不知道如何不覆蓋特定流量,以便來源仍保留在本地。請您多多指教並詳細說明。非常感謝。

編輯2

對於這一點-“添加您的公共IP(到本地網路列表中的NAT)”我已經嘗試了以下設定。確實,內網內使用公網IP進行DNS查詢可以成功解析外部網域名稱。

不幸的是,內部網路以外使用公網IP的DNS查詢也可以解析外部網域名稱。這是不可取的,因為它成為一個開放的 DNS 伺服器,很容易受到 DNS 放大攻擊。

acl「受信任」{
219.189.213.25;
192.168.0.0/16;
本地主機;
本地網;
};

對於這一點 - “啟用來自任何 IP 的域響應(可能不願意)”

我認為這意味著named.conf的以下設定:recursion yes;
或者,
允許遞歸 { 任意; };
允許查詢快取 { 任何; };

同樣,它會使 DNS 伺服器變成開放 DNS,這是非常不可取的。

編輯3

  1. 以下是內網私有 IP 的 DNS 查詢:
    [root@pdns1 ~]# nslookup
    server 192.168.28.58
    預設伺服器:192.168.28.58
    位址:192.168.28.58#53
    www.hku.edu.hh
    伺服器:192.168.28.58 #53 www.hku.edu.hhk伺服器
    :1968.168. .28.58#53
    非權威答案:
    姓名:www.hku.edu.hk
    地址:147.8.2.58

  2. 以下是內部網路公網 IP 的 DNS 查詢:
    伺服器 219.189.213.25
    預設伺服器:219.189.213.25
    位址:219.189.213.25#53
    www.mingpao.com
    伺服器:219.189.213.25 #53 www.mingpao.com 伺服器:
    219.189.213.2533.
    不到www.mingpao.com: 已拒絕

以下是 dns.log:
16-Jan-2020 20:40:12.460 security: info: client @0x7f963c508310 219.189.213.25#43529。 (www.mingpao.com): 查詢(快取)「www.mingpao.com/A/IN」被拒絕

以下是querys.log:
16-Jan-2020 20:39:42.109 查詢: info: client @0x7f963c0a3ce0 192.168.28.58#60338 (www.hku.edu.hk): kury: www.h. (192.168.28.58)

2020 年 1 月 16 日 20:39:42.401 查詢:資訊:client @0x7f963c58e9c0 192.168.28.58#58101 (www.hku.edu.hk):查詢:www.

2020 年 1 月 16 日 20:40:12.460 查詢:資訊:客戶端 @0x7f963c508310219.189.213.25#43529(www.mingpao.com):查詢:www.mingpao.com IN A+(192.168.28.58)

請求真的來自WAN嗎?

答案1

問題/提示是,一旦您嘗試使用公共 IP 存取 DNS 伺服器,您將如何存取它...

一旦您使用 DMZ 中的公用 IP 到達伺服器,您的流量很可能已經經過 sNAT。從伺服器的角度來看,您的通訊不是本地的。再次檢查日誌記錄 - 可以看到請求來自的 IP...

要使其正常工作,您可以:

  • 啟用來自任何 IP 的網域回應(可能不願意)

  • 更改 NAT 設定以不覆蓋此特定流量,以便來源仍保留在本地

  • 新增您的公用 IP(新增至本機網路清單)

相關內容