度々の質問になりますが、RedHatサーバの再起動後BINDは起動していますが名前解決できなくなりました


正常に動いているのでどこから調べて良いか分かりません。
お知恵をお貸しください
ちなみに再起動した経緯は下記でご質問しました
http://q.hatena.ne.jp/1188980327

回答の条件
  • 1人5回まで
  • 登録:2007/09/06 14:19:31
  • 終了:2007/09/08 22:11:24

ベストアンサー

id:hts1004 No.2

hts1004回答回数13ベストアンサー獲得回数22007/09/06 16:34:18

ポイント100pt

1です。DNSは役割によって切り分け方が多種多様なので(私の頭が悪いだけかもしれないですが。。苦笑)、いくつか追加でチェック項目を。

① ご質問の「名前解決ができない」というのはBINDの入っているサーバー本体が外を見られない(DNSキャッシュ用途)ということでいいでしょうか?

(外から該当サーバーを参照できない(ドメイン認証用途)ではない?)

②/etc/named.conf はきちんと存在しており、ファイル内の設定も

残っているっぽいでしょうか?

③ ②のファイル内に設定してある.hostsファイル(zoneファイル)は該当の場所にあり、ファイルの破損等無くlessコマンドなどで読み取れますか?権限はOtherにread権限があれば問題なさそうです。

④ 下記コマンドで LISTENしていますか?(一応)

>|netstat -al | grep domain|<

⑤ root権限で/etc/init.d/iptables stop としてiptablesを落としてから確認もしてみるとよいと思います。(危険なので外向きに稼働中でなければ。)

あと、先ほどのdigコマンドですが、

>| dig localhost (ドメイン) |<

のほうが厳密に自身のBINDに問い合わせますので、そちらも試してみてください。

id:technote7

ありがとうございます

1)BIDNの入っているサーバを参照しているクライアントから外を見られないということです。本体からも見られません

2)全て残っています

3)得に問題ないはずです

4)

# netstat -al | grep domain

tcp 0 0 hogehoge.co.j:domain *:* LISTEN

tcp 0 0 hogehoge.co.jp:domain *:* LISTEN

tcp 0 0 hogehoge.co.jp:38195 hogehoge.co.jp:domain TIME_WAIT

udp 0 0 hogehoge.:domain *:*

udp 0 0 hogehoge.co.jp:domain *:*

Active UNIX domain sockets (servers and established)

5)

実施してみましたが

ANSWER SECTION:

などが抜けは変わりませんでした


ファイルの編集等は基本的にしていないので

他の原因かと思うのですが・・・

2007/09/06 18:05:21

その他の回答(1件)

id:hts1004 No.1

hts1004回答回数13ベストアンサー獲得回数22007/09/06 15:30:11

ポイント35pt

まず正常に動いているという根拠はどの辺りでご判断されましたでしょうか?
名前解決できない=正常に起動できていない、というわけではなく?

取り急ぎ下記のコマンドで、期待していたIPは返ってきますか?

dig (登録していたドメイン名 or www.yahoo.co.jpなど)
id:technote7

/etc/init.d/named restart

を実行すると、正しく停止・起動を行います

digコマンドを試したところ

;; QUESTION SECTION:

;www.hogehoge.co.jp. IN A

となり

ANSWER SECTION:

などが抜けていました

zoneファイルは特に編集していないため

権限か所有者が原因かと思うのですが

そのあたりについてどう関係してくるのか分かりません。。

2007/09/06 15:49:53
id:hts1004 No.2

hts1004回答回数13ベストアンサー獲得回数22007/09/06 16:34:18ここでベストアンサー

ポイント100pt

1です。DNSは役割によって切り分け方が多種多様なので(私の頭が悪いだけかもしれないですが。。苦笑)、いくつか追加でチェック項目を。

① ご質問の「名前解決ができない」というのはBINDの入っているサーバー本体が外を見られない(DNSキャッシュ用途)ということでいいでしょうか?

(外から該当サーバーを参照できない(ドメイン認証用途)ではない?)

②/etc/named.conf はきちんと存在しており、ファイル内の設定も

残っているっぽいでしょうか?

③ ②のファイル内に設定してある.hostsファイル(zoneファイル)は該当の場所にあり、ファイルの破損等無くlessコマンドなどで読み取れますか?権限はOtherにread権限があれば問題なさそうです。

④ 下記コマンドで LISTENしていますか?(一応)

>|netstat -al | grep domain|<

⑤ root権限で/etc/init.d/iptables stop としてiptablesを落としてから確認もしてみるとよいと思います。(危険なので外向きに稼働中でなければ。)

あと、先ほどのdigコマンドですが、

>| dig localhost (ドメイン) |<

のほうが厳密に自身のBINDに問い合わせますので、そちらも試してみてください。

id:technote7

ありがとうございます

1)BIDNの入っているサーバを参照しているクライアントから外を見られないということです。本体からも見られません

2)全て残っています

3)得に問題ないはずです

4)

# netstat -al | grep domain

tcp 0 0 hogehoge.co.j:domain *:* LISTEN

tcp 0 0 hogehoge.co.jp:domain *:* LISTEN

tcp 0 0 hogehoge.co.jp:38195 hogehoge.co.jp:domain TIME_WAIT

udp 0 0 hogehoge.:domain *:*

udp 0 0 hogehoge.co.jp:domain *:*

Active UNIX domain sockets (servers and established)

5)

実施してみましたが

ANSWER SECTION:

などが抜けは変わりませんでした


ファイルの編集等は基本的にしていないので

他の原因かと思うのですが・・・

2007/09/06 18:05:21
  • id:KuroNeko666
    ~調べ方~

    次のようにローカル環境でdigコマンドを打ったとき、flags にどう出ているかが知りたいですね…

    # dig @localhost q.hatena.ne.jp

    ; <<>> DiG 9.2.1 <<>> @localhost q.hatena.ne.jp
    ;; global options: printcmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 29056
    ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

    これだけで、大分たすかります。

    また、Redhat なら、
    # grep named /var/log/messages
    もしくは
    # tail -n 100 /var/log/messages
    で、BINDの起動ログをチェックするのも手の一つ。
  • id:technote7
    ありがとうございます
    ログを確認すると4日以前しか残っていません
    このログはサーバの直接操作しか残さないのでしょうか
    telnetでは4日以後も操作を行っています

    ; <<>> DiG 9.2.4 <<>> @localhost q.hatena.ne.jp
    ;; global options: printcmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 44969
    ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

    ;; QUESTION SECTION:
    ;q.hatena.ne.jp. IN A

    ;; AUTHORITY SECTION:
    . 10800 IN SOA hogehoge1.co.jp. hogehoge2.co.jp. 2006080400 1800 900 604800 86400

    ;; Query time: 2 msec
    ;; SERVER: 127.0.0.1#53(localhost)
    ;; WHEN: Fri Sep 7 13:41:56 2007
    ;; MSG SIZE rcvd: 84

    となりました。
    どうも調べてみるとApacheも動かしているのですが、自分以外のzoneファイルを読んでいないような状態のようです
    zoneファイル自体手を加えていないのですが・・・
    一からzoneファイルを作成してみます

    ちなみに
    # grep named /var/log/messages
    Aug 31 15:30:46 hoge named[1214]: invalid command from 127.0.0.1#45865: connection reset
    Sep 4 23:09:07 hoge named[1214]: shutting down: flushing changes
    Sep 4 23:09:07 hoge named[1214]: stopping command channel on 127.0.0.1#953
    Sep 4 23:09:07 hoge named[1214]: no longer listening on 127.0.0.1#53
    Sep 4 23:09:07 hoge named[1214]: no longer listening on 172.20.3.60#53
    Sep 4 23:09:07 hoge named: succeeded
    Sep 4 23:09:07 hoge named[1214]: exiting
  • id:technote7
    とりあえず解決しました

    named.confの最下行に下記が挿入されていました
    include "/etc/rndc.key";

    バックアップファイルにも確かに挿入されており
    その状態で動作していましたが、この1行を消すと動作しました。

    未だに原因が良く分からないのでどなたか分かる方ご教授お願いします

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません