2005年04月16日
DNSサーバー
Linux歴も半年になると一生自分には理解できないと思われたような事が、不思議に自然と分かってきます。
多分自宅サーバーを構築する時の最初の壁は、ルーターのポート・フォワーディング設定だと思います。
多分自宅サーバーを構築する時の最初の壁は、ルーターのポート・フォワーディング設定だと思います。
これを最初からiptablesを使ってNIC2枚でPCルーターで構築しようとすると、難易度は10倍くらいに上がってしまいます。
あと個別のWeb,Mail,ssh,ftp,Samba,WebDAV,Squidのサーバー等は最近は非常に分かり易い設定のHow toサイトがあるので,僕も分厚い本を読むことなく大いに助けられました。
あと個別のWeb,Mail,ssh,ftp,Samba,WebDAV,Squidのサーバー等は最近は非常に分かり易い設定のHow toサイトがあるので,僕も分厚い本を読むことなく大いに助けられました。
そしてその次の壁はDNSの設定ではないかと思います。
これは単純に見えて本当に奥が深く、正直一番苦しみました。
Googleで検索しても何故かプロバイダーのように個別の2つの固定IP、ns1とns2とで複数のネームサーバーを分かりやすく設定する方法が検索できません。
これは単純に見えて本当に奥が深く、正直一番苦しみました。
Googleで検索しても何故かプロバイダーのように個別の2つの固定IP、ns1とns2とで複数のネームサーバーを分かりやすく設定する方法が検索できません。
またあまりに丁寧過ぎて設定が面倒な方法が多いので,
内部向けの設定等が不要な場合ならばこれ以上記述を削れない限界まで簡易に設定する方法を試してみました。
テストしたのはFedora Coreの1と3ですが、多分2でも問題ないと思います。
ここでの2つの固定IPは別の場所にあり、両方とも逆引き出来ない固定IPです。
逆引きの設定が必要な場合は以下にその設定を加えて下さい。
テストしたのはFedora Coreの1と3ですが、多分2でも問題ないと思います。
ここでの2つの固定IPは別の場所にあり、両方とも逆引き出来ない固定IPです。
逆引きの設定が必要な場合は以下にその設定を加えて下さい。
※プライマリDNSサーバー設定
/var/named/chroot/etc/named.conf
options {
directory "/var/named";
allow-query { any ; };
allow-transfer { xxx.xxx.xxx.xxx; };←セカンダリーDNSサーバーIP
notify yes;
};
directory "/var/named";
allow-query { any ; };
allow-transfer { xxx.xxx.xxx.xxx; };←セカンダリーDNSサーバーIP
notify yes;
};
zone "." IN {
type hint;
file "named.ca";
};
zone "0.0.127.in-addr.arpa" in {
type master;
file "127.0.0.zone";
type master;
file "127.0.0.zone";
};
// domain1の正引きゾーン情報
zone "domain1" IN {
type master;
file "domain1.db";
};
zone "domain1" IN {
type master;
file "domain1.db";
};
// domain2の正引きゾーン情報
zone "domain2" IN {
type master;
file "domain2.db";
};
// domain3の正引きゾーン情報
zone "domain3" IN {
type master;
file "domain3.db";
};
ルートゾーンzoneファイル FCの場合named.caはインストール済み
[root@linux ~]# dig > /var/named/chroot/var/named/named.ca
で最新化が可能
127.0.0.zoneファイル(ローカルループバック)
$TTL 3600
@ IN SOA ns.domain1. root.domain1. (
2005041601 ; Serial
3600 ; Refresh
900 ; Retry
604800 ; Expire
3600 ) ; Minimum
IN NS ns.domain1.
@ IN SOA ns.domain1. root.domain1. (
2005041601 ; Serial
3600 ; Refresh
900 ; Retry
604800 ; Expire
3600 ) ; Minimum
IN NS ns.domain1.
3 IN PTR localhost. ←左の3はプライマリのサーバープライベートIPアドレス
(例:192.168.0.3の末尾番号)を指定
(例:192.168.0.3の末尾番号)を指定
domain1.dbゾーンファイル設定
$TTL 86400
@ IN SOA ns.domain1. root.domain1.(
2005041601 ; Serial
7200 ; Refresh
7200 ; Retry
2419200 ; Expire
86400 ) ; Minimum
@ IN SOA ns.domain1. root.domain1.(
2005041601 ; Serial
7200 ; Refresh
7200 ; Retry
2419200 ; Expire
86400 ) ; Minimum
IN NS ns.domain1.
IN NS ns.domain2.
IN MX 10 domain1.
@ IN A domain1のグローバルIPアドレス
* IN A domain1のグローバルIPアドレス
IN NS ns.domain2.
IN MX 10 domain1.
@ IN A domain1のグローバルIPアドレス
* IN A domain1のグローバルIPアドレス
domain2.dbゾーンファイル設定
$ORIGIN domain2.
$TTL 86400
@ IN SOA ns.domain1. root.domain2.(
2005041601 ; Serial
7200 ; Refresh
7200 ; Retry
2419200 ; Expire
86400 ) ; Minimum
IN NS ns.domain1.
IN NS ns.domain2.
IN MX 10 domain2.
@ IN A domain2グローバルIPアドレス
* IN A domain2グローバルIPアドレス
IN NS ns.domain2.
IN MX 10 domain2.
@ IN A domain2グローバルIPアドレス
* IN A domain2グローバルIPアドレス
domain3.dbゾーンファイル設定
$ORIGIN domain3.
$TTL 86400
@ IN SOA ns.domain1. root.domain3.(
2005041202 ; Serial
7200 ; Refresh
7200 ; Retry
2419200 ; Expire
86400 ) ; Minimum
IN NS ns.domain1.
IN NS ns.domain2.
IN MX 10 domain3.
@ IN A domain3グローバルIPアドレス
* IN A domain3グローバルIPアドレス
IN NS ns.domain2.
IN MX 10 domain3.
@ IN A domain3グローバルIPアドレス
* IN A domain3グローバルIPアドレス
※セカンダリDNSサーバー設定
/var/named/chroot/etc/named.conf
options {
directory "/var/named";
allow-query { any ; };
};
zone "." IN {
type hint;
file "named.ca";
};
zone "0.0.127.in-addr.arpa" in {
type master;
file "127.0.0.zone";
type master;
file "127.0.0.zone";
};
// domain1のスレーブ設定
zone "domain1" IN {
type slave;
file "slaves/domain1.bak";
masters { xxx.xxx.xxx.xxx; };←プライマリDNSサーバーIP
zone "domain1" IN {
type slave;
file "slaves/domain1.bak";
masters { xxx.xxx.xxx.xxx; };←プライマリDNSサーバーIP
};
// domain2のスレーブ設定
zone "domain2" IN {
type slave;
file "slaves/domain2.bak";
masters { xxx.xxx.xxx.xxx; };←プライマリDNSサーバーIP
zone "domain2" IN {
type slave;
file "slaves/domain2.bak";
masters { xxx.xxx.xxx.xxx; };←プライマリDNSサーバーIP
};
// domain3のスレーブ設定
zone "domain3" IN {
type slave;
file "slaves/domain3.bak";
masters { xxx.xxx.xxx.xxx; };←プライマリDNSサーバーIP
zone "domain3" IN {
type slave;
file "slaves/domain3.bak";
masters { xxx.xxx.xxx.xxx; };←プライマリDNSサーバーIP
};
ルートゾーンzoneファイル named.caはプライマリと同じ
127.0.0.zoneファイル(ローカルループバック)
$TTL 3600
@ IN SOA ns.domain2. root.domain2. (
2005041601 ; Serial
3600 ; Refresh
900 ; Retry
604800 ; Expire
3600 ) ; Minimum
IN NS ns.domain2.
@ IN SOA ns.domain2. root.domain2. (
2005041601 ; Serial
3600 ; Refresh
900 ; Retry
604800 ; Expire
3600 ) ; Minimum
IN NS ns.domain2.
10 IN PTR localhost. ←左の10はプライマリのサーバープライベートIPアドレス
(例:192.168.0.10の末尾番号)を指定
(例:192.168.0.10の末尾番号)を指定
上手く動作するとdomain#.bak ファイルは瞬時に/var/named/chroot/var/named/slaves に自動的に作られます。
yataka1 at 17:43│TrackBack(0)│自宅サーバー
トラックバックURL
この記事へのコメント
1. Posted by 週刊!ブログランキング管理人 2005年04月30日 20:22
初めまして、突然申し訳ありません。
2週間ほど前から「週刊!ブログランキング」の運用を行っております。
貴サイト様を拝見させて頂きまして大変興味深いブログだと感じました。
宜しければ当ランキングに参加登録して頂けませんでしょうか?
○ http://kutsulog.net/
更新情報の通知設定に対応してますのでPING送信して頂ければ、
記事タイトルや更新状況を表示し、カテゴリ毎に新着記事ヘッダーがご紹介されます。
ご参加されていない方もカテゴリ毎にブログチェックが出来る等、
ご紹介機会が単なるランキングと違い多くあるのが特徴です。
また、当サイトも、ご参加サイト様からのアクセスに頼るだけのランキングサイトでは無く、
SEO対策・メルマガ・雑誌広告など広範にサイトプロモーションを行い、独自のアクセス強化を図っていきます。
是非、ご登録を宜しくお願い致します。
2週間ほど前から「週刊!ブログランキング」の運用を行っております。
貴サイト様を拝見させて頂きまして大変興味深いブログだと感じました。
宜しければ当ランキングに参加登録して頂けませんでしょうか?
○ http://kutsulog.net/
更新情報の通知設定に対応してますのでPING送信して頂ければ、
記事タイトルや更新状況を表示し、カテゴリ毎に新着記事ヘッダーがご紹介されます。
ご参加されていない方もカテゴリ毎にブログチェックが出来る等、
ご紹介機会が単なるランキングと違い多くあるのが特徴です。
また、当サイトも、ご参加サイト様からのアクセスに頼るだけのランキングサイトでは無く、
SEO対策・メルマガ・雑誌広告など広範にサイトプロモーションを行い、独自のアクセス強化を図っていきます。
是非、ご登録を宜しくお願い致します。

