iMac は一部のサイトで DNS を解決できません (またはホストへのルートを見つけられません) が、Windows ではできますか?

iMac は一部のサイトで DNS を解決できません (またはホストへのルートを見つけられません) が、Windows ではできますか?

私のホーム ネットワークには、DNS に関する既知の問題がない Windows ベースの PC が 2 台ありますが、OSX iMac ではいくつかのランダム ドメインの解決に問題があります。問題のあるドメインは次のとおりです。

  • 翻訳元
  • について
  • ナショナルショッピングサービス

見るだけでなく/etc/ホストファイル(問題ないと思います)iMac で DNS に関連する問題について何をチェックすればよいですか、または直面している問題の診断に役立つどのツールを使用すればよいですか?

dig コマンドを使用すると次のようになります:

; <<>> DiG 9.4.3-P3 <<>> @4.2.2.2 www.nationalshoppingservice.com
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 3468
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.nationalshoppingservice.com. IN    A

;; ANSWER SECTION:
www.nationalshoppingservice.com. 14400 IN A 64.40.111.81

;; Query time: 86 msec
;; SERVER: 4.2.2.2#53(4.2.2.2)
;; WHEN: Tue Apr 12 18:22:42 2011
;; MSG SIZE  rcvd: 65

いくつかの提案を試した後、DNS が問題ではないと信じています... www.nationalshoppingservice.com に ping を実行したところ、次の結果が得られました:

PING www.nationalshoppingservice.com (64.40.111.81): 56 data bytes
ping: sendto: No route to host
ping: sendto: No route to host
ping: sendto: No route to host
ping: sendto: No route to host

DNS は解決しているようですが、ホストへのルートが見つからないのでしょうか? 何が起こっているのでしょうか?

答え1

コマンドラインはあなたの味方です。まず、DNSに問題がないかもしれません。まずそれを確認する必要があります。この作業に最適なツールは ですdig。ターミナルを開いて次のように入力します。

dig @4.2.2.2 ehow.com

このコマンドのコンポーネント:

dig          :   the command
@4.2.2.2     :   this tells dig where to ask.  We are specifically asking a
                 known provider in this case Level3.  You could easily put
                 8.8.8.8 (Google) or any other provider here.
ehow.com     :   the domain you wish to query for.

次のような出力が返されます:

; <<>> DiG 9.7.2-P2 <<>> @4.2.2.2 ehow.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43699
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;ehow.com.          IN  A

**;; ANSWER SECTION:
ehow.com.       118 IN  A   98.124.249.20**

;; Query time: 1 msec
;; SERVER: 4.2.2.2#53(4.2.2.2)
;; WHEN: Mon Apr 11 01:51:12 2011
;; MSG SIZE  rcvd: 42

回答セクションは重要な部分です。回答が得られれば、iMac は正常であり、そのドメインにアクセスできることがわかります。

次のステップは、@4.2.2.2 を通常の DNS サーバーの IP またはホスト名に置き換えることです。これは通常、ISP から提供されます。同じ答えが返ってきたら、DNS に問題がないことがわかり、他の場所を探し始めることができます。また、応答時間が良好であることを確認するために、これらのテストを数回実行することをお勧めします。次のような結果になった場合は、

;; connection timed out; no servers could be reached

すると、応答が返ってこないことがわかります。これが断続的に発生する場合、キャッシュが原因で、Windows マシンよりも iMac でより顕著に現れることがあります。私の経験では、Windows マシンは Mac よりも DNS 応答を長くキャッシュします。

答え2

hostMac OS X で DNS の問題をトラブルシューティングするには、(1 つ選択) 、、などの従来の Unix DNS ルックアップ ツールdignslookup、などの Mac OS X 固有の DNS ルックアップ API を呼び出す最新のツールの両方を使用する必要がありますdns-sd -Q

ほとんどの Cocoa アプリが呼び出す DNS ルックアップ API はmDNSResponderデーモンを介してルーティングされるため、GUI アプリで DNS ルックアップの問題が発生した場合は、dns-sd -Qおそらく同じことが表示されます。

従来の Unix DNS ルックアップ ツールは、より従来の Unix DNS リゾルバ コードを使用するため、Cocoa アプリでは解決できないものを解決できる可能性があります (逆も同様)。

では検索できるがdig、 では検索できない場合は、デーモンを強制終了して自動的に再起動してみてdns-sdください(mDNSResponder の HUP だけでは十分ではないことが分かりました)。mDNSResponderlaunchd

sudo killall mDNSResponder

答え3

iMac に IP ブロック ソフトウェアまたは類似のものがインストールされていますか?

また、「環境設定」->「ネットワーク」->「詳細」->「DNS」に移動して DNS エントリをリセットし、不要なものを削除してください。

それでも問題が解決しない場合は、iMac に新しいアカウントを(一時的に)作成するか、別のアカウントにログインして、そこから Web サイトにアクセスできるかどうかを確認してください。

答え4

テストするには、「設定」->「ネットワーク」->「詳細」->「DNS」に移動して、Google のパブリック DNS 8.8.8.8 の DNS エントリを追加します。これで問題が解決した場合は、ルータが IP アドレスと DNS 情報を配布するときに使用している DHCP 設定を把握する必要があります。ルータが ISP から DNS 情報を取得している場合は、それが問題である可能性があり、応答が遅いだけかもしれません。ISP の DNS 設定を使用する必要はありません。

私はテストに 8.8.8.8 をよく使用しますが、追加の制御には主に Opendns を使用します。

お役に立てれば幸いです

関連情報