背景:
それぞれ独自のフォレスト内に2つの異なるADドメインがあり、それぞれにDNSサーバーとして機能する2つのWindows Server 2008 R2ドメインコントローラーがある環境があります。ドメイン間に信頼関係はありません。
各DNSサーバーは、ADドメインのメインDNSゾーンを管理し、その後、IPサブネットの逆引き参照ゾーンを含む他のいくつかのゾーンを管理します。すべてのゾーンがAD統合されています。ゾーンを管理するすべてのDNSサーバーは、そのゾーンの信頼できるネームサーバーとして正しくリストされます。
したがって、状況は次のようになります(偽の名前とIPアドレスを使用):
ドメインA:
DNSドメイン:domainA.dom
IPサブネット:192.168.1
DC/DNSサーバー:serverA1.domainA.dom
(192.168.1.1
)、serverA2.domainA.dom
(192.168.1.2
)
権限のあるゾーン:domainA.dom
、1.168.192.in-addr.arpa
、somezone.local
ドメインB:
DNSドメイン:domainB.dom
IPサブネット:10.0.0
DC/DNSサーバー:serverB1.domainB.dom
(10.0.0.1
)、serverB2.domainB.dom
(10.0.0.2
)
権限のあるゾーン:domainB.dom
、0.0.10.in-addr.arpa
、someotherzone.local
ドメインAのDNSサーバーには、ドメインBのDNSサーバーが管理するゾーンごとに定義された条件付きフォワーダーがあり、ドメインBの両方のDNSサーバーに転送します。ドメインBのDNSサーバーの構成は逆です。すべてのフォワーダーはActiveDirectoryに保存されます。
すべてが完全に機能しており、各ドメインのコンピューターは、ドメインのDNSサーバーを使用して、両方のドメインの順方向および逆方向DNSクエリを解決できます。
問題:
SCOM 2012をドメインAに展開し、SCOMエージェントを両方のDCにインストールしています。 ActiveDirectoryとDNSサーバーの管理パックがインストールされて最新の状態になっています。
両方のドメインコントローラーに次のような一連のアラートがあります。各アラートは、転送されたゾーンごと、および転送されたサーバーごとに生成されます。
Forwarder someotherzone.local (10.0.0.1) cannot resolve the Host name 192.168.1.1,someotherzone.local for serverA1.domainA.dom
Forwarder someotherzone.local (10.0.0.2) cannot resolve the Host name 192.168.1.1,someotherzone.local for serverA1.domainA.dom
Forwarder someotherzone.local (10.0.0.1) cannot resolve the Host name 192.168.1.2,someotherzone.local for serverA2.domainA.dom
Forwarder someotherzone.local (10.0.0.2) cannot resolve the Host name 192.168.1.2,someotherzone.local for serverA2.domainA.dom
Forwarder 0.0.10.in-addr.arpa (10.0.0.1) cannot resolve the Host name 192.168.1.1,0.0.10.in-addr.arpa for serverA1.domainA.dom
Forwarder 0.0.10.in-addr.arpa (10.0.0.2) cannot resolve the Host name 192.168.1.1,0.0.10.in-addr.arpa for serverA1.domainA.dom
Forwarder 0.0.10.in-addr.arpa (10.0.0.1) cannot resolve the Host name 192.168.1.2,0.0.10.in-addr.arpa for serverA2.domainA.dom
Forwarder 0.0.10.in-addr.arpa (10.0.0.2) cannot resolve the Host name 192.168.1.2,0.0.10.in-addr.arpa for serverA2.domainA.dom
唯一の例外は、ドメインBのDNSサーバー( "domainB.dom")によって管理されるメインのAD DNSゾーンです。その条件付きフォワーダーの場合、アラートは生成されず、フォワーダーの可用性モニターは緑色になります。
わかりました、これはどういう意味ですか?
それらのモニターが私に伝えようとしていることは何ですか?
彼らは何をチェックしていますか?
実際には何が問題なのですか?
そして、なぜ「domainB.dom」ゾーンにエラーがないのですか?これは、他のゾーンとまったく同じように構成されています(両方ともゾーンとして)ドメインBのDNSサーバーで、ドメインAのDNSサーバーのフォワーダーとして?
回答が見つかり、それは少し不愉快です(少なくとも、管理パックを作成している人が実際に何をしているのかを知っていると期待していた場合)。
モニターの説明から抜粋:
このモニターは、対象のフォワーダーでNSLOOKUPを実行することにより、フォワーダーの可用性を確認します。
スクリプトは
nslookup -timeout=<value> -querytype=<type> <name> <server>
を実行します
<type>
はA、NS、SOAです。
<name>
は解決するターゲットDNS名です。無条件フォワーダーの場合は、オーバーライド値が使用されます。それ以外の場合は、フォワーダードメイン名が使用されます。
<server>
は、NSLOOKUPクエリが発生するサーバーの名前です。
値は$Target/Property[Type="DNS!Microsoft.Windows.DNSServer.Library.Server"]/ListeningIP$
で、現在のDNSサーバーがリッスンしているすべてのIPアドレスのリストを提供します。
<value>
は、timeout seconds/3です。timeoutsecondsは、スクリプトを実行できる最大時間を設定するために使用されるためです。無条件フォワーダーの例:
NSLOOKUP -timeout=30 -querytype=a www.Microsoft.com 10.0.0.5
は、www.Microsoft.comのDNS名をサーバー10.0.0.5に照会します。この場合、実際のタイムアウト秒数を90モニターオーバーライドに設定します。条件付きフォワーダーの例:
NSLOOKUP -timeout=30 -querytype=a www.msn.com 10.0.0.5
は、このモニターの対象となる条件付きフォワーダーの実際の名前をサーバー10.0.0.5に照会します。
つまり、SCOMエージェントは次のようなクエリを実行しようとします。
nslookup -timeout=30 -querytype=a domainB.dom <server>
nslookup -timeout=30 -querytype=a someotherzone.local <server>
nslookup -timeout=30 -querytype=a 0.0.10.in-addr.arpa <server>
これはメインのADドメインのDNSゾーンに対しては機能します(DCは自身をそのゾーンの空のA
レコードとして自動的に登録するため)が、空のA
レコード(手動で作成した後、アラートが消えてモニターが緑色に戻ったことを確認できます)。
もちろん、3番目のクエリは常に失敗します。これは、A
を検索するだけでは意味がないためです。逆引き参照ゾーンに記録します。
解決策:DNS Forwarder Availability Monitorを上書きして、NS
クエリではなく、転送されたゾーンに対してSOA
またはA
クエリを実行します。
これは、最初からそうしていたはずです。