2004年5月5日水曜日

BINDの設定。

BINDの設定をしてみました。
やれやれ、これでサーバらしくなってきたぞ。

・hottconfigの修正
# Network configuration
HOSTNAME=サーバコンピュータ名
ROUTER=ルータのPアドレス

・設定ファイルのバグ修正
OSX10.3に付属するBINDの設定ファイルは一部のルートネームサーバのIPアドレスが正しくないので、これを修正する。
$cd /var/named
$sudo mv named.ca named.ca.2004.5.5
$sudo curl -o named.ca ftp://FTP.INTERNIC.NET/domain/named.root

BINDが正しく動作するかデバックモードで立ち上げる
$sudo /usr/sbin/named -g

runningというメッセージが表示されれば、動いているようである。
hostconfigを修正して、サーバの起動と同時にBINDが立ち上がるようにする。
$sudo pico /etc/hostconfig
DNSSERVER=-YES- ←YESにする

ひとまず、BINDを起動
$sudo /System/Library/StartupItems/BIND/BIND start

新しく稼働させたDNSサーバを参照するように、サーバのネットワーク設定をかえる。
設定はresolv.confに書かれている。
$cat /etc/resolv.conf
search ドメイン名
nameserver 127.0.0.1

・DNSサーバの設定 (正引き設定)
ゾーンファイルの作成
$sudo pico /var/named/zone-ドメイン.local
$TTL 86400
@ IN SOA dns.ドメイン.com postmaster.ドメイン.com.(
2004050501; serial
3600; refresh
900; retry
604800; expire
86400; minimum
)
;
IN NS dns.ドメイン.com.
;
IN MX 10 mail.ドメイン.com.
;
dns IN A ローカルIPアドレス
mail IN A ローカルIPアドレス
;
PowerMacG4 IN A ローカルIPアドレス
;
www IN A ローカルIPアドレス
router IN A ローカルIPアドレス
;

作成したゾーンファイルの文法チェック
$/usr/sbin/named-checkzone ドメイン.com /var/named/zone-ドメイン.local
zone ドメイン.com/IN: loaded serial 2004050501
OK

作成したゾーンファイルをBINDの設定に追加する
$sudo pico /etc/named.conf
zone "aim-lab.com" IN {
type master;
file "zone-aim-lab.local";
};

BIND設定ファイルの文法チェック
$/usr/sbin/named-checkconf

BINDの停止と再起動
$sudo /System/Library/StartupItems/BIND/BIND stop
$sudo /System/Library/StartupItems/BIND/BIND start

digコマンドでドメイン名.comのDNS情報を調べる。
ホスト情報を調べる。
$dig ドメイン.com soa
; <<>> DiG 9.2.2 <<>> ドメイン.com soa
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36765
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;ドメイン.com. IN SOA
;; ANSWER SECTION:
ドメイン.com. 86400 IN SOA dns.ドメイン.com.ドメイン.com. postmaster.ドメイン.com. 2004050501 3600 900 604800 86400
;; AUTHORITY SECTION:
ドメイン.com. 86400 IN NS dns.ドメイン.com.
;; ADDITIONAL SECTION:
dns.ドメイン.com. 86400 IN A ローカルIPアドレス
;; Query time: 2 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri May 7 18:02:11 2004
;; MSG SIZE rcvd: 126
$dig dns.aim-lab.com
; <<>> DiG 9.2.2 <<>> dns.ドメイン.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55077
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;dns.ドメイン.com. IN A
;; ANSWER SECTION:
dns.ドメイン.com. 86400 IN A ローカルIPアドレス
;; AUTHORITY SECTION:
ドメイン.com. 86400 IN NS dns.ドメイン.com.
;; Query time: 2 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri May 7 18:02:48 2004
;; MSG SIZE rcvd: 63

・DNSサーバの設定 (逆引き設定)
ゾーンファイルの作成
$sudo pico /var/named/rev-ドメイン.local
$TTL 8600
@ IN SOA dns.ドメイン.com postmaster.ドメイン.com. (
2004050501; serial
3600; refresh
900; retry
604800; expire
86400; minimum
)
;
IN NS dns.ドメイン.com.
;
IPアドレス IN PTR router.ドメイン.com.
IPアドレス IN PTR PowerMacG4.ドメイン.com.
;

作成したゾーンファイルの文法チェック
$/usr/sbin/named-checkzone 0.168.192.in-addr.arpa /var/named/rev-ドメイン.local
zone 0.168.192.in-addr.arpa/IN: loaded serial 2004050501
OK

作成したゾーンファイルをBINDの設定に追加する。
$sudo pico /etc/named.conf
zone "0.168.192.in-addr.arpa" IN {
type master;
file "rev-aim-lab.local";
};

BIND設定ファイルの文法チェックとBINDの停止・再起動
$/usr/sbin/named-checkconf
$sudo /System/Library/StartupItems/BIND/BIND stop
$sudo /System/Library/StartupItems/BIND/BIND start

digコマンドでゾーンデータが正常がどうかチェックを行う
$dig -x 192.168.0.4
; <<>> DiG 9.2.2 <<>> -x 192.168.0.4
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 44973
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;4.0.168.192.in-addr.arpa. IN PTR
;; ANSWER SECTION:
4.0.168.192.in-addr.arpa. 8600 IN PTR PowerMacG4.ドメイン.com.
;; AUTHORITY SECTION:
0.168.192.in-addr.arpa. 8600 IN NS dns.ドメイン.com.
;; ADDITIONAL SECTION:
dns.ドメイン.com. 86400 IN A 192.168.0.4
;; Query time: 2 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri May 7 18:07:26 2004
;; MSG SIZE rcvd: 112

・インターネット公開用の正引き設定ファイルの作成
ローカル用のゾーンファイルをコピーして編集
$sudo cp /var/named/zone-ドメイン.local /var/named/zone-ドメイン.global
$sudo pico /var/named/zone-ドメイン.global
$TTL 86400
@ IN SOA dns.ドメイン.com postmaster.ドメイン.com.(
2004050501; serial
3600; refresh
900; retry
604800; expire
86400; minimum
)
;
IN NS dns.ドメイン.com.
;
IN MX 10 mail.ドメイン.com.
;
dns IN A ローカルIPアドレス
mail IN A ローカルIPアドレス
;
www IN A  ローカルIPアドレス
;

BINDの設定ファイルに、作成したゾーンファイルの設定を追加
$sudo pico /etc/named.conf
// Declares control channels to be used by the rndc utility.
// It is recommended that 127.0.0.1 be the only address used.
// This also allows non-privileged users on the local host to manage
// your name server.
//
controls {
inet 127.0.0.1 port 54 allow {any; };
};
options {
directory "/var/named";
/*
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
*/
// query-source address * port 53;
};
acl localnet {
192.168.0.0/24;
127.0.0.1;
};
view "inside" {
match-clients { localnet; };
//
// a caching only nameserver config
//
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
zone "ドメイン.com" IN {
type master;
file "zone-ドメイン.local";
};
zone "0.168.192.in-addr.arpa" IN {
type master;
file "rev-ドメイン.local";
};
};
view "outside" {
match-clients { any; };
zone "ドメイン.com" IN {
type master;
file "zone-ドメイン.global";
};
};

BINDの設定ファイルの文法チェック
$/usr/sbin/named-checkconf

BINDの停止と再起動
$sudo /System/Library/StartupItems/BIND/BIND stop
$sudo /System/Library/StartupItems/BIND/BIND start
$tail -f /var/log/system.log

0 件のコメント: