毎日WordPressを使用し作業している方なら、「死の白いスクリーン」または「データベース接続の確立中にエラーが発生」など、本CMS独特のエラーが親しいでしょう。しかし、インターネット接続及びDNSに結びついているもう一つの種類のよく発生するエラーのグループがあります。Google Chromeをご利用の方はWebページにアクセスしようとするときによく発生するエラーの一つは、DNS_PROBE_FINISHED_NXDOMAINです。突然、ご自分のウェブサイトだけでなく、インターネット全体がブラウジングできなくなることがあり、イライラすることですね。😫
割と対策しやすいエラーである為、ご心配は必要ありません。対策方法については、下記の推奨事項をご確認ください。Firefox、Edgeなどの他のブラウザでもできる手順です。
DNS_PROBE_FINISHED_NXDOMAINとは?
DNS_PROBE_FINISHED_NXDOMAINの最も一般的な原因は、誤ったコンフィギュレーション及びDNS異常です。DNSとはDomain Name System(ドメイン名システム)の略で、ドメイン名を実際のWebサーバーと合わせることによりインターネット上のトラフィックを応援するものです。例えば、kinsta.comのようなドメイン名など人間にとって分かりやすいリクエストを216.3.128.12などのコンピュータにとって分かりやすいサーバーのIPアドレスに変換します。
ユーザーがWebブラウザにURLを入力すると、DNSがそのURLをサーバーのIPアドレスに合わせます。これはDNSの名前解決といい、サーバーの実際のIPアドレスを把握するためにさまざまなネームサーバーに問い合わせるDNS再帰のことです。DNSがドメイン名またはアドレスの解決に失敗すると、DNS_PROBE_FINISHED_NXDOMAINエラーが発生することがあります。NXDOMAINとは、Non-Existent Domain(存在しないドメイン)の略です。DNSの概要についてはこちらをご参照ください。
ご利用のブラウザによりエラーメッセージがぞれぞれ異なります。
Google Chrome
Google Chromeでは、このエラーの名前はDNS_PROBE_FINISHED_NXDOMAIN(下図参照)で、「サーバーのDNSアドレスが見つかりませんでした。」と表示されます。
「このサイトにアクセスできません。」

Mozilla Firefox
Mozilla Firefoxでは、単に「サーバーが見つかりませんでした。」(下図参照)と表示されます。
domain.comという名前のサーバーが見つかりませんでした。

Microsoft Edge
In Microsoft Edgeでは単に「このページを表示できません。」(下図参照)と表示されます。あまり役に立たないメッセージですね。
Webアドレスが正しいことを確認してください:domain.com.

DNS_PROBE_FINISHED_NXDOMAINの解決方法について
次に本エラーが出たときの対策をご紹介します。(よく発生する原因の順で述べます。)
- IPアドレスの解放と更新
- DNSクライアントサービスを再起動する
- DNSサーバーを変更する
- Chromeのフラグをリセットする
- VPNとアンチウィルスを一時的に無効にする
- ローカルhostsファイルを確認する
- ドメインのDNSをチェックする
- コンピュータを再起動する
1. IPアドレスの解放と更新
通常、クライアント側のDNS異常であるため、まずコンピュータのIPアドレスを解放し更新してみてください。これには、ブラウザのキャッシュをクリアすることに近い手順であるローカルDNSキャッシュのフラッシュも含まれます。
Windows
Windowsでは、単にWindowsのロゴキーとRキーを押し、Command Promptを開き、 「cmd」と入力してエンターキーを押します。

ipconfig /release
を入力し、エンターを押すことにより、既存のIPアドレスが解放されます。

次に ipconfig /flushdns
を入力しエンターを押すことにより、 ローカルDNSキャッシュがフラッシュされます。成功した場合は、「Successfully flushed the DNS resolver Cache」(DNS解決キャッシュが正常にフラッシュされました」と表示されます。

次に ipconfig /renew
を入力しエンターを押すことにより、IPアドレスが更新されます。

次のコマンドを使用して、IP設定とWinsockカタログをリセットしてみることもできます:netsh int ip set dns
と netsh winsock reset
DNSをフラッシュし更新するもう1つの方法は、ネットワークアダプタを無効にして再度有効にすることです。
Mac
MacでIPアドレスを解放し更新するには、「システム環境設定…」にアクセスします。

ネットワークアイコンをクリックし、「詳細…」をクリックします。

既にアクセスしていない場合は、「TCP/IP」タブにアクセスします。 次に、 「Renew DHCP」(DHCPを更新)リースボタンをクリックします。
上記のWindowsのように、Macをご利用の方もローカルDNSキャッシュをクリアすることができます。ただし、手順が少し異なります。「ユーティリティー」にアクセスし、「ターミナル」をクリックします。

次のコマンドを入力します:
dscacheutil -flushcache

注:Macには成功した場合のメッセージはありません。
2. DNSクライアントサービスを再起動する
Windowsをご利用の方は、DNSドメイン名を解決しキャッシュするDNSクライアントサービスを再起動してみることもできます。
単にWindowsのロゴキーとRキーを押し、Command Promptを開き、 「services.msc」と入力してエンターキーを押します。

「DNS Client」(DNSクライエント)までスクロールダウンし、右クリックし、「Restart」(再起動)を選択します。

再起動の選択肢がグレー表示されている場合(上図参照)、Command Promptを使用して再起動することもできます。
WindowsのロゴキーとRキーを押し、Command Promptを開きます。次に「cmd」と入力し、エンターを押します。

次のコマンドを入力します:
net stop dnscache net start dnscache
ご利用のWindowsのバージョンによっては、次のようなエラーメッセージが表示されることがあります:
要求した一時停止、続行、または停止は、このサービスには無効です。
この場合は、CMDをネットワークサービスとして実行してコマンドを発行する必要があります。このエラーが発生している場合は、最初に以下の解決方法を実施してみてください。
3. DNSサーバーを変更する
次に、DNSサーバーを変更してみましょう。DNSサーバーはISPにより自動的に割り当てられますが、これらを一時的にGoogle及びCloudflareなどのパブリックなDNSサーバーに変更してみることができます。
- より安心できるため、GoogleのパブリックなDNS(8.8.8.8 と8.8.4.4)を長期間使用する方もいます。
- Cloudflareは、安全かつ高速な無料のDNS(1.1.1.1と1.0.0.1)をリリーズしたばかりです。この例でCloudflareのDNSを使用しますが、GoogleのDNSを使用したい方は同じ手順に従い、DNSサーバーアドレスをGoogleのアドレスに置き換えてください。
ヒント:既に無料のDNSサーバーを使用していて本エラーが発生した場合は、そのDNSサーバーを削除し、ISPのDNSサーバーに設定を直すことで異常が解決されることがあります。GoogleとCloudflareは100%完璧ではありません。設定を元に戻すことにより、エラーが解決することがあります。
Windows
Windowsでは、単にWindowsのロゴキーとRキーを押し、Command Promptを開き、 「control panel」と入力してエンターキーを押します。

「ネットワークとインターネット」、次に「ネットワークと共有センター」をクリックします。 左側にある「アダプタの設定の変更」をクリックします。

現在の接続(接続方法によってローカルエリア接続またはワイヤレスネットワーク接続である場合もある)を右クリックし、「プロパティ」をクリックします。

「インターネットプロトコルバージョン4(ご希望の場合はバージョン6)」を選択し、「プロパティ」を選択クリックします。

設定を元に戻す必要がある場合に備えて、既存の設定を書き留めます。 「次のDNSサーバーのアドレスを使う」をクリックします。 次のように入力するか、既存のものを次のものに置き換えます:
IPv4: 1.1.1.1
と 1.0.0.1
IPv6: 2606:4700:4700::1111
と 2606:4700:4700::1001

「OK」をクリックします。以上で設定は終了です。ブラウザを再起動してください。
Mac
MacでDNSサーバーを変更するには、「システム環境設定…」にアクセスします。

ネットワークアイコンをクリックし、「詳細…」をクリックします。

「DNS」タブにクリックします。

次にCloudflareのDNSサーバーのアドレスを追加します。
IPv4: 1.1.1.1
と 1.0.0.1
IPv6: 2606:4700:4700::1111
と 2606:4700:4700::1001
4. Chromeのフラグをリセットする
Chrome の設定または実験的な機能が誤って変更されたりすることがあります。デフォルト設定に戻すのに、ブラウザにchrome://flags
と入力し「Reset all to default」(すべてをデフォルト設定にリセットする)ボタンをクリックします。

次にブラウザを再起動してください。
5. VPNとアンチウィルスを一時的に無効にする
VPN及びアンチウィルスソフトウェアがDNSサーバーなどのネットワーク設定との互換性がないため、その設定を上書きしてしまうことがあります。VPN及びアンチウィルスソフトウェアをご利用の方は、それらを一時的に無効にして(閉じて)みて、それでChromeのDNS_PROBE_FINISHED_NXDOMAINエラーが解決されるかをご確認ください。
6. ローカルhostsファイルを確認する
すべてのコンピュータにはローカルhostsファイルというものがあります。これは、特定のIPアドレスにマッピングされた手動のDNSエントリを含むファイルです。 通常、ドメインのホスティング会社を切り替える前にDNSをプレビューしたいときにのみこのファイルを編集します。しかし、さまざまな理由で変わってしまう場合があります。したがって、上記の手順のどれも解決にならなかった場合には、アクセスしようとしているウェブサイトがリストの載っていないかを確認するために、このローカルhostsファイルをダブルチェックする価値があります。
Windows
hostsファイルを開くには、追加のアクセスが必要です。したがって、まずテキストエディタを管理者として開きます。スタートメニューをクリックし、テキストエディタを検索し、右クリックし、「管理者として実行」を選択します。Notepad、Notepad++、AtomなどのどのテキストエディタでもOKです。以下の例ではSublimeを使用しています。

開いたテキストエディタの「ファイル」→「開く」でをクリックし、次のロケーションにブラウジングします:
C:\Windows\System32\drivers\etc\
hostsファイルにクリックし、開きます。

ダブルチェックし、アクセスしようとしているウェブサイトがリストに載っていないことを確認してください。載っている場合は、削除してください。
Mac
Macでhostsファイルを確認するには、Gas Maskをインストロールした方がよいでしょう。hostsファイルマネージャとhostsファイルエディタとして、又はhostsファイル間の切り替えに使用できる無料のアプリケーションです。素早くて簡単に!Gas Maskをインストールしたくない場合は、以下の手順に従い手動でhostsファイルを編集できます。
ユーティリティーにアクセスし、「ターミナル」をクリックします。

次のコマンドを入力し、エンターキーを押します(管理者パスワードも入力する必要があります):
sudo nano /private/etc/hosts

ダブルチェックし、アクセスしようとしているウェブサイトがリストに載っていないことを確認してください。載っている場合は、削除してください。
7. ドメインのDNSをチェックする
hostsファイルを確認してもDNS_PROBE_FINISHED_NXDOMAINエラーが一つのドメインのみで発生している場合は、ドメイン名自体のDNS設定を確認する必要があります。Kinstaのお客様なら、ドメインまたはDNSをKinstaを指すように変える方法についての詳細な記事をご用意しています。新しいホスティング会社にウェブサイトを移行したばかりの場合には、DNSがあなたのコンピュータに誤ってキャッシュされている可能性があります。その場合は、上記の手順2で解決するはずです。
8. コンピュータを再起動する
面倒くさい作業ではありますが、言及する価値があります。😬上記のいずれも解決にならない場合は、コンピュータとルータを再起動してみてください。皆さんも多分、数多くのタブ及びアプリケーションを開いていると思いますので、再起動を最後の手順にしました。デバイスを再起動すると、一時キャッシュの多くがクリアされます。
まとめ
DNS_PROBE_FINISHED_NXDOMAINエラーは、大変辛いですが、解決しやすいです。DNSキャッシュをフラッシュしたり、IPを更新したり、DNSサーバーを変えたりすることにより、あっという間に直ります。見逃したことはありますか。是非コメントを書いて教えてください。