• 締切済み

Hostsファイルの名前解決順(確認方法)について

はじめまして。OKWaveの利用はこのご質問でデビューとなります。 ルールに添えていない部分はご指南下さい。 問題点: ~~~~~~~~ Hostsファイルを利用していた(つもりな)のですが、名前解決順が意図したものではなさそうです。 具体的には http://www29.atwiki.jp/bearlake/pages/30.html のような利用を想定しており hostsファイル> 0.0.0.0 yahoo.co.jp ← このように記載設定 ping yahoo.co.jp とすると下記の様に応答があるのです。(^^; ------------------------------------------------------------------ Pinging yahoo.co.jp [124.83.139.192] with 32 bytes of data: Reply from 124.83.139.192: bytes=32 time=35ms TTL=46 略 Reply from 124.83.139.192: bytes=32 time=32ms TTL=46 Ping statistics for 124.83.139.192: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 32ms, Maximum = 44ms, Average = 36ms ------------------------------------------------------------------ 最優先にHostsファイルを強制参照させる方法や、稼動しているPCの「実際の」名前解決順を調べたいのです。 複合した原因も考えられますので、影響範囲も含め、最小限の変更で意図した動作を求めております。 関連する情報: ~~~~~~~~~~~~~~ 当方で調査したところ http://support.microsoft.com/kb/310570/ja 当該機で上記の用な状態が確認できましたので、下記のたどり着きました。 http://www.kotaete-net.net/Default.aspx?pgid=14&qid=6025858533 ご提示すべき、当該PCの設定条件や現況は多いはずですが、多岐に亘る為 どの部分かも確認しきれておりません。 情報が少ない事をお許し下さい。必要であれば、ご指示頂いた当該事項の追記致します。 PC(OS) Windows XP Pro.(SP2+最新Patch) 関連しそうなレジストリ HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters  DataBasePath → %SystemRoot%\System32\drivers\etc 確認した事: ~~~~~~~~~~~~ 冒頭に記載しました、問題点の部分の他に以下も確認しました。 ping localhost と打つと自機から応答はある。<-- hostsファイルに記述されたものが反映されている(と理解) 皆様のお知恵を是非拝借したいと思います。よろしくお願いします。

みんなの回答

回答No.2

「Microsoft TCP/IP のホスト名解決の順序」 http://support.microsoft.com/kb/172218/ja はご覧になりましたか?(と言うか それを見てこの質問をされている気もするが) 1、自分自身 ↓ 2.hosts ↓ 3.DNS ↓ 4.Netbios >hostsファイル> 0.0.0.0 yahoo.co.jp ← このように記載設定 0.0.0.0では駄目なのでは? LAN内のアドレスを指定してみては? ##実験1.試しにC:\WINDOWS\system32\drivers\etc\hosts に 127.0.0.1 yahoo.com localhost こう書いてコマンドラインで c:\hoge>ping yahoo.com 結果 Pinging yahoo.com [127.0.0.1] with 32 bytes of data: Reply from 127.0.0.1: bytes=32 time<1ms TTL=128  以下略 #実験2#hostsで上記のを消して 192.168.1.190(LAN内別PCのアドレス)を指定 192.168.1.190 yahoo.com とすると pingでも192.168.1.190に通信します ##実験3. 127.0.0.1 と 192.168.1.190 の両方に yahoo.com を指定すると   127.0.0.1 に通信を行います ### hosts内から yahoo.com の記述を消すと 勿論   本来のアドレスである 206.190.60.37(等) に通信します

tom7ric
質問者

お礼

umasikajiroさん 早速のご回答ありがとうございます。 元質問主のtom7ricです。 ご提示頂いた「Microsoft TCP/IP のホスト名解決の順序」も参考にさせて頂きました。 ありがとうございます。様々な条件で「名前解決の順序」は変わるようですね。 http://www.atmarkit.co.jp/fwin2k/network/baswinlan019/baswinlan019_04.html 上記にそれらが詳しい様です。 umasikajiroさんにご指摘頂いた >0.0.0.0では駄目なのでは? という部分が気になり、0.0.0.0→127.0.0.1と変更し再確認した処 当初意図した動作を無事確認する事ができました。 以前は大丈夫だった様な....(^^;下記にもこんな記載もあるし http://www.atmarkit.co.jp/fnetwork/rensai/troutol07/02.html ↑ の様に0.0.0.0 とした場合の動作を意図し想定 いつからダメ?なのか 何故?と。 まぁ修正して期待する動作を確認できれば、結果良いのですが。 ん~深い(不快?) ※最優先にHostsファイルを強制参照させる方法や、稼動しているPCの「実際の」名前解決順を調べたい という部分は未解決ですが、多少解決できた感じです。 ありがとうございました。(引き続いて情報お待ちします)

  • okg00
  • ベストアンサー率39% (1322/3338)
回答No.1

ノードタイプは何になりましたか? 通常の名前解決には何を使用していますか?ブロードキャスト?DNS?WINS?ドメイン環境?ワークグループ環境? DNSのクライアントのキャッシュに保存されているのではないですか? ipconfig /dnsflushでキャッシュを削除してください。

tom7ric
質問者

お礼

早速のご回答ありがとうございます。 ipconfig /all の実行結果は Node Type : Unknown ドメイン環境です。 ご指摘頂いた ipconfig /dnsflush とした直後に ping を実行しても冒頭(問題点:)の動作をしてしまいます。 解決順が一部一切hostsファイルを見ていない(!?)動作です。 つまり、「確認した事:」にも書いた動作で実際のhostsの利用順序が どうなっているのか不明という状況です。 最終的にDNSに問い合わす.....と思ったのですが。

tom7ric
質問者

補足

ipconfig /dnsflush × ipconfig /flushdns ○ でしたね。 ipconfig /displaydns でも見ましたが hostsファイルが反映されていないという理由は?ですね

関連するQ&A

専門家に質問してみよう