全部のマシンの hosts を編集とかテラダサスwwwぷぷpとか言われたので (脳内変換です)、DNS サーバ立てて一元管理することにした。
サーバは ubuntu 6.06 LTS。普通に BIND を使うことにした。
BIND のインストール。sudo apt-get install bind。終了
ubuntu (というか Debian) は設定ファイルが分かれていて、基本的に named.conf は編集しないみたい? とりあえず自分の場合は named.conf.options と named.conf.local だけ編集した。
named.conf.options
// 最初に
// アクセスコントロールリストの設定
acl lan {
127.0.0.1;
192.168.0.0/16;
};
// options セクション内に
// 内側からのだけクエリに答える
allow-query {
lan;
};
// キャッシュサーバを使う
// そして内側に限定
recursion yes;
allow-recursion {
lan;
};
// スレーブとかない
allow-transfer {
none;
};
// 自分に登録されてないとき丸投げする先
// ルータが DNS Proxy になっているのでルータの IP だけ
forwarders {
192.168.0.1;
}; named.conf.local
// 正引き
zone "lab.lowreal.net" {
type master;
file "/etc/bind/db.lab.lowreal.net";
};
// 逆引き
zone "0.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.192.168.0";
}; 正引き DB (db.lab.lowreal.net)
$TTL 1d @ IN SOA lab.lowreal.net. root.lab.lowreal.net. ( 2006070901 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS ns.lab.lowreal.net. IN MX 10 lab.lowreal.net. @ IN A 192.168.0.250 ns IN A 192.168.0.250 charlotte IN A 192.168.0.250 nina IN A 192.168.0.251 trac IN CNAME charlotte svn IN CNAME charlotte
逆引き DB (db.192.168.0)
$TTL 1d @ SOA lab.lowreal.net root.lab.lowreal.net. ( 2006070901 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS ns.lab.lowreal.net. IN PTR lab.lowreal.net. IN A 255.255.255.0 1 IN PTR gateway.lab.lowreal.net. 250 IN PTR lab.lowreal.net.
これで再起動 (sudo /etc/init.d/bind restart) して一通り DNS ひけるようになった。
しかしながら、LAN 内のホストをフルネーム (nina.lab.lowreal.net) で呼ぶのがだるいので、各 PC に DNS サフィックスを設定する。
Linux の場合は /etc/resolv.conf に以下のように書けばいいらしい。
search lab.lowreal.net nameserver 127.0.0.1
Windows の場合は該当インターフェイスのプロパティから、TCP/IP のプロパティを開いて、詳細設定、DNS タブにある「以下の DNS サフィックスを順に追加する」を選択、lab.lowreal.net を追加してあげればいいっぽい。
C:\>nslookup Default Server: lab.lowreal.net Address: 192.168.0.250 > nina Server: lab.lowreal.net Address: 192.168.0.250 Name: nina.lab.lowreal.net Address: 192.168.0.251
なんかキモイことになったので、ワイルドカードをやめた。今日もまた IRC でひたすらお世話になりっぱなしです。