ドメインの取得は簡単になりましたが、 固定IPアドレス取得(IPアドレスの個数)、 第2ネームサーバをどうするか 等、個人でインターネット向けネームサーバを動かすには簡単にはいかないようです。 私の場合、最初、実験的にIPアドレス8個貸出しサービスを利用し、第2ネームサーバも立てていましたが、 現在は、固定IPアドレス1個、第2ネームサーバは外部(プロバイダを利用、有料)で運用できています。 利用できるIPアドレスの個数により設定の記述が異なりますが、ここでは 固定IPアドレス1個 としておきます。 namedデーモン1つで、インターネット用とローカルネットワーク用が両立できますので、 ローカルネットワークも記述しておきます。 (1) ドメイン 例 hoge.org 取得したインターネット用ドメイン sub.hoge.org ローカルネットワーク用ドメイン (自由に) ここでは取得したドメインのサブドメインにしてあります。 (2) ローカルネットワーク ローカルのドメイン sub.hoge.org ルータ 192.168.0.1 gw.sub.hoge.org サーバ 192.168.0.2 sv.sub.hoge.org その他 192.168.0.x xxx.sub.hoge.org 注:ルータのDHCPサーバでローカルのパソコンにIPアドレスを割り当てる場合は、 割当範囲を、例えば192.168.0.100以降に設定し、重複しないようにしておきます。 (3) ルータの設定 ローカルにあるサーバをインターネットに公開するNAT等の設定をします。 プロトコル、ポート番号、IPアドレスなど、ルータのマニュアルに従う。 (メーカーにより用語がちがい、分かりにくい。つまずきやすい。) (4) 各種設定ファイル [/etc/named.conf] (Bind 8 系で使っていたnamed.confをBind 9 でも利用しています。) options { directory "/var/named"; <= named関係のファイルの置き場所 }; zone "." { type hint; file "named.ca"; }; zone "localhost" { type master; file "localhost.zone"; <= 正引き(ファイル名は自由に) allow-update { none; }; }; zone "0.0.127.in-addr.arpa" { type master; file "named.local"; <= 逆引き(ファイル名は自由に) allow-update { none; }; }; zone "sub.hoge.org" { type master; file "hoge.org.local"; <= ローカル正引き(ファイル名は自由に) notify no; allow-transfer{ 192.168.0/24; 127.0.0.1; }; allow-query{ 192.168.0/24; 127.0.0.1; }; }; zone "0.168.192.in-addr.arpa" { type master; file "hoge.org.local.rev"; <= ローカル逆引き(ファイル名は自由に) notify no; allow-transfer{ 192.168.0/24; 127.0.0.1; }; allow-query{ 192.168.0/24; 127.0.0.1; }; }; zone "hoge.org" { type master; file "hoge.org.zone"; <= インターネット用zone (ファイル名は自由に) notify yes; allow-transfer{ xxx.xxx.xxx.xxx; <= 第2ネームサーバからのアクセス許可 }; allow-query{ any; }; }; [/etc/resolv.conf] ドメインとネームサーバについて記述します。 search sub.hoge.org hoge.org nameserver 192.168.0.2 <= ローカルのサーバ nameserver xxx.xxx.xxx <= プロバイダのネームサーバ nameserver xxx,xxx,xxx domain sub.hoge.org <= ローカルのドメイン [/var/named/hoge.org.zone] 取得したドメイン用正引きです。 (逆引きファイルは作っていません。) $TTL 86400 @ IN SOA sv.hoge.org. user.sv.hoge.org. ( 2006010101 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum ; @ IN NS sv.hoge.org. <= 自前ネームサーバ @ IN NS abc.pqr.org. <= 第2ネームサーバ @ IN MX 5 sv.hoge.org. <= 自前メールサーバ ; www IN CNAME sv.hoge.org. mail IN CNAME sv.hoge.org. ; sv IN A yyy.yyy.yyy.yyy <= 自前サーバの固定IPアドレス ; [/var/named/hoge.org.local] ローカルネットワーク用正引き $TTL 86400 @ IN SOA sv.sub.hoge.org. user.sv.sub.hoge.org. ( 2006010101 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum ; @ IN NS sv.sub.hoge.org. @ IN MX 5 sv.sub.hoge.org. ; www IN CNAME sv.sub.hoge.org. mail IN CNAME sv.sub.hoge.org. ; gw.sub.hoge.org. IN A 192.168.0.1 sv.sub.hoge.org. IN A 192.168.0.2 その他 [/var/named/hoge.org.local.rev] ローカルネットワーク用逆引き $TTL 86400 @ IN SOA sv.sub.hoge.org. user.sv.sub.hoge.org. ( 2006010101 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum ; IN NS sv.sub.hoge.org. ; IN PTR sub.hoge.org. IN A 255.255.255.0 ; ; 1 IN PTR gw.sub.hoge.org. 2 IN PTR sv.sub.hoge.org. その他 [/var/named/local/host.zone] ローカルホスト正引き $TTL 86400 @ IN SOA sv.sub.hoge.org. user.sv.sub.hoge.org. ( 2006010101 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum ; IN NS @ IN A 127.0.0.1 [/var/named/named.local] ローカルホスト逆引き $TTL 86400 @ IN SOA sv.sub.hoge.org. user.sv.sub.hoge.org. ( 2006010101 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum ; ; IN NS localhost. 1 IN PTR localhost. 以上 三巻