LANにDNSサーバを立ててみた

2005年 8月25日 (木) 22:37:08 JST 作成

2005年 8月27日 (土) 12:21:02 JST ユーザ権限について追記

実はだいぶ前だけど、安定稼働しているので整理する意味で一稿。

何故?

Webサーバやメールサーバを立てるようになり、電源入れっぱなしの マシンが出来た。

マシンが増えて、ネットワークの管理が面倒になって来た。

他のマシンにアクセスするのに、IPがいくつなんて覚えられない。 ホスト名だけでたくさん。

LANの内外を行き来するノートPCで、WebブラウザやMUAの設定を書き換える のが邪魔くさい。

現在のネットワーク環境

とりあえずは/27にする。30台も確保できれば十分だ。

Network:   192.168.1.0/27(255.255.255.224)
Broadcast: 192.168.1.31          
HostMin:   192.168.1.1           
HostMax:   192.168.1.30          
Hosts/Net: 30

詳細

192.168.1.1 : ルータ&モデム
192.168.1.6 : FreeBSD(98)-4.11, メールサーバ
192.168.1.10 :PlamoLinux3.3, DNSサーバ(マスター), DHCPサーバ
192.168.1.11 :FreeBSD-5.3, FTPサーバ, CVSup-mirrorサーバ
192.168.1.12 :Debian/GNU Linux(Woody), DNSサーバ(スレーブ)
他クライアント数台

手順

バッタ本 を(読)みながらゴニョゴニョ

bind9 をインストール

Plamo は適当なサイトから最新安定版のソースを貰って来て、 ./configure (option) && make && install。

Debianはapt-get install bind9。

スーパーユーザ権限で動作しないように起動ユーザ、グループを 作成しておく(named,named)

named.conf 編集

マスター及びスレーブ

ゾーンファイル(正引き、逆引き)編集

マスターのみ。スレーブはゾーン転送により自動作成

SOA,A,MX,PTRレコード作成(CNAMEは不要)

行頭のスペースの有無、名前の最後のドットの有無に注意。

ゾーンファイル修正時には真っ先にシリアル加算のこと。

bind9起動

# /(full_path)/named -u named -c named.conf 等。
# ps aux | grep named  で起動確認
# grep named /var/log/messages でゾーンの読み込み確認

ゾーンファイル修正時は、# kill -HUP $named_pid

named.conf 修正時は、named を再起動。

クライアント設定

/etc/resolv.conf に nameserver 及び search 設定。

WinやMacはDHCPに任す。

確認

$host -t A $HOSTNAME $SERVER_IP で正引き確認。

$host -t PTR $SERVER_IP $HOSTNAME で逆引き確認。

$host -t MX $DOMAIN_NAME でMXレコード確認。

それぞれマスター、スレーブに対して実行のこと。

結果

やはりメール関連が便利になった。メールサーバをすげかえたく なっても、MUAをいじる必要はなし。

注意すべきセキュリティ情報が一つ追加された(運用しているから当然)。