Fedora Core 4 で書き換え(2005.08.07)
DNSサーバ(Linux)
名前解決
--------------------------------------------------------------------------------
/etc/resolve.conf
リゾルバという名前解決モジュールが使用する参照ファイル
search sen.zive.net ホスト名のみの問い合わせに対して、付加するドメイン名
domain sen.zive.net ドメイン名
nameserver 192.168.0.16 DNSサーバ
nameserver 211.***.**.*** プロバイダーのDNS
--------------------------------------------------------------------------------
/etc/host.conf
リゾルバが名前解決する方法を指定
order hosts,bind 左から順に指定された方法で名前解決
multi on ホスト名が複数のIPアドレスを持っていた場合の対応
--------------------------------------------------------------------------------
/etc/hosts
IPアドレスに対応したホスト名
127.0.0.1 localahost localhost.localdomain
192.168.0.16 sen.zive.net sen.or.tp
--------------------------------------------------------------------------------
DNSの設定は、/etc/named/chroot/の中で行います
これは、ネームサーバのセキュリティ強化のためで
namedがroot権限で動作していた場合、namedが乗っ取られると同時にroot権限を奪われます
このため、namedをchroot環境で動作させることにより、セキュリティを保ちます
Fedora Coreでは、bind-chrootがインストールされていれば、chrootディレクトリ内で設定ができます
/var/named/chroot/etc/named.conf
このファイルでその他の設定ファイルの場所を示したり、bind 全体の設定を行います。
具体的には、zone に対するファイルをどこにおくだとか相対パスのための設定などがあります。
つまり、設定ファイルがどこにあるかを設定するのがこのファイルの役割といえます。
下記を追加する
// 正引きファイルの場所
zone "sen.zive.net" {
type master;
file "sen.zive.net.zone";
allow-update { none; };
};
// 逆引きファイルの場所(ipが逆順になっている 192.168.0.16の場合)
zone "0.168.192.in-addr.arpa" {
type master;
file "0.168.192.in-addr.arpa.zone";
};
/var/named/chroot/var/named/sen.zive.net.zone 正引き ゾーンファイル
$TTL 86400
@ IN SOA sen.zive.net. root.sen.zive.net.(
2004071401 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS sen.zive.net. ; Name Server
IN MX 10 sen.zive.net. ; Mail Server
sn IN A 192.168.0.16 ; subドメイン
guest IN A 192.168.0.16 ; subドメイン
vd IN A 192.168.0.17 ; 他のPCのsubドメイン
www IN CNAME sn ; wwwsubドメインを snと同じにする
/var/named/chroot/var/named/0.168.192.in-addr.arpa.zone 逆引き ゾーンファイル
$TTL 86400
@ IN SOA sen.zive.net. root.sen.zive.net.(
2004071401 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS sen.zive.net. ; Name Server
16 IN PTR sn.sen.zive.net. ; Sub domain
17 IN PTR vd.sen.zive.net. ; Sub Domain
--------------------------------------------------------------------------------
正引き ゾーンファイルの記述
SOA (Start Of Authoritey) : ゾーン情報の指定(Zoneファイルの最初に置かれる)
@ IN SOA <ネームサーバ> <メールアドレス>
メールアドレスは、@の代わりに「.」を使用する
NS (Name Service) : 対象ドメインのゾーン情報をもっているDNSサーバー指定
(マスタとスレーブの最低2つ必要)
<ドメイン名> IN NS <ネームサーバ>
MX (Mail Exchange) : 対象ドメインのメール受信サーバー指定
<ドメイン名> IN MX <順位> <メールサーバ>
(順位は、10,20,30でそれぞ第1メールサーバ、第2・・)
A (Address) : 正引きデータ指定(ホスト名をIPアドレスにマッピングする)
<ホスト名> IN A <IPアドレス>
CNAME (Canonical Name) : ドメインの別名指定
<別名> IN CNAME <ホスト名>
--------------------------------------------------------------------------------
逆引き ゾーンファイルの記述
SOA (Start Of Authoritey) : ゾーン情報の指定(Zoneファイルの最初に置かれる)
@ IN SOA <ネームサーバ> <メールアドレス>
メールアドレスは、@の代わりに「.」を使用する
NS (Name Service) : 対象ドメインのゾーン情報をもっているDNSサーバー指定
(マスタとスレーブの最低2つ必要)
<ドメイン名> IN NS <ネームサーバ>
A (Address) : 指定されたドメインに対してネットマスクを指定する
<ドメイン名> IN A <ネットマスク>
ドメイン名の指定方法は、IPアドレスを逆に並べ、最後に
.in-addr.arpaをつける
PTR(Pointer) 逆引きデータ指定(IPアドレスをホスト名に変換する)
<IPアドレス> IN PTR <ホスト名>
(IPアドレスはネットマスクの桁のみ指定)
--------------------------------------------------------------------------------
DNSサーバの起動
# /etc/rc.d/init.d/named start
--------------------------------------------------------------------------------
DNSサーバの動作確認
# nslookup
> ホスト名 (正引き)
> IP (逆引き)
> exit
# nslookup
> set type=mx MXレコードのテスト
> ホスト名
> net type=a Aレコードのテスト
> exit
サンプル
resolve.conf
named.conf
正引き(sen.zive.net)zoneファイル
逆引き(0.168.192)zoneファイル
利用するwindowsPCの設定
dnsサーバの第1番目に、dnsサーバのIPアドレスを設定する
第1番目のdnsサーバ
nslookupでの参照が可能となる
外向きDNSと内向きDNS
外部DNS match-clients { any; };
内部DNS match-clients { 192.168.0.0/24; };
view "inside" {
match-clients { 192.168.0.0/24; 127.0.0.1; };
recursion yes;
zone "." {
type hint;
file "named.ca";
};
// 127.0.0のゾーン情報
zone "0.0.127.in-addr.arpa" {
type master;
file "localhost.rev";
};
// 192.168.0のゾーン情報
zone "0.168.192.in-addr.arpa" {
type master;
file "lan.rev";
};
};
view "outside" {
match-clients { any; };
// 再帰問い合わせ禁止
recursion no;
zone "sen.zive.net" {
type master;
file "sen.zive.net.zone";
};
};
[ホームページに戻る] [Linux(Fedora)に戻る]