DNSゾーン定義方法の疑問解説

このQ&Aのポイント
  • DNSのゾーン定義方法について迷っています。bind9で学んでいるのですが、記述パターンが多くて困っています。SOAレコードのdnsサーバー名の記述や外向け正引きの設定方法が特に不安です。
  • SOAレコードのdnsサーバー名の記述について、例えばドメイン名だけの記述は許されるのでしょうか?また、自ホスト名をdnsサーバー名にできるか、それとも別別に設定するべきでしょうか?
  • 外向け正引きの設定方法について不安があります。具体的に、ns01.hoo.comを付けるべきか、MXレコードにns01を付けるべきか、Aレコードの省略が可能か、などについて指摘してください。
回答を見る
  • ベストアンサー

DNSのゾーン定義方法で迷っています

ネットや書籍でbind9を学んでいるのですがいろいろな記述パターンがあり迷っています。 以下の疑問を解説していただけますでしょうか? ご教授の程よろしくお願い申し上げます。 お手間が無いよう、小分けにしたつもりです。 どれか一つの回答でもありがたくいただきます。 (1)SOAレコードdnsサーバー名の記述にて 例(1)-1   @ IN SOA hoo.com. root.hoo.com.(省略) 例(1)-2   @ IN SOA ns01.hoo.com. root.hoo.com.(省略) 例1ではドメイン名だけしかないのですが、許されるのですか? 両設定を試して動作はどちらも確認できたのですがモヤモヤしてます。 (2)SOAレコードdnsサーバー名の記述にて 仮に自ホスト名がmy-serverとした場合、dnsサーバー名をns01としても良いのでしょうか? その場合、正規名に対するアドレスの定義はどのように設定すればよいですか? 例(2)-1 @ IN SOA ns01.hoo.com. root.hoo.com.(省略) ns01 IN A 192.168.11.22 ; 同じIPで定義しておけば良いのか? my-server IN A 192.168.11.22 ; 同じIPで定義しておけば良いのか? (または) my-server IN A 192.168.11.22 ; 自ホスト名で定義する ns01 IN CNAME my-server.hoo.com. ; dns名を別名で宣言してよいのか? (3)外向け正引きの設定方法が不安です  これらに誤りや無駄があれば指摘してください   例(3)-1 @ IN SOA ns01.hoo.com. root.hoo.com.(省略) IN NS ns01.hoo.com. ; ●ns01は付けなくて良い? IN MX 10 hoo.com. ; ●ns01は付けるべきか? IN A 125.xxx.yyy.zzz ; ●これは省略してよい? ns01 IN A 125.xxx.yyy.zzz ; ●同IPのAレコード2つ必要 なのか? my-server IN A 125.xxx.yyy.zzz ; ●自ホスト名のセット、しかし同IPのAレコードが3つになってしまう... www IN CNAME ns01.hoo.com. mail IN CNAME ns01.hoo.com. localhost IN A 127.0.0.1 ; ●外向けでこれは不要なのでは?

質問者が選んだベストアンサー

  • ベストアンサー
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.1

> (1)SOAレコードdnsサーバー名の記述にて MNAME は、参考情報的なものなので、設定を間違えても一見動作に支障はおきないでしょう。 ここはネームサーバを指定するフィールドなので、 レジストラに対してネームサーバを ns01.hoo.com で登録しているなら、 ns01.hoo.com と記述する必要があります。 > (2)SOAレコードdnsサーバー名の記述にて 複数の名前が同じIPアドレスを持つのは問題ありません。 ただし、NSレコードの指定にCNAMEなホストを使うと問題が起きる場合があるので、 my-server の方をCNAME にするか、 どちらもAレコードで同じIPアドレスを記述するようにした方が良いでしょう。 http://www.ocn.ad.jp/tw/dns_19.html > (3)外向け正引きの設定方法が不安です ちょっと順番が前後しますが、 > IN A 125.xxx.yyy.zzz ; ●これは省略してよい? これを指定すると、「hoo.com」がAレコード(IPアドレス)を持ちますから、例えば http://hoo.com/ のアクセスができるようになります。そういうを行わないなら、記述しなくて問題ないでしょう。 > IN MX 10 hoo.com. ; ●ns01は付けるべきか? 上記 Aレコードを指定しなかった場合は、「hoo.com」というホストは存在しませんから、どちらもns01を付けなくてはなりません。 上記 Aレコードを指定した場合は、どちらの名前でもIPアドレスを持ちますからどちらを使っても問題ありません。 > IN NS ns01.hoo.com. ; ●ns01は付けなくて良い? NSレコードの記述に関しては、MNAMEと同じで、レジストラに登録しているホスト名を指定してください。 もしレジストラにネームサーバをhoo.comとして登録しているのなら、hoo.com でアクセスできるように、上述のAレコードも必要になります。 (普通はそんな変なことはしないで、レジストラに登録するネームサーバはns01.hoo.comのようなホスト名付きのFQDNにします) > ns01 IN A 125.xxx.yyy.zzz ; ●同IPのAレコード2つ必要なのか? > my-server IN A 125.xxx.yyy.zzz ; ●自ホスト名のセット、しかし同IPのAレコードが3つになってしまう... 同じIPアドレスを持つAレコードが複数あるのは問題ありません。 > localhost IN A 127.0.0.1 ; ●外向けでこれは不要なのでは? なくても問題ありませんが、これがあると LAN内で localhost を指定してアクセスしたいときに、勝手にDNSサフィックスを付けて localhost.hoo.com にしてしまうような設定のPCなんかがあった場合でも、 問題なく127.0.0.1 にアクセスできる、という保険になります。

tty911
質問者

お礼

ひとつひとつ解説いただきありがとうございます まだおぼろげですが、設定方法が見えてきた気がします。 お蔭様で迷いが随分と減りました。 心より感謝いたします

関連するQ&A

  • bind zoneファイルの正しい記述を教えてください

    bindのzoneの設定で迷っています。 OCNのJPドメインの取得代行を利用しています。 OCNから自前のDNSサーバー名をns01.mydomin.jpに指定されています。 なので、SOAレコードでDNSサーバー名の宣言がns01.mydomin.jpにせざる得ません。(多分) しかしこの自ホスト名はns01ではありません(当然ですよね) 自分の設定ではAレコードで矛盾が生じてしまうのではないかと 不安があり、悩み悩み設定しました。 DNSのバイブルであるdns&bindを読んでもこのパターン例が無く 迷っています。 以下私なりに知恵を絞った設定なのですが、不備があるかと思います。 いろいろと指摘いただければ幸いです。 賢人のアドバイスをいただきたく、よろしくお願いします。 動作面は勿論ですが可読性を悪くしていることがあれば、これもまた指摘ください。 以下内部向け正引きのゾーンファイルです ;------------------------ ;exmple.jp.internal.zone ;------------------------ @ IN SOA ns01.example.jp. root.example.jp.(省略) IN NS ns01.example.jp. IN NS ns.ocn.ad.jp. ; 自ホスト名をAで宣言したいのでns01はコメントアウト ;ns01 IN A 192.168.11.22 my-host-name IN A 192.168.11.22 localhost IN A 127.0.0.1 IN MX 10 ns01.example.jp. ; Aでns01が宣言するとアドレス重複するので、CNAMEで宣言してみた ns01 IN CNAME my-host-name www IN CNAME my-host-name mail IN CNAME my-host-name

  • ゾーンファイルの書き方について

    正引きゾーンファイルの書き方について質問です。 自ドメイン:example.com レンタルセカンダリDNSサーバー:ns.hogehoge.com のレコードを書く際、NSレコードは IN NS ns.example.com. IN NS ns.hogehoge.com. で問題ないですが、Aレコードにns.hogehoge.comを書くべきなのかどうかがわかりません。 ns IN A xxx.xxx.xxx.xxx ns.hogehoge.com. IN A yyy.yyy.yyy.yyy example.comのゾーンレコードにns.hogehoge.comのAレコードを書いても意味がないと思うのですが、 ・書くのが正しいのか、書かないのが正しいのか ・その理由 についてお教えいただけませんでしょうか。 自分なりに調べたのですが、ns.hogehoge.comのAを書くことになっている例を見つけたりして、よくわかりませんでした。

  • dnsレジストラ登録名と自ホスト名のギャップを埋めるには?

    dnsレジストラ登録名と自ホスト名は多くにして違う名称になると思うのですが、書籍、ネットともにこのサンプルが見つからず困惑しております。 これについてご教授いただきたくお願い申し上げます。 逆引きの部分で迷っています 自ホストのIPが192.168.11.22なので zone "11.168.192.in-addr.arpa"を定義し 11.168.192.in-addr.arpaという名称で逆引き定義しています 自ホスト名がmy-serverとし レジストラ登録名がns01.example.jpとした場合、 この逆引きファイルでサーバー名のギャップを埋めるのでしょうか? --------------------------------------------- 設定例1(逆引き内だけで解決した場合) --------------------------------------------- ; 11.168.192.in-addr.arpaファイル @ IN SOA ns01.example.jp. root.example.jp.(省略) IN NS ns01.ifrog.jp. ; ※CNAMEはここで使えるのか不安です ns01.example.jp. IN CNAME my-server.example.jp. 22 IN PTR my-server.example.jp. --------------------------------------------- 設定例2(逆引きと内正引きの2つで解決した場合) --------------------------------------------- ; 11.168.192.in-addr.arpaファイル @ IN SOA ns01.example.jp. root.example.jp.(省略) IN NS ns01.ifrog.jp. ; ※ここではギャップを解決しない 22 IN PTR my-server.example.jp. ; ※ns01が解決できないのでは? でも正引きファイルでなんと関連するのか? ;22 IN PTR ns01.example.jp. ;example.jp.internalファイル ; このファイルでmy-serverとns01のギャップを埋める @ IN SOA ns01.example.jp. root.example.jp.(省略) IN NS ns01.example.jp. ns01 IN A 192.168.11.22 my-server IN A 192.168.11.22 ns01.example.jp. IN CNAME my-server.example.jp. 長くなりすいません。 どちらも動作してしまうので、正しい設定か否か判断付かず悩んでおります...

  • 内部DNSで名前解決ができません。。

    BIND8以来の3年振りのBIND設定で嵌ってます(><) LinuxサーバにBIND9を設定し、 Windowsクライアントからは nslookupではFQDNで検索できるのに、 ブラウザやTelnetからだと名前解決できません。 仕方なく、hostsファイルにFQDNを書いているありさまです(><) 気になる点は、 Linuxサーバーでnslookupした時は ホスト名だけでも検索できるのに、 Windowsからnslookupした場合は、 ホスト名だけではNon-existent domainと 表示されてしまうところです。 又、SOAに、ns.ドメイン名とし Aレコードに実際のホスト名、 CNAMEにns と書いても正しく動作するものでしょうか? BIND9を設定したLinuxのサーバー名はmoonで、 正引きは下記のように設定しています。 $TTL 86400 N SOA ns.local-test.com@ IN SOA ns.local-test.com root.local-test.com ( 2005081501 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum IN NS ns.local-test.com. IN MX 10 mail.local-test.com. IN A 192.168.1.1 ns IN A 192.168.1.1 moon IN A 192.168.1.1 mail IN CNAME dev1 www IN CNAME dev1

  • BIND(DNSサーバー)のTTL(生存時間)設定方法

    よろしくお願いします。 Bind8で、DNSサーバーの設定をしているのですが、 データベースファイルのCNAMEレコードの生存時間(TTL)が上手くいきません。 (SOAレコードではなく、CNAMEレコードのみの生存時間(TTL)を設定する必要があります) 他の書籍等を見ると、 (例) www 1D IN CNAME example.com. もしくは、 www 86400 IN CNAME example.com. 等で、 ドメイン名(www)とINの間に、タブを利用し、時間を設定すればよいように思うのですが、 named再起動時に、エラーになってしまいます。 ご存知の方がいましたら教えて頂けますでしょうか? よろしくお願い致します。

  • バーチャルホストでのゾーンファイル設定

    複数ドメインを、ネームベースのバーチャルホストで運用しています。 今度、各ドメインごとにばらばらなネームサーバを自サーバにまとめ(BIND9.2.4)、これらを管理するようにしたいと思っています。 その時のゾーンファイルの設定について質問です。 各ドメイン用に複数のゾーンファイルを用意する必要があると思うんですがその際、下記SOAレコードの”←”の部分は (1)共通にしないといけないのでしょうか? (2)どうやって設定すればよいのでしょうか?  (ゾーンファイルで任意に指定すればOK?) 基本的な質問でお恥ずかしいんですが、よろしくお願いします。 ---------------------------------------------------- example.com. IN SOA ns.example.com.← root.example.com. (             (略) ) IN NS ns.example.com. IN MX 10 ns ns IN A 111.111.111.111 www IN CNAME ns

  • DNSサーバのゾーンファイルの書き方

    自宅LAN内にDNSサーバーをたてたくて、ググりながらゾーンファイルを書いてるのですが、 正しいのか自信がありません。 おかしくないか見てもらえないでしょうか。 hoge.co.jp、dev1.hoge.co.jp、svn.hoge.co.jp などにアクセスしたとき、 192.168.1.100 にとばすようにしたいです。 ※最初間違ってハードウェア(サーバー)カテゴリであげてしまったので、 そちらは削除してもう一度あげなおしています。 <named.confの記述> ---------------------- zone "hoge.co.jp" IN { type master; file "hoge.co.jp.zone"; }; zone "1.168.192.in-addr.arpa" IN { type master; file "hoge.co.jp.in-addr.arpa.zone"; }; <hoge.co.jp.zone の内容> -------------------- $TTL 86400 @ IN SOA dns yamamoto ( 2013290000 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dns @ IN A 192.168.1.100 dns IN A 192.168.1.100 dev1 IN A 192.168.1.100 dev2 IN A 192.168.1.100 dev3 IN A 192.168.1.100 svn IN A 192.168.1.100 <hoge.co.jp.in-addr.arpa.zone の内容> ------------------------------------- $TTL 86400 @ IN SOA dns yamamoto ( 2013290000 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dns 100 IN PTR hoge.co.jp.

  • ゾーンファイルの作成について。

    ソーンファイルの作成についてですが、 いろいろな物をみて参考にはしているのですが、 いまいちうまく、すっきり記述できません。 (MX、A、CNAMEレコードの記述とspfがちょっと良く分かっていません。) 以下のとおり、 記述して、 nslookupを使って、名前解決を検証すると、 fedora10.com www.fedora10.com mail01.fedora10.com など、 うまく名前解決をしてくれます。(IPアドレスを出してくれます。) ですが、 メールクライアントにmail01.fedora10.comといれると、 サーバに接続できない、あるいは、サーバを探せないようです。 192.168.0.11というように、IPアドレスを入れると、 メールのやり取りは正常にできます。(メールサーバはうまくできています。) それで、ゾーンファイルの指定がうまくできていないと思って、 書き込みしています。 最終的には、 メールサーバの冗長化を考えていて、 MXレコードをmail01、mail02の二つを登録したいと思っています。 以下がゾーンファイルの記述です。 よろしくお願いします。 # vi named.zone $TTL 86400 fedora.com. IN SOA ns1.fedora10.com. root.fedora10.com. ( 2006061301 ; Serial 7200 ; Refresh 3600 ; Retry 604800 ; Expire 86400 ; Negative Cache TTL ) IN NS ns1.fedora10.com. IN NS ns2.fedora10.com. IN MX 10 mail01 IN MX 20 mail02 TXT "v=spf1 +mx -all" ns1 IN A 192.168.0.11 ns2 IN A 192.168.0.12 mail01 IN A 192.168.0.11 mail02 IN A 192.168.0.12 www IN CNAME ns1 smtp IN CNAME mail01 pop3 IN CNAME mail01 # vi 0.168.192.in-addr.arpa.zone $TTL 86400 0.168.192.in-addr.arpa. IN SOA ns1.fedora10.com. root.fedora10.com. ( 2006061301 ; Serial 7200 ; Refresh 3600 ; Retry 604800 ; Expire 86400 ; Negative Cache TTL ) IN NS ns1.fedora10.com. IN NS ns2.fedora10.com. 11 IN PTR ns1.fedora10.com. 12 IN PTR ns2.fedora10.com. 11 IN PTR mail01.fedora10.com. 12 IN PTR mail02.fedora10.com.

  • BIND9設定 wwwの有無

    fedora core1にBIND-9.2.3をインストールしDNSサーバーの勉強をしています。 「www.example.com」、「example.com」で同じページにアクセスできるように設定し、アクセスできるか試したところ、 クライアント側からは「www.example.com」「example.com」の両方でアクセスできましたが、 サーバー側からだと「www.example.com」はアクセスでき、「example.com」だとアクセスできませんでした。 色々ファイルをいじってみましたがうまくいきませんでいた。 何が原因で、どのように設定すればこの状態を直すことができるのでしょうか? 環境は ルーター 192.168.0.1 router.example.com クライアント 192.168.0.10 pc1.example.com サーバー(www,ftp,dns) 192.168.0.100 ns1.example.com ドメイン正引き $ORIGIN example.com. $TTL 1D ;86400sec @ IN SOA ns1.example.com. admin.example.com.( 省略 ) IN NS ns1.example.com. @ IN A 192.168.0.100 router IN A 192.168.0.1 pc01 IN A 192.168.0.10 ns1 IN A 192.168.0.100 www IN CNAME ns1 ftp IN CNAME ns1 ドメイン逆引き $ORIGIN 0.168.192.in-addr.arpa. $TTL 1D ;86400sec @ IN SOA ns1.metal-militia.com. admin.metal-militia.com.(  省略 ) IN NS ns1.example.com. 1 IN PTR router.example.com. 10 IN PTR pc01.example.com. 100 IN PTR ns1.example.com. よろしくお願いします。

  • BIND バーチャルドメインDNSの設定について

    バーチャルドメインのDNSの設定についての質問です。 現在、DNS・WEB・Mailサーバをそれぞれ構築しようとしております。 グローバルIPは1つで複数のドメインを管理したいと思っております。 そこで私のzone設定なんですが、間違いがあればご指摘頂ければと思っております。 (BIND9)named.confの設定は完了してるものとします。 ネームサーバーとなるzoneの書き方です。 グローバルIP:61.123.456.78 ====abc.com.zone $TTL 86400 @ IN  SOA  ns.abc.com. master.abc.com. ( 省略         IN  NS  ns.abc.com.         IN  NS スレーブ         IN  MX  10 ns.abc.com.      ns   IN  A  192.168.0.2(ローカルIP) www  IN  A  192.168.0.3(ローカルIP) mail  IN  A  192.168.0.4(ローカルIP)  IN  A  192.168.0.3(ローカルIP) ======== dfg.com.zone(バーチャルドメイン) $TTL 86400 @ IN  SOA  master.cfg.com. ( 省略         IN  NS  ns.abc.com.         IN  NS スレーブ         IN  MX  10 ns.cfg.com.      ns   IN  A  192.168.0.2(ローカルIP) www  IN  A  192.168.0.3(ローカルIP) mail  IN  A  192.168.0.4(ローカルIP)  IN  A  192.168.0.3(ローカルIP) =============================================== このように設定したいとおもっておいります。 あとは、cfg.com.zoneの設定を元に追加するドメインごとにzoneを追加してnamed.confに記述を追加していけば良いのでしょうか? named.localや0.168.192.in-addr.arpaにも追加が必要なのでしょうか? よろしかったら教えて頂けないでしょうか?宜しくお願い致します。