bind9のzone設定でallow-queryのエラーが発生する原因

このQ&Aのポイント
  • 現在、bind9を使用してDNSサーバを構築しています。特定のzone情報のみを別のlocalネット中のDNSサーバに問い合わせる設定を行いたい場合、allow-queryを使用します。
  • しかし、allow-queryを設定するとbind起動時にエラーが発生してしまいます。エラーログでは、option 'allow-query'が'forward'ゾーンで許可されていないというメッセージが表示されています。
  • 原因としては、forwardゾーンではallow-queryを指定することができないためです。設定を見直す必要があります。
回答を見る
  • ベストアンサー

bind9のzone設定中のallow-query について

現在bind9をつかってDNSサーバを構築しています。 その中で特定のzone情報のみは別のlocalネット中の別のDNSサーバに問い合わせに行く、という設定をしています。 [設定1] zone "AAA" { type forward; forward only; forwarders { 172.20.111.1; }; }; ※このゾーンに対する問い合わせはforwarders先に問い合わせています。  動作確認済みです。 ここからが質問です。 このAAAというゾーンに対する問い合わせをaclで定義したネットワークからの問い合わせからのみforwarders先に問い合わせ、それ以外は問い合わせに行かないように設定したいので以下のようにしたらbind起動時にエラーとなってしまいました。 [設定2] acl local { 172.20.0.0/14; }; zone "AAA" { type forward; allow-query { local; }; forward only; forwarders { 172.20.111.1; }; }; [エラーログ] named[388]: loading configuration from '/etc/named.conf' named[388]: /etc/named.conf:60: option 'allow-query' is not allowed in 'forward' zone '0.23.172.in-addr.arpa' named[388]: reloading configuration failed: failure allow-query の指定をいれるとエラーになるので、ここがよくないとは思うのですが、何が悪いのかがいまいち分かりません。 何か、分かる方いらっしゃいましたらご意見下さい。 よろしくお願いします。

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

  • ベストアンサー
回答No.1

bind 8 しか使っていませんが、man named.conf によると、 type forward をつけた zone では、 forward, forwarders, check-names の指定しか含めることができないという 文法のようです。 実際、エラーメッセージも、 option 'allow-query' is not allowed in 'forward' zone '0.23.172.in-addr.arpa' ということですから、 「allow-query オプションは、forward ゾーンでは許されません」 と言っています。

関連するQ&A

  • BINDのバージョンによって設定違いについて

    以下の設定をBIND9.3.0とBIND8.2.4に設定しました。 BIND9.3.0には、zone "." の設定は必要ないのですが BIND8.2.4には、zone "." の記述がないと正常に動作しません。 (BIND8.1.2では、記述がなくても動作したような記憶がありますが・・) BINDによって記述が必要でしょうか? また、BINDのバージョンによっての記述の違いがわかるホームページ等 ございましたら教えて下さい。 options { directory /var/named; pid-file "/var/run/named/named.pid"; auth-nxdomain yes; version allow-transfer { any; }; allow-query { any; }; allow-recursion { any; }; forward only; forwarders { 192.168.***.***; }; // query-source port 53; }; zone "." in { type hint; file "named.root"; };  ・  ・  ・  ・  ・

  • BINDについて

    Soralis7でnamed.confにzoneでforward設定をしてみましたがエラーが 発生して設定できません。Solaris9のBIND9.3.0の機器では、同じ設定は 出来ました。BINDのバージョンが、8.1.2である為に出来ないのでしょうか? 環境 Solaris7 BIND8.1.2 named.confに追加した設定  zone "ドメイン名" in {  type forward;   forward only;   forwarders { 10.10.10.10; };  }; エラー内容 Nov 5 23:59:16 rh62 named[791]: /etc/named.conf:32: syntax error near forward Nov 5 23:59:16 rh62 named[791]: no type specified for zone 'ドメイン名' Nov 5 23:59:16 rh62 named[791]: zone 'ドメイン名' did not validate, skipping Nov 5 23:59:16 rh62 named[791]: /etc/named.conf:34: syntax error near '}'

  • BIND設定(長文)

    /etc/named.confの設定が下記のようになっています。 options { directory "/var/named"; allow-query{ 172.0.0.1; 192.168.24.0/24; }; }; controls { inet 127.0.0.1 allow { localhost; } keys { rndckey; }; }; acl local{ { 192.168.24.0/24; 127.0.0.1; }; }; logging{ channel all_log { file "alllog.text"; severity dynamic; print-time yes; }; category default{ default_syslog; all_log; }; }; //view "local" { // match-clients { // local; // }; //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 "abc" IN { type master; file "kuma"; }; zone "24.168.192.in-addr.arpa" IN { type master; file "gyaku"; }; include "/etc/rndc.key"; このような状態で別のPCよりこのDNSへyahoo等問い合わせ(NSLOOKUP)すると答えが返ってきます。 別のサーバを参照しているのかな?って電源を切るとエラーが当然、返ってきます。 zoneファイル「kuma」にはプライベートが記載されていますが、abcを問い合わせると外部IPが返ってきます。 何故?「.」「localhost」を//でコメントアウトしているのに回答が返ってくるのでしょうか? ご教授いただけますか?

  • BINDについて

    お世話になります。 レッドハット4上で、BIND 9.2.4-38 を稼動させています。 特に動作に問題はないのですが、/var/log/messages に以下のログが大量に残っていました。 client xxx.xxx.xxx.xxx#64809: query(cache) '[セカンダリDNS]/IN' denied named.conf の設定は以下のようになっています。 allow-transfer { 192.168.xxx.xxx; 192.168.xxx.xxx; localhost; 210.xxx.xxx.xxx/23; }; allow-recursion { 192.168/16; }; allow-query { 192.168/16; localhost; }; セカンダリDNSからの問い合わせを拒否していると思うのですが、このログが出ないようにする方法をご教授頂ければと存じます。 よろしくお願い致します。

  • DNS(BIND)の設定について

    教えてください。 named.confの設定と思いますが、 allow-queryやallow-recursion又、recursion yesもしくはnoなどの設定が あります。 これらはどのような設定をする為のものか、教えていただけないでしょうか。 どのような違いがあるのでしょうか? それぞれ設定する上で関係することがあるのでしょうか? DNSサーバを設置している環境や用途は以下の通りです。 プライマリのDNSサーバを社内に立てます。 セカンダリサーバはプロバイダ側で用意します。 サーバを公開するのと、会社内のPCがインターネットへ出れるようにしたいです。(プロキシ経由) とりあえずallow-recursionだけ社内のPCが存在しているローカルセグメントを 書いて設定しました。 allow-queryやrecursionの設定はどのようにすればいいのでしょうか? すみません。よろしくお願いします。

  • bind9

    bind9:named.confファイルのoptionについての質問です。 query-source addressのアドレスはローカルIPでよいのですよね? これをグローバルにするとどうなるのでしょうか? それとquery-source addressのportを53にした場合は1024番以降開ける必要はありませんよね? ちなみに構成は下記になります。 [Internet]   ↓ [Router]   ↓ [DNS及び各Server] お分かりでしたらお教えください。

  • bind9.2.4

    お世話になります。 自宅にて勉強のためDNSサーバを構築している最中なのですが、詰まっています。 皆様方、お忙しい中お手を煩わすようで恐縮なのですが、ご指導頂けないでしょうか? OS:RedhatES4 2.6.9-5.EL(VMwareWorkstation6.5上にインストール) クライアント:WindowsXP professional SP2 ×2台 Bind ver 9.2.4 現状は正引きの名前解決のみできない状況ですが、windowsからの問い合わせ、サーバ自身からの問い合わせの解決(これは問い合わせ先をルータにしているのでOK)ができていません。 named.confとzoneの設定が下記になります。 #named.conf zone "magi.com" { type master; file "test.zone"; allow-update { none; }; }; #magi.com.zone $TTL 86400 @ IN SOA magi.com. root.magi.com. ( 2009021203 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS magi.com. MAGISYSTEM2. IN A 192.168.11.2 magisystem. IN A 192.168.11.4 magi.com. IN A 192.168.11.10 named-checkzoneの結果が下記です。dns_master_load: /var/named/chroot/var/named/magi.com.zone:12: ignoring out-of-zone data (MAGISYSTEM2) dns_master_load: /var/named/chroot/var/named/magi.com.zone:13: ignoring out-of-zone data (magisystem) zone magi.com/IN: loaded serial 2009021203 OK とりあえずは名前解決ができればよいという設定で作ろうと思っています。 ーよろしくお願い致します

  • bind9のNSレコードを返す設定について

    DNSサーバ(bind9)のNSレコードを返す設定について質問させて下さいませ。 DNSサーバ#0と、DNSサーバ#1の、2つのDNSサーバがあったとします。 DNSクライアントが、DNSサーバ#0にexample.comのAレコードを問い合わせたとき、DNSサーバ#0がDNSサーバ#1のNSレコード(ns.dnsserver1.com)を返す設定をご教示願います。 現在、DNSサーバ#0に下記のようにzone設定を入れたところ、DNSサーバ#0はNSレコードを返さずに standard query respnse, No such nameを返してしまいます。 //named.conf.default.zone zone "." { type master; file "/etc/bind/all.zone"; }; //"/etc/bind/all.zone" $TTL 3600 @ IN SOA ns.dnsserver0.com. root.dnsserver0.com. ( 2000091801 ; Serial 3600 ; Refresh 900 ; Retry 3600000 ; Expire 3600 ) ; Minimum IN NS ns.dnsserver1.com. ns.dnsserver1.com IN A aaa.aaa.aaa.aaa(IPアドレス) 宜しくお願い致します。

  • BINDで異なるドメインの問合せ

    お世話になっております。 BIND9.9.2で試験用にDNSを構築しようとしています。 Windows系のPC2台を使って、 pc1.example pc2.example というドメインを作りました。 各PCの中で、自分自身の名前解決はできているようなのでが、 相互に名前解決させることができません。 例えば、 pc1から dig @127.0.0.1 pc1.exampleと打てば、 ;; AUTHORITY SECTION: pc1.example. 3600 IN NS pc1.example. と返ってくるのですが、 dig @127.0.0.1 pc2.exampleとやっても、 ;; ANSWER SECTION:以降が出てきません。 Windowsファイアウォールでは、TCP/UDPの53は開けてあります。 解決のヒントなどをいただけるとありがたいです。 named.confの設定は以下のとおりです。 options { directory "C:\windows\SysWOW64\dns\etc"; allow-query{ 127.0.0.1; 192.168.95.11;←pc1のアドレス 192.168.98.12;←pc2のアドレス }; recursion yes; forwarders{ 192.168.98.12; ←pc2のアドレス }; }; zone "." { type hint; file "named.root"; }; //include "named.special.zones"; zone "localhost" { type master; file "localhost/fwd"; allow-update { none; }; }; zone "0.0.127.in-addr.arpa" { type master; file "localhost/rev"; allow-update { none; }; }; zone "pc1.example" { type master; file "pc1/fwd"; allow-update { none; }; }; zone "11.95.168.192.in-addr.arpa" { type master; file "pc1/rev"; allow-update { none; }; }; よろしくお願いします。

  • BINDの移行

    現在DNSでbind8.xを使用しているのですがこれをbind9.xにバージョンアップさせた場合、named.confや 各種ゾーンファイルはそのまま流用出来るのでしょうか?ご教授ください。