2004.12.28
DNSサーバの構築・・・(FreeBSD)
DNSサーバと言っても家庭内で1つのIPアドレスしかなく全てのサービスを1つのサーバで行うより無く、しかもどこかのプロバーダー経由の接続であるから、プロバーダーの提供しているDNSサーバを頼るだけでも事は足りる。
しかし、一応DNSサーバを立てて動作させることとしたがIPアドレスが一つでの運用であるため、専ら自宅内のローカルエリアの設定であり、外にアクセスするためのDomain Nameの解決が主目的となる。
FreeBSDも5.3になって設定ファイルの置き場のnamedbの場所が/etc/namedbより
/var/named/etc/nameddbに変わたが、/etc/namedbにリンクが貼られているので従来通り/etc/namedで作業ができる。
まず最初に./make-localhostとして設定ファイルのlocalhost.revを作る。
あれー、出来ないと思ってPROTO.localhost.revを使って自分で作ろうなどと思ってはいけない(私はやってしまった)。ちゃんとmasterというフォールダ内に出来ている。
次に正引きと逆引きの記述ファイルをつくる。
ファイルの名前は何でも良いが正引きをmyhome.zone 逆引きをmyhome.revとでもして話を進める。
さて、myhome.zoneの中身の例だが、次のように書き./slave Directoryに入れる。
-------------------------------------------- ; /etc/namedb/myhome.zone ; host name --> IP address for fam.cx ; @ IN SOA uls.fam.cx. root.fam.cx. ( 1999120500 ; Serial 3600 ; Refresh 900 ; Retry 3600000 ; Expires 3600 ) ; TTL ; IN NS uls.fam.cx. IN MX 10 uls.fam.cx. uls IN A 192.168.1.5 uls2 IN A 192.168.1.6 localhost IN A 127.0.0.1 luna IN A 192.168.1.2 soleil IN A 192.168.1.4 satoru IN A 192.168.1.10 nakamura IN A 192.168.1.11 uls.flets.cds.ne.jp IN CNAME uls.fam.cx. ----------------------------------------------
サーバのhostnameはプロバイダーから貰ったものとDynamicDNSに登録したのと2つあるのでどちらでも良いようにCNAMEにもう1つの名前を書いておいた。
逆引きのmyhome.revは次のように書き、./slave Drirctoryに入れる。
---------------------------------------------- ; /etc/named/myhome.rev ; IP address --> host name for fam.cx ; @ IN SOA uls.fam.cx. root.fam.cx. ( 1999120500 ; Serial 3600 ; Refresh 900 ; Retry 3600000 ; Expires 3600 ) ; TTL IN NS uls.fam.cx. 2 IN PTR luna.fam.cx. 4 IN PTR soleil.fam.cx. 5 IN PTR uls.fam.cx. 6 IN PTR uls2.fam.cx. 10 IN PTR satoru.fam.cx. 11 IN PTR nakamura.fam.cx. ---------------------------------------
最後にname.confを以下のように書く。
------------------------------------------ options { directory "/etc/namedb"; pid-file "/var/run/named/pid"; dump-file "/var/dump/named_dump.db"; statistics-file "/var/stats/named.stats"; forwarders { 210.254.64.10; }; }; zone "." { type hint; file "named.root"; }; zone "0.0.127.IN-ADDR.ARPA" { type master; file "master/localhost.rev"; }; zone "fam.cx" { type slave; file "slave/myhome.zone"; masters { 192.168.1.5; }; allow-transfer {192.168.1/24; 127.0.0.1;}; allow-query {192.168.1/24; 127.0.0.1;}; }; zone "1.168.192.in-addr.arpa" { type slave; file "slave/myhome.rev"; masters { 192.168.1.5; }; allow-transfer {192.168.1/24; 127.0.0.1;}; allow-query {192.168.1/24; 127.0.0.1;}; }; -------------------------------------------------
ここまで、準備が出来たら/etc/rc/confにnamed_enable=”YES”を追加してサーバを
再起動すればDNSサーバが動くはずである。
nslookup www.yahoo.co.joなどとやって、IPアドレスが表示されるか試してみよう。
また、IPアドレスから名前が引けるかも同様に確認する。
コメント
コメントフィードを購読する
コメント投稿