如何重新導向我的 DNS 伺服器

如何重新導向我的 DNS 伺服器

我有在家使用的域名,出於爭論起見,我們稱之為domain.com。我在我的家庭網路上使用這個網域,但實際上我也擁有該網域。因此,當我載入www.domain.org一個子網域時,我希望我的 DNS 伺服器將此請求重定向到實際的互聯網,而不是我的主網域。
我使用網域來識別家裡的設備。我該如何實現這個目標?
我在充當網關和 DNS 伺服器的 Ubuntu 電腦上運行 BIND

答案1

我建議將您的內部網路移至第三層(即device1.lan.domain.org)以避免衝突。

話雖如此,您想要的本質上是子網域委託。 IIRC 它應該像添加這些條目一樣簡單:

www           IN      NS     ns1.example.com.
www           IN      NS     ns2.example.com.

因為無論如何,如果沒有互聯網訪問,這將無法工作,因此您可以忽略有關委派的所有其他最佳實踐。

答案2

最簡單的方法是使用$INCLUDEBIND 中的功能。

您需要做的就是為所有內部名稱建立一個文件,例如 ,db.domain.com-internal其中包含所有內部記錄(您已經擁有,只需替換文件名稱),然後創建第二個文件,將其命名為db.domain.com-external,其中包含所有內部記錄外部真實域中的記錄減去SOA 和NS 記錄。

在文件底部db.domain.com-internal新增以下行:

$INCLUDE db.domain.com-external

這使您可以使用兩個文件在邏輯上將內部與外部分開以區分它們,但該$INCLUDE指令將它們合併在一起作為域的一個完整視圖。在您詢問之前,無論 www.domain.com 的解析發生在內部,無論是透過 A 記錄還是 CNAME 記錄,您的瀏覽器傳回的 IP 位址仍會將其傳送到您在網路上的網站。

重新加載,檢查錯誤,僅此而已。簡單的。

這很有效,因為正確的拆分 DNS 配置(內部/外部)向世界公開了內部可見的完整記錄集的子集。也就是說,一般來說,對於網域的外部公共視圖,您僅公開可公開存取的名稱和 IP 位址。

相關內容