為 3 個域控制器創建 DNS A 記錄
我在我們的網路上設置了一個新域,該域由 2 個域控制器 dc1、dc2 組成。我可以看到 2 個控制器的 A 記錄。但我需要做負載平衡,以便我可以在單個條目中引用 2 個 dc。
我為不同的 IP dc.domain.com 創建了兩個具有相同名稱的 A 記錄。這是標準程序嗎?
活動目錄已經有一種 DNS 負載平衡的形式。你只是看錯地方了。
A
記錄只是說明哪個控制器具有哪個 IP 地址。每個域服務(LDAP、Kerberos、全域目錄 LDAP 等)的客戶端都配置了SRV
記錄。如果你沒有做任何花哨的事情,你SRV
的域中的記錄已經指向每個服務的每個域控制器。這是 Active Directory 域 DNS 區域的典型結構:
example.com. 3600 IN SOA dc1.example.com. admin.example.com 66593 900 600 86400 3600 example.com. 3600 IN NS dc1.example.com. example.com. 3600 IN NS dc2.example.com. example.com. 600 IN A 192.168.3.1 example.com. 600 IN A 192.168.4.1 _gc._tcp.example.com. 600 IN SRV 0 100 3268 dc2.example.com. _gc._tcp.example.com. 600 IN SRV 0 100 3268 dc1.example.com. _kerberos._tcp.example.com. 600 IN SRV 0 100 88 dc2.example.com. _kerberos._tcp.example.com. 600 IN SRV 0 100 88 dc1.example.com. _kpasswd._tcp.example.com. 600 IN SRV 0 100 464 dc2.example.com. _kpasswd._tcp.example.com. 600 IN SRV 0 100 464 dc1.example.com. _ldap._tcp.example.com. 600 IN SRV 0 100 389 dc2.example.com. _ldap._tcp.example.com. 600 IN SRV 0 100 389 dc1.example.com. _kerberos._udp.example.com. 600 IN SRV 0 100 88 dc2.example.com. _kerberos._udp.example.com. 600 IN SRV 0 100 88 dc1.example.com. _kpasswd._udp.example.com. 600 IN SRV 0 100 464 dc2.example.com. _kpasswd._udp.example.com. 600 IN SRV 0 100 464 dc1.example.com. DomainDnsZones.example.com. 600 IN A 192.168.3.1 DomainDnsZones.example.com. 600 IN A 192.168.4.1 _ldap._tcp.DomainDnsZones.example.com. 600 IN SRV 0 100 389 dc2.example.com. _ldap._tcp.DomainDnsZones.example.com. 600 IN SRV 0 100 389 dc1.example.com. ForestDnsZones.example.com. 600 IN A 192.168.3.1 ForestDnsZones.example.com. 600 IN A 192.168.4.1 _ldap._tcp.ForestDnsZones.example.com. 600 IN SRV 0 100 389 dc2.example.com. _ldap._tcp.ForestDnsZones.example.com. 600 IN SRV 0 100 389 dc1.example.com. dc1.example.com. 3600 IN A 192.168.3.1 dc2.example.com. 3600 IN A 192.168.4.1 _msdcs.example.com. 3600 IN NS dc1.example.com. _gc._tcp.Default-First-Site-Name._sites.example.com. 600 IN SRV 0 100 3268 dc1.example.com. _kerberos._tcp.Default-First-Site-Name._sites.example.com. 600 IN SRV 0 100 88 dc1.example.com. _ldap._tcp.Default-First-Site-Name._sites.example.com. 600 IN SRV 0 100 389 dc1.example.com. _ldap._tcp.Default-First-Site-Name._sites.DomainDnsZones.example.com. 600 IN SRV 0 100 389 dc1.example.com. _ldap._tcp.Default-First-Site-Name._sites.ForestDnsZones.example.com. 600 IN SRV 0 100 389 dc1.example.com. _gc._tcp.alter-site._sites.example.com. 600 IN SRV 0 100 3268 dc2.example.com. _kerberos._tcp.alter-site._sites.example.com. 600 IN SRV 0 100 88 dc2.example.com. _ldap._tcp.alter-site._sites.example.com. 600 IN SRV 0 100 389 dc2.example.com. _ldap._tcp.alter-site._sites.DomainDnsZones.example.com. 600 IN SRV 0 100 389 dc2.example.com. _ldap._tcp.alter-site._sites.ForestDnsZones.example.com. 600 IN SRV 0 100 389 dc2.example.com.
如果您創建站點,您將獲得它們的附加記錄。這應該使某些電腦比遠端更喜歡詢問他們的本地域控制器。這裡
dc2
屬於站點alter-site
,因此該站點中的任何電腦都會首先詢問它。如果您將所有內容保留為預設值,則兩個控制器都將位於預設站點Default-First-Site-Name
中。您可以通過更改這些
SRV
記錄來更改控制器之間的負載分佈。看到“100”了嗎?這些是重量。如果您將一個 DC 設置為 67,另一個 DC 設置為 33,則第一個將獲得 2/3 的請求,另一個將獲得 1/3。SRV
每條記錄前面的“0”是優先級;如果您可以訪問更大優先級的伺服器,則根本不會查詢較低優先級。詳情請查看SRV
記錄說明;網際網路上有很多解釋,包括這個網站。很少有“不對稱”的記錄。例如,
SOA
記錄中有一個特定的 DNS 伺服器名稱。但是在這種情況下很少使用這些,這並不構成任何瓶頸。還有關於
SYSVOL
. 當客戶端登錄時,在檢查密碼(涉及Kerberos服務)後,他們會向域詢問組策略,並且他們使用域名而不是特定的 DC 名稱來執行此操作,如下所示:(\\example.com\SYSVOL
而不是,例如,\\dc1.example.com\SYSVOL
)。您可以看到域頂點有多個A
記錄,每個域控制器都有一個記錄(範例的第 4 行和第 5 行)。客戶端將使用隨機選擇的A
記錄進行連接,因此每個 DC 將具有大致相同的份額。