- PR -

●外向けDNSサーバ(BIND9.2.1)で複数ZONEを扱う設定の仕方をご教授お願い致します

投稿者投稿内容
りかっち
常連さん
会議室デビュー日: 2004/07/15
投稿数: 22
投稿日時: 2006-02-24 18:09
皆さん。こんにちわ。
Linux初心者です。いつも困ったときにはここで教えて頂いています。
皆さんまた宜しくお願いします。

ドメインを取得し、固定IPも持っていて、
社内にDNSサーバ(会社のHPも乗せたWebサーバも兼ねてるので外向け?DNSというんでしょうか?)を設置してあります。
OSは、Redhat8.0で、Bindはdigで調べたら9.2.1でした。

ドメイン名は、hogehoge.co.jp とし、
ネームサーバ(ドメインのサーバ名)は、dns.hogehoge.co.jpとします。
IPアドレスの範囲は210.196.XXX.101〜210.196.XXX.108の8個とします。
上記8個のIPアドレスのうち、2個は開発のテストサーバで使っていて
名前解決は、testsrv1.hogehoge.co.jp、testsrv2.hogehoge.co.jpと
サブドメイン名?でアクセスできています。

現状のnamedの設定ファイルは、以下のように書かれていて、
正引きhogehoge.zoneファイル
逆引きXXX.196.210.zoneファイル
がそれぞれ存在します。


==<named.conf>==================================================
  controls {
 inet 127.0.0.1 allow { localhost; } keys { rndckey; };
  };
  zone "." IN {
  type hint;

  file "named.ca";
  };
  zone "localhost" IN {
  type master;
  file "localhost.zone";
  };
  zone "0.0.127.in-addr.arpa" IN {
  type master;
  file "named.local";
  };
  zone "XXX.196.210.in-addr.arpa" IN {
  type master;
  file "XXX.196.210.zone";
  };
  zone "hogehoge.co.jp" IN {
type master;
file "hogehoge.zone";
  };
  include "/etc/rndc.key";
==<named.conf>==================================================


■ご教授いただきたいのは、
Q−1開発から依頼があったのですが、
   ドメイン名は、fugafuga.jp
   ネームサーバ(ドメインのサーバ名?)は、dns.hogehoge.co.jp
   IPアドレスは、220.110.YYY.1
   を、名前でアクセスできるようにしたいのですが、
   どうしたらよいのでしょうか?。

   現在IPアドレス(220.110.YYY.1)ではアクセスできます。
   fugafuga.jpドメインが登録されているかどうかも調べてみましたが
   確かにJPNICに登録済でした。
   
   ネームサーバが、会社のDNSサーバを使う(dns.hogehoge.co.jp)
   とJPNICに登録されていたので
   会社のDNSサーバのnamed.conf(前述)に、
   fugafuga.jpの正引きファイル(例えば、fugafuga.zone)、
   逆引きファイル(例えばYYY.110.220.zone)を以下のように追記
   するだけでよいのでしょうか?

Q−2基本的なことですみません。
   正引きファイルと逆引きファイルは必ず1セットで存在しないと
   いけないのでしょうか?。
   というのも、IPアドレスでは何の設定をしていなくてもアクセス
   できているので、逆引きファイル(例えばYYY.110.220.zone)を
   わざわざ書く必要はないのではと思うのですが・・・。


==<named.confに追加する?>==================================================
  zone "YYY.110.220.in-addr.arpa" IN {
  type master;
  file "YYY.110.220.zone";
  };
  zone "fugafuga.jp" IN {
  type master;
  file "fugafuga.zone";
  };
=========================================================================

どう質問してよいのか旨くまとめられず、ダラダラ書いてしまって
すみません。
ご教授の程宜しくお願い致します。

kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2006-02-24 18:33
こんばんわ.
引用:

りかっちさんの書き込み (2006-02-24 18:09) より:

■ご教授いただきたいのは、
Q−1開発から依頼があったのですが、
   ドメイン名は、fugafuga.jp
   ネームサーバ(ドメインのサーバ名?)は、dns.hogehoge.co.jp
   IPアドレスは、220.110.YYY.1
   を、名前でアクセスできるようにしたいのですが、
   どうしたらよいのでしょうか?。


確認ですが,その nameserver の IP address は
dns.hogehoge.co.jp と同じなのでしょうか?
であれば,その DNS Server に定義すればよいです.
が,最初の方で 210.196〜 と書かれています.
この辺は矛盾してませんか?
引用:

Q−2基本的なことですみません。
   正引きファイルと逆引きファイルは必ず1セットで存在しないと
   いけないのでしょうか?。
   というのも、IPアドレスでは何の設定をしていなくてもアクセス
   できているので、逆引きファイル(例えばYYY.110.220.zone)を
   わざわざ書く必要はないのではと思うのですが・・・。


接続できることと,名前を解決できることは別の問題です.
詳しくはこの辺
http://sakaguch.com/DNSgyakubiki.html
をどうぞ.
どちらかというと「あるべき」な色合いが強いと思われがちですが,
無いと困ることもあります.
引用:

==<named.confに追加する?>==================================================
  zone "YYY.110.220.in-addr.arpa" IN {
  type master;
  file "YYY.110.220.zone";
  };
  zone "fugafuga.jp" IN {
  type master;
  file "fugafuga.zone";
  };
=========================================================================


前述のように,2つの network address の記述が書かれることになります.
その辺の矛盾が解消している
※DNS Server が multi homed で,さらに rouitng の問題も解決済みとか...
のであれば,記述はそんな感じでしょう.
あんとれ
ぬし
会議室デビュー日: 2004/01/14
投稿数: 556
投稿日時: 2006-02-25 14:42
何だか環境がよく分かりませんが・・・。

引用:

ドメイン名は、hogehoge.co.jp とし、
ネームサーバ(ドメインのサーバ名)は、dns.hogehoge.co.jpとします。
IPアドレスの範囲は210.196.XXX.101〜210.196.XXX.108の8個とします。



ネームサーバ (dns.hogehoge.co.jp) の IP アドレスは 210.196.XXX.101〜210.196.XXX.108 のいずれかですか?
それとも、220.110.YYY.1 ですか?

引用:

現状のnamedの設定ファイルは、以下のように書かれていて、
正引きhogehoge.zoneファイル
逆引きXXX.196.210.zoneファイル
がそれぞれ存在します。



逆引きについて。どのような委譲を受けているのでしょうか?

- 全く受けていない (よくあるパターン)
→逆引きの解決はプロバイダによって行われるか全く行われない。もちろん、自分で作成した設定ファイルは何の意味も成さない。
- XXX.196.210.in-addr.apra ゾーンの委譲を受けている
(210.196.XXX.0 〜 210.196.XXX.255 の全てのアドレスを使う権利をもらっている)
→設定方法には問題がないと思われる。
- その他の場合
(210.196.XXX.101 〜 210.196.XXX.108 のアドレスのみ使う権利をもらっている)
→設定ファイルに問題があり、逆引きの解決が無効になっている可能性がある。設定方法はプロバイダによって異なる。

引用:

Q−1開発から依頼があったのですが、
   ドメイン名は、fugafuga.jp
   ネームサーバ(ドメインのサーバ名?)は、dns.hogehoge.co.jp
   IPアドレスは、220.110.YYY.1
   を、名前でアクセスできるようにしたいのですが、
   どうしたらよいのでしょうか?。



fugafuga.jp ゾーンを管理できるのであれば、そこのゾーンファイルを追加し (named.conf ファイルの修正)、

------------------------------------------------------------------------
......
fugafuga.jp. IN NS (JPNIC に登録されているネームサーバのホスト名).
......

xxx.fugafuga.jp. IN A (IP アドレス)
......
------------------------------------------------------------------------

とすれば解決できるでしょう。

ここで、(JPNIC に登録されているネームサーバのホスト名) はゾーン外の dns.hogehoge.co.jp であっても構いませんが、ゾーン内に全くネームサーバが存在しないことはあまり望ましくありません。

引用:

Q−2基本的なことですみません。
   正引きファイルと逆引きファイルは必ず1セットで存在しないと
   いけないのでしょうか?。
   というのも、IPアドレスでは何の設定をしていなくてもアクセス
   できているので、逆引きファイル(例えばYYY.110.220.zone)を
   わざわざ書く必要はないのではと思うのですが・・・。



ホスト名 HOST-A とホスト名 HOST-B がともに IP アドレス X に結びついているのであれば、IP アドレス X に対する逆引きの結果が HOST-A になるように設定しても HOST-B になるように設定しても問題ありません。もっと言えば、IP アドレスの X の逆引きについて、

AAA.BBB.CCC.DDD IN PTR HOST-A.
AAA.BBB.CCC.DDD IN PTR HOST-B.

などと、全てのホスト名と結びつける必要はありません。1つだけと結びついていればよいのです (ただし、IP アドレス X の逆引きで返されたホスト名に対する正引きの結果が元の IP アドレス X である必要はある)。
りかっち
常連さん
会議室デビュー日: 2004/07/15
投稿数: 22
投稿日時: 2006-02-27 11:54
kazさん。
ありがとうございます。
説明不足で申し訳ありませんでした。

Q−1ですが、
    ドメイン名は、fugafuga.jp
     IPアドレスは、220.110.YYY.1
    ネームサーバ(ドメインのサーバ名?)は、dns.hogehoge.co.jp
     IPアドレスは、210.196.XXX.102です。
    なので、nameserver の IP address はdns.hogehoge.co.jp と同じです。

Q−2ですが、
    多分、逆引きファイルに記述をすると、tracertとかのコマンドの
    答えを返すのに使われるのかと・・・勝手に理解してましたが。。。    
    すみませんいまいち良くわかりませんでした。。。
    特に「ないと困る」というのが良くわからないです。。。
    時間をかけて何度も読み返してみます。
    

初歩的なことですみません。。。
後、気になったのが、
「※DNS Server が multi homed で,さらに rouitng の問題も解決済みとか...」
ルーティングの問題・・・というですが、
ネームサーバ(ドメインのサーバ名?)dns.hogehoge.co.jp、IPアドレスは、210.196.XXX.102に、ルーティング(宛先220.110.YYY.1)の設定も、
ZONEファイルの記述追加同様、必要ということでしょうか?。
----------------------------------------------------------------------------



引用:

kazさんの書き込み (2006-02-24 18:33) より:
こんばんわ.
引用:

りかっちさんの書き込み (2006-02-24 18:09) より:

■ご教授いただきたいのは、
Q−1開発から依頼があったのですが、
   ドメイン名は、fugafuga.jp
   ネームサーバ(ドメインのサーバ名?)は、dns.hogehoge.co.jp
   IPアドレスは、220.110.YYY.1
   を、名前でアクセスできるようにしたいのですが、
   どうしたらよいのでしょうか?。


確認ですが,その nameserver の IP address は
dns.hogehoge.co.jp と同じなのでしょうか?
であれば,その DNS Server に定義すればよいです.
が,最初の方で 210.196〜 と書かれています.
この辺は矛盾してませんか?
引用:

Q−2基本的なことですみません。
   正引きファイルと逆引きファイルは必ず1セットで存在しないと
   いけないのでしょうか?。
   というのも、IPアドレスでは何の設定をしていなくてもアクセス
   できているので、逆引きファイル(例えばYYY.110.220.zone)を
   わざわざ書く必要はないのではと思うのですが・・・。


接続できることと,名前を解決できることは別の問題です.
詳しくはこの辺
http://sakaguch.com/DNSgyakubiki.html
をどうぞ.
どちらかというと「あるべき」な色合いが強いと思われがちですが,
無いと困ることもあります.
引用:

==<named.confに追加する?>==================================================
  zone "YYY.110.220.in-addr.arpa" IN {
  type master;
  file "YYY.110.220.zone";
  };
  zone "fugafuga.jp" IN {
  type master;
  file "fugafuga.zone";
  };
=========================================================================


前述のように,2つの network address の記述が書かれることになります.
その辺の矛盾が解消している
※DNS Server が multi homed で,さらに rouitng の問題も解決済みとか...
のであれば,記述はそんな感じでしょう.


りかっち
常連さん
会議室デビュー日: 2004/07/15
投稿数: 22
投稿日時: 2006-02-27 12:27
あんとれさん。いつもありがとうございます。
説明不足で申し訳ありませんでした。

開発サーバのドメイン名は、fugafuga.jp
 IPアドレスは、220.110.YYY.1
ネームサーバ(ドメインのサーバ名?)は、dns.hogehoge.co.jp(会社のDNSサーバ)
 IPアドレスは、210.196.XXX.102です。
なので、nameserver の IP address はdns.hogehoge.co.jp と同じです。

dns.hogehoge.co.jp(会社のDNSサーバ)を利用して、異なるネットワークの開発サーバfugafuga.jpというドメインの名前解決をしたいのですが・・・。

単純に、
1.dns.hogehoge.co.jp(会社のDNSサーバ)のnamed.confに、異なるネットワークの開発サーバfugafuga.jpの正引き、逆引きの参照先ファイルを追記。
2.開発サーバfugafuga.jpの正引き、逆引きファイルを作成
というような感じでよいのでしょうか?。

---------------------------------------------------------------------



引用:

あんとれさんの書き込み (2006-02-25 14:42) より:
何だか環境がよく分かりませんが・・・。

引用:

ドメイン名は、hogehoge.co.jp とし、
ネームサーバ(ドメインのサーバ名)は、dns.hogehoge.co.jpとします。
IPアドレスの範囲は210.196.XXX.101〜210.196.XXX.108の8個とします。



ネームサーバ (dns.hogehoge.co.jp) の IP アドレスは 210.196.XXX.101〜210.196.XXX.108 のいずれかですか?
それとも、220.110.YYY.1 ですか?

引用:

現状のnamedの設定ファイルは、以下のように書かれていて、
正引きhogehoge.zoneファイル
逆引きXXX.196.210.zoneファイル
がそれぞれ存在します。



逆引きについて。どのような委譲を受けているのでしょうか?

- 全く受けていない (よくあるパターン)
→逆引きの解決はプロバイダによって行われるか全く行われない。もちろん、自分で作成した設定ファイルは何の意味も成さない。
- XXX.196.210.in-addr.apra ゾーンの委譲を受けている
(210.196.XXX.0 〜 210.196.XXX.255 の全てのアドレスを使う権利をもらっている)
→設定方法には問題がないと思われる。
- その他の場合
(210.196.XXX.101 〜 210.196.XXX.108 のアドレスのみ使う権利をもらっている)
→設定ファイルに問題があり、逆引きの解決が無効になっている可能性がある。設定方法はプロバイダによって異なる。

引用:

Q−1開発から依頼があったのですが、
   ドメイン名は、fugafuga.jp
   ネームサーバ(ドメインのサーバ名?)は、dns.hogehoge.co.jp
   IPアドレスは、220.110.YYY.1
   を、名前でアクセスできるようにしたいのですが、
   どうしたらよいのでしょうか?。



fugafuga.jp ゾーンを管理できるのであれば、そこのゾーンファイルを追加し (named.conf ファイルの修正)、

------------------------------------------------------------------------
......
fugafuga.jp. IN NS (JPNIC に登録されているネームサーバのホスト名).
......

xxx.fugafuga.jp. IN A (IP アドレス)
......
------------------------------------------------------------------------

とすれば解決できるでしょう。

ここで、(JPNIC に登録されているネームサーバのホスト名) はゾーン外の dns.hogehoge.co.jp であっても構いませんが、ゾーン内に全くネームサーバが存在しないことはあまり望ましくありません。

引用:

Q−2基本的なことですみません。
   正引きファイルと逆引きファイルは必ず1セットで存在しないと
   いけないのでしょうか?。
   というのも、IPアドレスでは何の設定をしていなくてもアクセス
   できているので、逆引きファイル(例えばYYY.110.220.zone)を
   わざわざ書く必要はないのではと思うのですが・・・。



ホスト名 HOST-A とホスト名 HOST-B がともに IP アドレス X に結びついているのであれば、IP アドレス X に対する逆引きの結果が HOST-A になるように設定しても HOST-B になるように設定しても問題ありません。もっと言えば、IP アドレスの X の逆引きについて、

AAA.BBB.CCC.DDD IN PTR HOST-A.
AAA.BBB.CCC.DDD IN PTR HOST-B.

などと、全てのホスト名と結びつける必要はありません。1つだけと結びついていればよいのです (ただし、IP アドレス X の逆引きで返されたホスト名に対する正引きの結果が元の IP アドレス X である必要はある)。


りかっち
常連さん
会議室デビュー日: 2004/07/15
投稿数: 22
投稿日時: 2006-02-27 16:32
皆さんありがとうございます。

すみません。環境を含め自分でもよくわからなくなってきたので
もう一度、整理してみました。

社内に外向けのDNSサーバがあります。
OSはRedhat8.0でBindは9.2.1です。
ドメイン名は、hogehoge.co.jp、マシン名は、dns.hogehoge.co.jp、
固定IPアドレスが、210.196.XXX.102です。


今回、開発から依頼があり、
ドメイン名、fugafuga.jp、固定IPアドレスが、220.110.YYY.1で
ネームサーバは、上記のdns.hogehoge.co.jp(210.196.XXX.102)を使い、
この異なるネットワークにある開発サーバを
名前解決できるようにしてほしいとのことでした。
(JPNICには、ドメイン登録済です)


dns.hogehoge.co.jpのnamed.confに、fugafuga.jpのzoneファイルを追記し、
同時に正引きfugafuga.zone、逆引きYYY.110.220.zoneファイルも
作成し、namedの再起動を行いましたが、名前解決できませんでした。

記述がおかしいのでしょうか?それとも他に何かが足りないのでしょうか?

なお、named.conf、fugafuga.zone、YYY.110.220.zoneは、
以下のように記述しました。


皆様のお力をお借りしたくお願い致します。
すみません宜しくお願い致します。


==<named.conf>==================================================

// DNSサーバ(hogehoge.co.jp)の逆引きファイル
zone "XXX.196.210.in-addr.arpa" IN {
type master;
file "XXX.196.210.zone";
};

// DNSサーバ(hogehoge.co.jp)の正引きファイル
zone "hogehoge.co.jp" IN {
type master;
file "hogehoge.zone";
};

// 以下追加↓ 名前解決したい開発サーバ(fugafuga.jp)の逆引きファイル
zone "YYY.110.220.in-addr.arpa" IN {
type master;
file "YYY.110.220.zone";
};

// 以下追加↓ 名前解決したい開発サーバ(fugafuga.jp)の正引きファイル
zone "fugafuga.jp" IN {
type master;
file "fugafuga.zone";
};

==<named.conf>==================================================




==<YYY.110.220.zone>============================================
$TTL 86400
@ IN SOA dns.hogehoge.co.jp. root.hogehoge.co.jp. (
20060227 ; serial
3600 ; refresh
900 ; retry
3600000 ; expiry
3600 ) ; minimum

IN NS dns.hogehoge.co.jp.
IN NS プロバイダ側セカンダリ.

1 IN PTR fugafuga.jp


==<YYY.110.220.zone>============================================


==<fugafuga.zone>============================================

$TTL 86400
@ IN SOA dns.hogehoge.co.jp. root.hogehoge.co.jp. (
20060227 ; serial
3600 ; refresh
900 ; retry
3600000 ; expiry
3600 ) ; minimum

fugafuga.jp IN NS dns.hogehoge.co.jp.
fugafuga.jp IN NS プロバイダ側セカンダリ.
fugafuga.jp IN A 220.110.YYY.1


==<fugafuga.zone>============================================


あるかな
大ベテラン
会議室デビュー日: 2003/11/04
投稿数: 245
投稿日時: 2006-02-27 20:38
こんばんは。

その
> 名前解決できませんでした。
の手法により、問題の切り分けが出来ると思いますが。

例えれば、
dns.hogehoge.co.jp 上で # dig @localhost fugafuga.jp でダメなのか、
hogehoge.co.jp のネットワーク上でいずれかの DNS を利用して名前が引けないのか、
fugafuga.jp のネットワーク上でいずれかの DNS を利用して名前が引けないのか、
fugafuga.jp のネットワーク上で dns.hogehoge.co.jp 利用して名前が引けないのか、
のどれかに当てはまると思うのですが、どうでしょうか?

> dns.hogehoge.co.jp 上で # dig @localhost fugafuga.jp でダメなのか、
が問題なく、その他で行き詰まっているのなら
DNS への経路の問題か JPNIC への hogehoge.co.jp ドメインのネームサーバの登録の問題と思います。
前者なら dns.hogehoge.co.jp の設定の問題ですね。
りかっち
常連さん
会議室デビュー日: 2004/07/15
投稿数: 22
投稿日時: 2006-02-28 12:37
あるかなさん。
ありがとうございます。

digでの確認を手がかりにお蔭様で解決できました。
ありがとうございます。
が、いまいちまだ理屈がわかっておりません。。。

まず、以下digで確認してみた結果です。
1.dig @localhost fugafuga.jp
で確認してみましたが、
  ->>HEADER<<--opcode:QUERY,status:SERVFAIL・・以下略
  と表示され、
  ANSWER SECTIONから以降が表示されませんでした。

2.dig @localhost -x 220.110.YYY.1
  で確認してみると、他のホストと同様に正常に表示されました。

ということはやはり、dns.hogehoge.co.jp の設定の問題となると思い、
正引きファイルfugafuga.zoneを見直してみました。

googleで検索してひっかかったどこかのサイト(多分OCNのDNS設定?)を
参考にし、少し修正してみました。

以下、修正したfugafuga.zoneです。


==<fugafuga.zone>============================================

$TTL 86400
fugafuga.jp. IN SOA dns.hogehoge.co.jp. root.hogehoge.co.jp. (
20060227 ; serial
3600 ; refresh
900 ; retry
3600000 ; expiry
3600 ) ; minimum

fugafuga.jp. IN NS dns.hogehoge.co.jp.
fugafuga.jp. IN NS プロバイダ側セカンダリ.
fugafuga.jp. IN A 220.110.YYY.1

==<fugafuga.zone>============================================

まず、SOAレコードの先頭を@→fugafuga.jp.に。
後、残りのAレコードとかも、全てfugafuga.jp→fugafuga.jp.に
ピリオド追加。

ピリオドはお恥ずかしいのですが、これほど意味をなしているとは
思いませんでした。。。。お恥ずかしいです。。。

ただSOAレコードの先頭を@ではなくfugafuga.jp.にする意味が
よくわかりません。
hogehoge.co.jpとはドメインが異なるからのでしょうか?。




引用:

あるかなさんの書き込み (2006-02-27 20:38) より:
こんばんは。

その
> 名前解決できませんでした。
の手法により、問題の切り分けが出来ると思いますが。

例えれば、
dns.hogehoge.co.jp 上で # dig @localhost fugafuga.jp でダメなのか、
hogehoge.co.jp のネットワーク上でいずれかの DNS を利用して名前が引けないのか、
fugafuga.jp のネットワーク上でいずれかの DNS を利用して名前が引けないのか、
fugafuga.jp のネットワーク上で dns.hogehoge.co.jp 利用して名前が引けないのか、
のどれかに当てはまると思うのですが、どうでしょうか?

> dns.hogehoge.co.jp 上で # dig @localhost fugafuga.jp でダメなのか、
が問題なく、その他で行き詰まっているのなら
DNS への経路の問題か JPNIC への hogehoge.co.jp ドメインのネームサーバの登録の問題と思います。
前者なら dns.hogehoge.co.jp の設定の問題ですね。

スキルアップ/キャリアアップ(JOB@IT)