OSX上のホストを使用してローカルでDNSを確認する必要がありますか?

OSXMacターミナル

私のクライアントのXNUMX人が、自分のWebサイトをバルクホスティングアカウントに移動しました。 彼らは、AレコードとCNAMEレコードのドメインのDNS設定を更新しましたが、サイトが新しいホスティングアカウント(新しいIPアドレス)で解決されているかどうかを判断するのに苦労していました。


DNSのトラブルシューティングを行う際に留意すべき点がいくつかあります。 DNSがどのように機能するかを理解し、ドメインレジストラがどのように機能するかを理解し、次にホストがドメインエントリをどのように管理するかを理解します。


DNSのしくみ


ブラウザにドメインを入力する場合:


  1. ドメインはインターネットで検索されます ネームサーバー リクエストの送信先を特定します。
  2. Webドメインリクエスト(http)の場合、ネームサーバーは IPアドレスをコンピュータに返します.
  3. 次に、コンピュータはこれをローカルに保存します。 DNSキャッシュ.
  4. リクエストはホストに送信され、ホストがリクエストをルーティングします 内部で そしてあなたのサイトを提示します。


ドメインレジストラの仕組み


これに関する注意…すべてのドメインレジストラが実際にDNSを管理しているわけではありません。 たとえば、Yahoo!を介してドメインを登録するクライアントがXNUMXつあります。 Yahoo! 管理にそのように表示されているにもかかわらず、実際にはドメインを管理していません。 彼らはただの再販業者です Tucows。 その結果、Yahoo!でDNS設定を変更すると、それらの変更が実際に更新されるまでに数時間かかる場合があります。 リアル ドメインレジストラ。


DNS設定が更新されると、インターネット上の一連のサーバーに伝達されます。 ほとんどの場合、これは文字通り数秒で発生します。 これが人々がお金を払う理由のXNUMXつです マネージドDNS。 マネージドDNS企業は通常、冗長性があり、信じられないほど高速です…多くの場合、ドメインレジストラよりも高速です。


インターネットサーバーが更新されると、次にシステムがDNS要求を行うときに、サイトがホストされているIPアドレスが返されます。 注意: 次回システムがリクエストを行うときに言ったことを覚えておいてください。 以前にそのドメインをリクエストした場合、インターネットは最新である可能性がありますが、ローカルシステムがDNSキャッシュに基づいて古いIPアドレスを解決している可能性があります。


ホストDNSのしくみ


ローカルシステムによって返され、キャッシュされるIPアドレスは、通常、単一のWebサイトに固有のものではありません。 ホストには、単一のIPアドレス(通常はサーバーまたは仮想サーバー)でホストされている数十または数百のWebサイトが含まれる場合があります。 したがって、ドメインがIPアドレスから要求されると、ホストは要求をサーバー内の特定のフォルダーの場所に転送し、ページを表示します。


DNSのトラブルシューティング方法


ここにはXNUMXつのシステムがあるため、トラブルシューティングするシステムもXNUMXつあります。 まず、ローカルシステムをチェックして、システム内のIPアドレスが指している場所を確認します。


OSXターミナルping


これは、ターミナルウィンドウを開いて次のように入力することで簡単に実行できます。


ping domain.com


または、実際に特定のネームサーバールックアップを実行できます。


nslookup ドメイン.com


ターミナルnslookup


ドメインレジストラのDNS設定を更新した場合は、DNSキャッシュがクリアされていることを確認し、再度リクエストを行う必要があります。 OSXでDNSキャッシュをクリアするには:


sudo dnscacheutil -flushcache


ターミナルフラッシュDNSキャッシュ


再試行できます ping or nslookup この時点でドメインが新しいIPアドレスに解決されるかどうかを確認します。


次のステップは、インターネットDNSサーバーが更新されているかどうかを確認することです。 保つ DNSスタッフ これに便利な、あなたは本当に良い彼らのプラットフォームを通して完全なDNSレポートを得ることができます。 フライホイール プラットフォームに優れたDNSチェッカーがあり、クエリを実行します Google, OpenDNSの, フォルタルネット、およびプローブネットワークを使用して、設定がWeb全体に適切に伝播されているかどうかを確認します。


Web全体でIPアドレスが正しく表示されていてもサイトが表示されない場合は、インターネットのサーバーをバイパスして、要求をIPアドレスに直接送信するようにシステムに指示することもできます。 これは、hostsファイルを更新してDNSをフラッシュすることで実現できます。 これを行うには、ターミナルを開いて次のように入力します。


sudo nano / etc / hosts


ターミナルSudoNanoホスト


システムパスワードを入力し、Enterキーを押します。 これにより、ファイルがターミナルに直接表示され、編集できるようになります。 矢印を使用してカーソルを移動し、IPアドレスの後にドメイン名を付けた新しい行を追加します。


ターミナルホストはファイルを保存します


ファイルを保存するには、を押します コントロール-o キーボードで、ファイル名を受け入れるために戻ります。 を押してエディタを終了します control-x、コマンドラインに戻ります。 キャッシュをフラッシュすることを忘れないでください。 サイトが正常に表示されない場合は、ホストのローカルで問題が発生している可能性があるため、ホストに連絡して通知する必要があります。


最後の注意…hostsファイルを元のバージョンに戻すことを忘れないでください。 自動的に更新したいエントリをそこに残したくない!


これらの手順に従うことで、レジストラのDNSエントリが最新であり、インターネット上のDNSエントリが最新であり、MacのDNSキャッシュが最新であり、WebホストのDNSが稼働していることを確認できました。今日まで…行ってよかった!

どう思いますか?

このサイトはAkismetを使用して迷惑メールを減らします。 コメントの処理方法を学ぶ.