IPアドレスからホスト名を検索する件に関する質問です。

PHPでgethostbyaddr関数を使用してIPアドレスからホスト名を変換しようとすると、特定のIPアドレスを用いた場合、変換に時間がかかりすぎて、サーバ側でタイムアウトしてしまうことがあります。変換に時間がかかる原因として考えられる事はなんでしょうか?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2004/10/12 10:03:57
  • 終了:--

回答(4件)

id:taknt No.1

きゃづみぃ回答回数13539ベストアンサー獲得回数11982004/10/12 10:19:23

ポイント15pt

DNSでタイムアウトが発生するまで待っているということは、ありませんか?

id:kawasald

何処のDNSでタイムアウトが発生するまでまっているのでしょうか?

・特定のIPを管理しているDNSでしょうか?

・gethostbyaddrを動作させているDNSでしょうか?

また、このDNSでタイムアウトが発生する原因と解決する方法が分かったら一緒に教えていただければと思います。

2004/10/12 10:58:01
id:taknt No.2

きゃづみぃ回答回数13539ベストアンサー獲得回数11982004/10/12 12:14:59

ポイント25pt

たとえば 221.186.146.27 を変換しようとしたとき、これは はてなのサーバーなので、LAN内には ないと思います。

この場合、ネット接続で契約しているプロパイダにあるDNSが変換してくれるかもしくは、会社内だと 独自にDNSサーバーをたてているものが 変換してくれることとなると思われます。

未登録の場合、タイムアウトするまで 返ってこないと思われます。

id:kawasald

具体的な回答ありがとうございました!

gethostbyaddrは変換できないホスト名の場合、IPアドレスが入るのに、何故タイムアウトという現象が発生するのでしょうね。うーん。

2004/10/12 12:31:16
id:gaa No.3

gaa回答回数16ベストアンサー獲得回数02004/10/12 12:18:41

ポイント20pt

DNSに登録されていないIPアドレスだとタイムアウトになるのではないでしょうか.

どのドメインに所属するIPアドレスかは日本のドメインなら表記のページから調べられます.

id:kawasald

ここでいうDNSとはやはり契約しているプロバイダや会社等のDNSということでしょうか?

gethostbyaddr関数を使用したPHPを動作させているサーバのDNSは関係ないのでしょうか?

前述のとおり、gethostbyaddrはホスト名が変換出来ない場合IPアドレスが入るはずなのに、何故タイムアウトまで変換を試みようとするのでしょう。

http://php.s3.to/man/function.gethostbyaddr.html

2004/10/12 12:42:18
id:JULY No.4

JULY回答回数966ベストアンサー獲得回数2472004/10/12 13:23:18

ポイント40pt

http://www.atmarkit.co.jp/flinux/rensai/bind906/bind906a.html

@IT:サブドメインの運用と委任(1/3)

そのゾーン情報を委任されている DNS サーバにアクセス不可能、

ということになると思います。

DNS に対する正引き、逆引きのいずれでも、最終的に、「この範囲

は、この IP アドレスを持つ DNS サーバに聞いてください」

ということになり、その DNS サーバに聞きにいったけど返事

が返ってこなければ、タイムアウトするまで待つ羽目になり

ます。

ただ、逆引きでこういったことが起きるのは、珍しい気が

しますが...。

http://yougo.ascii24.com/gh/32/003216.html

ASCII24 - アスキー デジタル用語辞典 - プライベートアドレス

変換しようとしている IP アドレスがプライベートアドレスだと、

何らかのファイアーウォール機能やネームサーバ側の制限で、

「返事をしない」動作をするようになっていると、タイムアウト待ち

になるような気がします。

DNS サーバの通常の動作としては、存在しない情報に対する要求

(存在しないドメイン名の IP アドレスを調べる、など)に対しては、

「そんなの無いよ」と答えるのが普通ですが、本来、インターネット上に

存在しない IP アドレス(プライベートアドレス)に対しては、

インターネット上にある DNS サーバに意味のある答えは無いので、

そういった、無駄な問い合わせに対して、無駄な返事をしないように

することは考えられるかな、と。

id:kawasald

実に分かりやすい回答&URLをありがとうございました。

原因はまだはっきりわからないのですが、原因を突き止めていく上での目処が立ちました!

2004/10/12 14:20:32

コメントはまだありません

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

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

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

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