性質の異なる2つの場面
dig / nslookup
プロトコルを詳細に確認、スクリプト可、オフライン可
ウェブベースのツール
セットアップ不要、一括検索、共有可能
「Server DNS Address Could Not Be Found」を修正
電話はたいてい、こんなふうに始まります。「インターネットが壊れました。でも、壊れたのは一つのウェブサイトだけです」。Chrome には灰色のページと小さな恐竜、そして Server DNS address could not be found という言葉が表示され、その下に小さな文字で DNS_PROBE_FINISHED_NXDOMAIN と書かれています。他はすべて正常に読み込めます。電話の相手は、すでにルーターを二回再起動しています。
私はこのエラーを数え切れないほど直してきましたが、たいていは皆さんが恐れているような意味ではありません。Chrome に問題はなく、ウェブサイトも通常は消えていません。あなたのコンピューターがサイトのアドレスを尋ねたところ、経路のどこかで「そんな場所はありません」という答えが返ってきたのです。その経路、つまりブラウザのキャッシュ、OS のキャッシュ、ルーター、プロバイダーのリゾルバにはいくつものつながりがあり、そのどれか一つが嘘をついている可能性があります。やるべきことは、その一つを見つけることだけです。
最初の質問:みんなが開けないのか、あなただけですか?
設定を一つも触る前に、スマートフォンを手に取ってください。Wi-Fi を切り、スマートフォンがモバイルデータを使うようにして、サイトを開いてください。たった今、あなたはこのガイド全体で最も役に立つテストを実行しました。五秒でネットワーク経路全体を入れ替えたからです。
- モバイルデータではサイトが開きます。 ウェブサイトは正常です。あなたのコンピューターとプロバイダーのリゾルバの間の何かが間違った答えを返しており、以下の手順で直ります。
- そちらでもサイトが開けません。 毎日使う別のサイトをもう一つ試してください。そちらが開くなら、問題はおそらくウェブサイト側にあります。ドメイン登録の期限切れ、DNS 変更の失敗、電源を抜いたホスティング事業者などです。それはあなたの椅子からは直せません。
- どこでもすべてが開けません。 それはもうこのエラーではなく、接続そのものの問題です。別の問題には、別のガイドが必要です。
スマートフォンよりも広い範囲で同じ答えが欲しい場合は、DNS 伝播チェッカー が複数の国のパブリックリゾルバに問い合わせ、サイトのアドレスについて一致しているかどうかを示します。世界中のリゾルバが NXDOMAIN を返すなら、サイトには本物の DNS の問題があります。すべてが気持ちよくアドレスを返すなら、間違った答えはあなたの近くで作られています。
このエラーが実際に意味すること
DNS とは、example.com のような名前を、ブラウザが実際に接続する数値アドレスに変える検索のことです。このエラーは、検索が偶然空で返ってきたという意味ではありません。リゾルバが、その名前は存在しないと積極的に報告したという意味です。それが NXDOMAIN の意味であり、NXDOMAIN の意味 についての当社の解説では、その応答自体を詳しく扱っています。
人がつまずくのはここです。「存在しません」は、削除されたサイトについての正しい答えである場合もあれば、あなた自身の機器が以前にキャッシュして繰り返し続けている古い答えである場合もあります。どちらの場合でも、エラーメッセージはまったく同じに見えます。だからこそ、以下の修正はブラウザ自体ではなく、キャッシュとリゾルバを狙います。このために Chrome を再インストールするのは、一人の連絡先の番号が変わったから新しいスマートフォンを買うようなものです。
症状と原因を対応させる
| 症状 | 可能性の高い原因 | 簡単なテスト |
|---|---|---|
| 一つのサイトだけ開けず、他はすべて動作します | 古いキャッシュ、または hosts ファイルの誤ったエントリ | モバイルデータでスマートフォンからサイトを開きます |
| すべてのサイトが同じエラーで開けません | リゾルバ、またはルーターの DNS がダウンしています | コンピューターのリゾルバアドレスを変更します |
| VPN 接続時のみ開けません | VPN の DNS が壊れているか、ブロックされています | VPN を切断してページを再読み込みします |
| 昨日は動作したのに、サイト移行後に壊れました | 古い答えがまだ近くにキャッシュされています | 伝播チェッカーでサイトを確認します |
| 直した翌日にまた壊れます | ルーターが死んだリゾルバを配っています | ルーターとコンピューターの DNS 設定を比べます |
修正方法、私が実際に試す順番で
DNS キャッシュをフラッシュする
Windows では、コマンドプロンプトを開いて
ipconfig /flushdnsを実行してください。Mac では、ターミナルでsudo dscacheutil -flushcacheです。これにより、コンピューターに保存された答えが、間違ったものも含めて破棄され、新しい検索が強制されます。十秒で終わり、何の害もありません。だからこそ、いつも私の最初の一手です。パブリックリゾルバに切り替える
フラッシュで何も変わらなかった場合、間違った答えは上流から来ています。コンピューターの DNS サーバーを、
1.1.1.1や8.8.8.8のようなパブリックリゾルバに変更して、再読み込みしてください。サイトが息を吹き返したなら、嘘をついていたのはプロバイダーのリゾルバです。その設定のままにするか、プロバイダーが落ち着くまで保持してください。hosts ファイルを確認する
hosts ファイルは DNS を完全に上書きします。その中の一行がサイトの名前を古いアドレスに対応付けている場合、それは古いソフトウェアが残したもの、過去の実験の名残、あるいは何年も前に貼り付けて忘れたものかもしれませんが、コンピューターはそもそも問い合わせないため、リゾルバを変えても意味がありません。ファイルを開き、サイトの名前を探し、見つかった行は削除するかコメントアウトしてください。
ルーターを再起動する、一度だけ
ルーターも答えをキャッシュしますし、安いものはそれが下手です。一度の再起動でそのキャッシュが消え、接続が再交渉されます。一度だけと言うのは、四回続けて再起動しても一度の再起動とまったく同じだからです。電話の相手はよくそう告白します。
VPN を切り、もう一度試す
VPN は DNS クエリを自社のサーバーへ転送します。それらがダウンしている、設定を誤っている、あるいは接続が生きているのにトンネルが半分死んでいる場合、すべてが接続されているように見えても名前の検索は失敗します。完全に切断し、一時停止ではなく切断して、ページを再読み込みしてください。
皆が効くと誓うのに、めったに効かない二つのこと
ブラウザの再インストールです。ブラウザにも小さな独自キャッシュがあるのは確かですが、このエラーはシステムレベルの検索が失敗して発生するもので、新しいインストールは同じリゾルバ、同じ hosts ファイル、同じルーターを引き継ぎます。ブックマークを復元するために二十分を費やし、結局は恐竜の前に戻ることになります。
もう一つは、呪文のように繰り返される「48 時間待つ」ことです。待つことで本当に直る場面は一つだけです。サイトが本当に最近 DNS を変更し、古い答えが世界中のキャッシュからまだ抜けている最中である場合です。「このサイトにアクセスできません」の診断 についての当社のガイドは、その待ち時間と、ご自身で直せる障害を切り分けています。しかし、今日スマートフォンでサイトが開くなら、待ってもあなたのネットワークは直りません。直るのは上記の五つの手順で、たいてい十分以内です。
一つのブラウザでだけエラーが出るとき
何時間も人を誤った方向へ導くバリエーションがこれです。同じマシン、同じネットワーク、同じ瞬間に、サイトはChromeでは失敗するのに、別のブラウザでは問題なく読み込める。その事実ひとつで、ルーター、プロバイダー、ウェブサイトが一挙に容疑者から外れます。違いはブラウザ自体の内部にあります。
最近のブラウザは、システムを信頼する代わりに自前で検索を行うことが増えています。Chromeには Secure DNS という設定があり、コンピュータに設定されたリゾルバを迂回して、ブラウザが選んだリゾルバへ暗号化された接続でクエリを送ることができます。Firefoxにも独自のデフォルトを持つ似た機能があります。ブラウザが選んだその経路が壊れている場合、あるいはシステムの他の部分がすでに忘れた古い答えを保持しているだけの場合、このエラーはちょうど一つのプログラムでだけ現れ、他のすべては動作します。ブラウザのセキュアDNSをシステムリゾルバに設定するか、オフにすることが、この件に決着をつける二分間のテストです。
逆の分かれ方も同じくらい有益です。すべてのブラウザが失敗するのにコマンドラインの検索は成功する場合、ブラウザ同士が共有しているもの、つまりシステムリゾルバの設定、hostsファイル、ネットワーク自体が疑わしくなります。一つのプログラム対すべてのプログラムという対比は、どの層が悪い答えを保持しているかを特定する、私の知る最速の方法です。だからこそ、こうした相談で私の最初の質問が設定についてになることは決してありません。「どこでも失敗しますか、それともここでだけですか」です。
推測する代わりに、リゾルバを一つずつ尋問することもできます。nslookup example.com 1.1.1.1 のようなコマンドは、デフォルトを無視して特定のリゾルバに答えを尋ねます。いつものリゾルバに尋ね、次に公開リゾルバに尋ねてください。公開リゾルバがアドレスを返すのに、あなたのリゾルバが NXDOMAIN を返すなら、嘘つきを現行犯で捕まえたことになります。そして、残りの作業がフラッシュか、待つことか、設定をきっぱり変えることかも分かります。
同じ障害は、場所によって違う衣装を着ています。そのため助けを探す人は混乱します。AndroidのChromeはこれを ERR_NAME_NOT_RESOLVED と呼び、Firefoxはサーバーが見つからなかったと言い、Safariはサーバーが見つからないと報告します。言葉は違っても、その下にある出来事は同じです。名前は存在しないという答えが返ってきた検索です。そうしたメッセージのいずれかについてのガイドの修正方法が、実はキャッシュやリゾルバに関するものなら、あなたのケースにも当てはまります。エラーの名前を読み替え、方法はそのまま使ってください。
本当にあなたの問題ではない場合
こうした電話で私の答えが「相手側の問題で、あなたの問題ではありません」になることもあります。登録が期限切れになったドメインはネームサーバーを取り上げられ、地球上のすべてのリゾルバが NXDOMAIN と答え始めます。まったく同じエラーですが、今度は真実を語っています。移行の真っ最中にあるサイトの所有者が壊れたレコードを公開し、名前を全員に対して一度に落としてしまうこともあります。
決め手は一貫性です。あなたのスマートフォンも開けず、隣人のスマートフォンも開けず、Windows の DNS_PROBE_FINISHED エラーを修正する ための当社のガイドにあるローカルな工夫も何も変えられないのに、世界中のパブリックリゾルバはアドレスが存在しないことで一致しています。その時点では、設定のタブを閉じてください。あなたの側で直すものは何も残っていません。サイトは、所有者がレコードを直せば戻りますし、直さなければ戻りません。
ドメインの公開DNSアドレスを調べたい場合は、Domain IP Lookupツールをお試しください。
よくある質問
NXDOMAIN 応答です。その答えが正しい場合もあります。ドメインの期限が切れたり、削除されたりした場合です。同じくらい多いのは、サイト自体は元気で他のネットワークからは届くのに、キャッシュ、ルーター、プロバイダーのリゾルバ、VPN が古い答えや壊れた答えを作っている場合です。関連記事
4つの結果と、それぞれ異なる次の対応
ERR_NAME_NOT_RESOLVEDとは?意味と対処法
ChromeのERR_NAME_NOT_RESOLVEDの意味と、パソコン、Android、iPhoneでの対処法を、症状別の表とDNSの確認手順で解説します。
順に確認する4つの層
DNS
名前を解決
トランスポート
TCPが接続
TLS
証明書を検証
アプリケーション
HTTPが応答
「このサイトにアクセスできません」の切り分け:レイヤー別トリアージ
「このサイトにアクセスできません」を段階的に解決。エラーの種類を読み、dig、curl、opensslでDNS、経路、TCP、TLS、HTTPの順に確認します。
4つの結果と、それぞれ異なる次の対応
WindowsのDNS_PROBE_FINISHED_NXDOMAINを修正する:問題のある層を見つける
WindowsのChromeで出るDNS_PROBE_FINISHED_NXDOMAINを、ブラウザー、Windows、ルーター、ISPの順に切り分け、具体的なコマンドで修正する方法を解説します。