DNS サーバを建てた

<< 戻る   トップ >>

cron による定期バックアップ (毎月) シェルを作った。少し迷ったのだが、一応メールでその旨報告する仕様にした。問題は件のメールアドレスのメールをあまり頻繁に見ることがない、という所だ。しかし、仕事用のメールアドレスに送るのもナニだし、たまには目を通さないこともないので良としよう。

迷った末に、結局 DNS を運用することにした。目的はただひとつ、家の LAN から museo.atso-net.jp を参照しやすくすることである。何もしないで museo.atso-net.jp のアドレス解決をすると、so-net のダイナミック DNS サービスが指し示す WAN アドレスが返される。それは正しいのだが、唯一、家のLAN からは外部にあるはずの museo が実は内部にあるので不都合となるわけだ。それほど必死に解決しなくてもいくつか代替手段はあるのだが、家と外部とで接続されるポータブルマシンがあって /etc/hosts をいちいち書き換えて運用したり、内部・外部用の異なったブックマークを持つのも面倒だ。したがって、家の LAN に接続しているマシンにプライベートアドレスを与える手段があればよい。

ここで考えなくてはいけないのが DHCP との関係だ。現状では DHCP は NTT から借りている CTU (Customer network Terminating Unit: 加入者網終端装置) が担っている。実はこの CTU が DNS サーバも兼ねていて、すべてを CTU を任せてしまうのがもっともお手軽な運用手段だ。DNS サーバとしての CTU に museo.atso-net.jp の内部アドレスを設定する機能は (当然ながら) ない。では、DNS サーバの DHCP アナウンスを設定できるかと言うと、それもできない。CTU の DHCP を殺して別途 DHCP サーバを立ち上げることならできるが、それはちょっと億劫だ。幸い、「ドメイン問い合わせ機能」なる機能があって、特定のドメインについて問い合わせる DNS サーバを設定できるというものだ。おそらく BIND の forwarder 設定のようなものだろう。これで、LAN からの museo.atso-net.jp に対する問い合わせだけを LAN 内の DNS サーバに処理させることができる。

当初、atso-net.jp の処理をすべて引き受けて、museo 以外は外部のサーバに再委託、という絵図を書いてみたのだが、これはうまくいかなかった。よく考えてみれば再委託されるサーバの負荷の問題のあるし、不正な回答をする DNS サーバを作り放題にできるわけでもあり、きっちりと処理すべきなのであろう。

きっちり処理すると言えば、BIND の動作に chroot モードなるものがあることを知らず、しばし /etc や /var/named 直下の設定ファイルをいじっては思ったように動かないことに頭を抱えた。これからも懲りずにやりそうな気がするので書き留めておく。

この DNS 設定もバックアップするようにシェルを変更した。


作成: 2010-11-28 14:50:45.0更新: 2010-11-28 14:50:45.0
http://museo-anonimo.jp/nanban/?id=944,http://museo-anonimo.jp/nanban/tr/944