DNSサーバ
LAN内専用にDNSサーバを立てhostsファイルをいじらなくてもすむようにする。
_ bind9のインストール
$ sudo apt-get install bind9
_ optionで内部アクセスに限定
$ sudo vi /etc/bind/named.conf.options
変更前:
options { ... };
以下を追加:
options { ... allow-query{ 127.0.0.1; 192.168.0.0/24; }; allow-recursion{ 127.0.0.1; 192.168.0.0/24; }; allow-transfer{ 127.0.0.1; 192.168.0.0/24; }; forwarders{ 192.168.0.1; }; };
forwardersは通常ルータのアドレス。以下のコマンドで確認する。
$ cat /etc/resolv.conf
_ ゾーンを追加
$ sudo vi /etc/bind/named.conf
最後に以下を追加
zone "myhost.example.com" IN { type master; file "/etc/bind/myhost.example.com.zone"; allow-update { none; }; };
_ ゾーンファイル作成
$ sudo vi /etc/bind/myhost.example.com.zone
$TTL 86400 @ IN SOA myhost.example.com. webmaster.myhost.example.com. ( 2008102000 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS myhost.example.com. IN MX 10 myhost.example.com. @ IN A 192.168.0.100 * IN A 192.168.0.100
2008102000のところは日付に変える(適当でいい)。
_ リスタートして動作確認
_ myhost.example.comを確認
$ sudo /etc/init.d/bind9 restart $ dig @192.168.0.100 myhost.example.com ... myhost.example.com. 86400 IN A 192.168.0.100 ...
Aレコードで"192.168.0.100"が帰ってくるか確認する。
_ 一般のホストで確認
$ dig @192.168.0.100 www.google.com
_ Windowsから確認
_ myhost.example.comを確認
コマンドプロンプトで確認
>nslookup myhost.example.com 192.168.0.100
Address: 192.168.0.100が帰ってくるか確認。
_ 一般のホストで確認
>nslookup www.yahoo.co.jp 192.168.0.100
_ WindowsのDNSサーバ設定を変える。
_ hostsファイルを元に戻す
hostsファイルを書き換えてある場合は、C:\WINDOWS\system32\drivers\etc\hostsを開き、192.168.0.100のある行を削除する。
_ 設定を変える
TCP/IPのプロパティからDNSサーバのアドレスを192.168.0.100にする。
この設定も自動でやりたい場合はルータ(DHCP)の設定から設定できるかもしれない。
_ 確認する
キャッシュが残ってる可能性があるのでWindowsを再起動してから(またはLAN内の他のPCから)http://myhost.example.com/にアクセスできるか確認する。http://www.yahoo.co.jp/なども確認する。
添付ファイル: tcpipdns.png 182件
[詳細]
Last-modified: 2009-01-23 (金) 13:49:17 (5572d)