SSブログ

WindowsのActive DirectoryとbindによるDNSの連携 [備忘録]

※ MicrosoftのTECHNETやその他検索エンジンからお越しの方は、このアーティクルではなく、WindowsのActive DirectoryとbindによるDNSの連携 やりなおし編の方をご覧ください。このアーティクルのままだと酷い目に遭いますので…orz

 自慢じゃないが、Windows Serverについては門外漢だったので、Windows Serverについてはなかばほったらかしししてたところ、Active DirectoryにはDNSが必須で、Windows Serverに組み込まれているDNSがいろいろとアレで困ったちゃんだったので、もともとbind9でDNSを立て、そちらにActive Directoryが必要とするDNSの機能について面倒を見させることに。

 調べてみると、Windows ServerにWindows版のbindを入れて…みたいな記事はいろいろ出てきたようだったが、Linuxのbind9で…という情報がわかりづらかったので、ここで軽く整理。

 前提知識として、『どうしてActive DirectoryにDNSが必須なんですか?』という疑問点について整理すると、結局のところ、そのドメイン(?)を管理しているADサーバの情報を、DNSのSRVレコードに登録・管理しているという点になるのかすらね。よって、bind9側はこの「SRVレコード」に対応していなければならないが、いまどきのbind9なら全く問題なく対応している模様だ。

 そして、注意事項としては、Active DirectoryはDNSデータを動的に更新するようなので、少なくとも、Windows ServerからのDNS更新については許可すべきということらしい。Microsoftの説明によれば、「強く推奨」ということのようなので、最悪一切不許可でも良いのかもしれない。そのあたりは組織内のネットワーク管理ポリシー、あるいはDNSの管理ポリシー次第か。

 では、Linuxなbind9にWindows ServerのActive Directoryで必要とするDNSの機能の面倒をみさせる方法を以下にメモメモ。

 おおまかな手順としては以下の通りか。
①bind9が動作しているLinuxサーバ側で、Active Directoryで使用するドメイン(?)についてゾーンを作成する
②bind9が動作しているLinuxサーバ側で、Windows ServerからのDNSゾーンデータの動的更新について許可設定を加える
③Active Directoryを管理しているWindows Server側の「TCP/IPのプロパティ」で、DNSの参照先をbind9が動作しているLinuxサーバ」に変更する
④Active Directoryを管理しているWindows Serverに、DNSを強制的に動的更新するよう指示する。(または再起動でも…)
⑤最大で15分待つ

①bind9が動作しているLinuxサーバ側で、Active Directoryで使用するドメイン(?)についてゾーンを作成する

 /etc/named.confに、そのドメインのPCとかサーバとかを管理するゾーンを作成する。簡単に書くとこんなのを追加。
zone "mysection.mycompany.co.jp" in {
  type master;
  file "db.mysection.mycompany.co.jp.zone";
};

 mysection.mycompany.co.jpの部分はそれぞれのドメイン名に応じて変更してもらうとして、ゾーンファイルの中には最低でもSOAレコードとNSレコード、DNSサーバ自身とWindows ServerのAレコードかCNAMEレコードあたりは書いておく。

 ここまでの部分がまずは完全であることを確認する。nslookupとかdigとかお好みのコマンドでどうぞ。

②bind9が動作しているLinuxサーバ側で、Windows ServerからのDNSゾーンデータの動的更新について許可設定を加える

 「①」が完璧で有ることがかくにんできたら、次は先ほどのゾーンセクションの中に、動的更新を許可する設定を追加する。
zone "mysection.mycompany.co.jp" in {
  type master;
  file "db.mysection.mycompany.co.jp.zone";
  allow-update { 192.168.0.1;
  };
};

 追記した部分は、
allow-update { Windows ServerのIPアドレス;
};
 という部分。もし、Active Directoryサーバが複数立っている場合は、全部のサーバについて書く必要が有るらしい。

 ここまで済んだら、namedをリロードなり再起動なりしておく。個人的には再起動を推奨かね?

③Active Directoryを管理しているWindows Server側の「TCP/IPのプロパティ」で、DNSの参照先をbind9が動作しているLinuxサーバ」に変更する

 コントロールパネルからネットワークのプロパティを開き、TCP/IPの設定を変更する。DNSの参照先設定が記述されている部分を変更し、bind9が動作している(今設定変更を行った)Linuxサーバのアドレスを設定してOKをクリックして閉じる。

④Active Directoryを管理しているWindows Serverに、DNSを強制的に動的更新するよう指示する。(または再起動でも…)

 Windows Serverのコマンドプロンプトから、IPCONFIG /REGISTERDNS というコマンドを入力する。

⑤最大で15分待つ

 DNSゾーンデータの動的更新が開始されると、(おそらく)/var/log/messages等にWindows Serverから更新があったので追加しましたよ~|削除しましたよ~  みたいなログが出るので、それを確認する。rejectとかされているようなら、aclの設定とかiptablesの設定とか関係しそうなところをチェック。
nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。