Sat Nov 08, 2008 [長年日記]

#1 [電脳] SLBの裏にあるDNS

今やってる仕事で、外部公開 DNS サーバを SLB の下に置くってのがあります。

SLB の代表アドレスのネットワークと、DNS サーバ自身が置かれるネットワークは別で、SLB はルータイメージで接続されることになります。

                 ┌───┐
               ┌─┤DNS#1 │master
         ┌───┐ │ └───┘
  代表アドレス─┤ SLB  ├─┤(private)
  (global)   └───┘ │ ┌───┐ 
               └─┤DNS#2 │slave
                 └───┘

こんな感じになるんですが、この場合、ゾーン定義のNSレコードをどう書けばいいのか... と悩んでしまったのでした。

ゾーン定義のNSレコードで定義したFQDNのAレコードは、当然globalアドレスとする必要があります。この状態でmasterのゾーン情報が変更になった時、slaveに通知(notify)をしたいのですが、globalなアドレスに対して変更通知を送っても、まともに届くとは思えません。

DNS#1とDNS#2でviewを定義して、localhostからのアクセスをprivateなアドレスになるよう、両方をmasterで定義してみたところ、ゾーン情報の転送は上手くいきました。が、DNS#1からの変更通知をDNS#2が受けると、SOAが不当だってことで拒否してしまいます。そりゃそうです。DNS#1から受けた変更通知ドメインのSOAは、DNS#2では自分自身になるんですから。

で、いろいろ調べてみたら、答えは簡単でした。view定義なんか不要で、単に変更を通知したいアドレスを also-notify に定義すればいいだけでした。

なんてことを、今日は休日出勤して実験してました。

本日のツッコミ(全1件) [ツッコミを入れる]
1 わたなぁべ りっきー (Sun Nov 09, 2008 12:11)

おお~ <br>休日出勤をして <br>そんなことをしているんだ~(@0@) <br>

[]

«前の日記(Fri Oct 31, 2008) 最新