Linux

如何讓 BIND 和 Microsoft DNS 很好地協同工作?

  • August 26, 2014

我想嘗試將我們公司的 DNS 配置盡可能多地移動到 BIND 中,因為我發現它更容易使用,但是擁有 Active Directory 意味著我們必須至少在 Microsoft DNS 中擁有域的區域。

也許我可以在 MSDNS 中擁有域的區域(例如 company.local),但在 BIND 中擁有另一個區域(例如 company.org),該區域具有用於同一台電腦的正向和反向區域。DHCP 伺服器可以將 BIND 分配為主 DNS 和輔助 DNS,我們只是將該區域用於日常使用。我們還可以在 BIND 中為域區域創建從屬區域,我們只是將所有顯式 DNS 操作移至 BIND,但通過 BIND 保持域區域可用,以便 AD 可以執行。

有沒有人這樣做並成功了?或者這是一個非常糟糕的主意?:)

我們這樣做。我不確定我會推薦它,但我們會這樣做:

執行 BIND 的 Solaris 伺服器

  • 對除 example.ad 之外的每個轉發域都具有權威性
  • 對每個 in-addr.arpa 區域執行權威,但 AD DHCP 服務的區域除外
  • 從 AD DNS 伺服器拉取從屬 example.ad 和 DHCP 範圍

執行 BIND 的 Linux 伺服器

  • 從 AD DNS 伺服器拉取從屬 example.ad 和 DHCP 範圍
  • 從solaris primary 中為其他所有內容拉取slave。

AD DNS 伺服器

  • 為 example.ad 執行 master
  • 為 AD DHCP 服務的任何 in-addr.arpa 區域執行 master。
  • 將所有遞歸請求轉發到 solaris/linux BIND 安裝

Windows 客戶端

  • 由 AD DHCP 分配的 AD DNS 伺服器。我們對此進行了試驗,發現我們使用的“微軟系列產品”不喜歡沒有 AD DNS 伺服器。我們可能早就放棄了,但從我記憶中的情況來看並不順利。

UNIX/Linux/操作客戶端:

  • 硬編碼的 BIND DNS 伺服器

在實踐中,以下是我們制定的一些政策:

  • 任何引用 IT 類服務(交換等)的記錄都會在 example.ad 中獲取 A 記錄,並在 example.com 中獲取到 record.example.ad 的 CNAME
  • 任何涉及操作或網路設備的記錄都會在 example.com 中獲得 A 記錄,在 example.ad 中獲得 CNAME。

我們的設置實際上比這還要復雜一些,因為我們購買了一家使用 Netware/AD 進行 DNS/DHCP 的公司,因此我們對它們有一套類似的規則。

如果您的手不被強迫,我不確定我是否會建議這樣做。我們的安裝是為了充分利用一系列糟糕的情況。但是,我不得不承認我更喜歡使用 BIND,而不是 AD DNS,所以,既然我們顯然不會擺脫 AD,那麼使用 BIND 是一種很好的方式

我們遇到的一個問題是記憶體在 AD DNS 伺服器中。我們試圖讓我們的運營客戶了解他們的筆記型電腦使用 AD DNS,但更改是在 BIND 中進行的,因此如果他們進行了更改並且想要驗證它,他們必須手動查找正確的伺服器。這是一個煩惱,但這是一個經常出人意料地出現的問題。

希望有幫助。

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