はじめに
はじめまして、ラクスでインフラを担当しているftkenjです。 WEBページにアクセスしようとするとたまに発生する「DNSエラー」について、よくある原因とその解決方法を紹介します。
「DNS」について
DNS(Domain Name System)とは、IPアドレスとドメインを紐づけるサーバのことです。 具体的には、WEBサイトにアクセスするときのドメイン名と、WEBサーバやメールサーバにアクセスする番号となるIPアドレスを紐づける役割を担っています。
<補足>
スマホやPCなど、ネットワーク上の機器に割り当てられるインターネット上の住所のようなもの。 インターネットでのWEBページの閲覧、メールの送受信で相手を識別する番号となります。 IPアドレスにはIPv4とIPv6がありますが、こちらの説明については割愛させていただきます。
・ドメイン
こちらもインターネット上の住所のようなもの。 IPアドレスと紐づいており、数字のみのIPアドレスを人間が認識しやすくしたものです。 こちらについても詳しい説明は割愛させていただきます。
「DNSエラー」について
DNSエラーとは、IPアドレスとドメイン名の紐づけがうまくされていない状態を指します。 本来であれば、目的のサイトにアクセスするためドメインとIPアドレスが紐づいていることでブラウザからのリクエストにWEBサーバがレスポンスを返しますが、紐づけがうまくできていない、紐づいていてもなんらかの問題で名前解決ができないと「DNSエラー」となります。
DNSエラーとなる主な原因
1.インターネットに繋がっていない
使用しているPCがインターネットに接続されていないとDNSと通信できないため、「DNSエラー」が表示されWEBサイトへアクセスできません。 (そもそもインターネットに接続できていないのでサーバまで通信が到達できませんが...)
2.ネットワークの構成が共有接続になっている
Windowsにて無線LANのアクセスポイントモードを共有接続していたり、無線LANで共有接続をしているときにDNSエラーが発生する場合があります。 どちらの場合も、ホストに設置情報を伝えるクライアントサーバ(DHCPサーバ)が自動でIPアドレスの割り当てに失敗していることがエラーの原因と考えられます。
3.一時的なアクセスの不具合
DNSにアクセスが集中していると、一時的にですがDNSエラーが発生する場合があります。 アクセスが集中した場合、応答しない相手先に対して一定時間すると切断する仕組みになっています。 少し時間を空け、再度アクセスしたら問題なくつながったという場合は、このケースが多いです。 一時的にアクセスが集中したことが原因なため、解消されればその後は問題なくインターネットを利用することができます。
4.DNSサーバの不具合
DNSサーバにて以下のような事象が発生した場合、名前解決ができないためDNSエラーとなります。
過剰なアクセス集中
サーバがDDoS攻撃を受け高負荷
ハード故障等によるサーバダウン
この場合、時間をおいても解消されない可能性が高いです。 解消するには、他のDNSを使用するように設定変更することが有効と考えられます。
5.WEBサイトの閉鎖
アクセスしようとしているWEBサイトがすでに閉鎖してしまっている可能性も考えられます。
解決方法
1.ネットの接続状況の確認
まずは使用しているPCがインターネットに接続されているかの確認です。
有線でつないでいる場合はLANポートに接続されているか、接続されていても"ネットワークと共有センター"にてインターネットに繋がっていないかを確認できます。
無線LANを使用している場合は、無線ルータで問題が発生している可能性があるため一度電源を切って再起動するのがよいです。
どちらも問題が解決できない場合は、ネットワーク診断などでトラブルシューティングしましょう。
* Windows10
スタートメニュー ⇒ ネットワークとインターネット ⇒ 「ネットワークのトラブルシューティングツール」選択し実行
ツールが起動して自動実行されるため待ち
ツールの画面右上に「完了」か「再診断」が表示されたら完了となります。 「再診断」となった場合は、対処方法を確認してください。
* Mac
もし、wi-fiに問題が検出されたら、メニューバーのwi-fiアイコンに「wi-fiに関する勧告」が表示されます。 これに推奨される解決策が提示されますが、「ワイヤレス診断(macOS Sierra以降のみ)」を使用すればさらに詳細な分析が可能です。
wi-fiに接続(Appを開いている場合はすべて終了してから)
「option」キーを押しながら、wi-fiステータスメニューの「ワイヤレス診断を開く」を選択
画面の案内に従い、管理者の名前のパスワードを入力
その後ワイヤレス環境の分析が開始
2.ネットワーク構成の変更
PCのネットワーク設定からIPv6プロトコルを無効にした状態で再起動を行い、ブラウザのプロパティにある優先DNSサーバを「8.8.8.8」、代替DNSサーバを「8.8.4.4」(どちらもGoogle Public DNS)に設定してエラーが解消されるか確認してください。
3.パブリックDNSの利用
そもそもパブリックDNSとは、無料で安心して使用できる公共DNSサーバとなります。プロバイダーのDNSよりも高速な通信速度を実現することも可能です。
パブリックDNSには以下があります。 ※括弧内は特徴
DNSサーバのIPアドレスは「8.8.8.8」と「8.8.4.4」です。
GoogleDNSの特徴は「安全性の高さ」と「速度」で、それぞれ極端に性能が高いというわけではありませんが、運営がGoogleなので信頼性も高く初めてパブリックDNSを利用したい方にとってはおすすめです。
・Cloudflare DNS (速度)
レスポンス速度が優れているためゲームをするという方にはおすすめです。
DNSサーバのIPアドレスは「1.1.1.1」と「1.0.0.1」です。
Cloudflareの特徴は、上記の通りレスポンス速度の速さです。DNSperfの公表しているデータによればGoogleDNSのレスポンス速度が22.06ms、CloudflareDNSのレスポンス速度が14.77msとなっています。
・quad9 (安全性)
DNSサーバのIPアドレスは「9.9.9.9」と「149.112.112.112」です。
quad9の特徴は、X-Force脅威インテリジェンスを利用した安全性の高さで、今回の3つのDNS中でも一番の安全性が高いと思われます。ですが、変わりにレスポンス速度が遅いため、安全性重視の方におすすめとなります。
今回は安全性と速度のあるGoogleDNSの設定方法についてWindows10とMacのそれぞれを紹介します。
●Windows10設定方法
スタートボタン ⇒ 設定 ⇒ ネットワークとインターネット
ネットワーク設定の変更から「アダプターのオプションを変更する」を選択
インターネット接続に使用しているアイコンを右クリックし、メニューから「プロパティ」を選択
プロパティ画面から「インターネットプロトコルv4(TCP/IPv4)」を選択し、「プロパティ」を押す
「全般」タブの「次のDNSサーバーのアドレスを使う」にチェックを入れてそれぞれに以下を入力し「OK」を押します
優先DNSサーバー | 8.8.8.8 |
---|---|
代替DNSサーバー | 8.8.4.4 |
Appleマークから「システム環境設定」を開き、「ネットワーク」アイコンを選択
「Ethernet」や「wi-fi」などの、インターネットの接続に使用しているインターフェイスを選択し「詳細」ボタンを押す
優先DNSサーバー | 8.8.8.8 |
---|---|
代替DNSサーバー | 8.8.4.4 |
※もしすでにIPアドレスが設定されている場合はマイナスボタンで削除
4.サイト管理者の対応を待つ
WEBサイト自体の不具合の場合、サイト管理者が対応するまで待つしかありません。 またWEBサイトの乗っているサーバ側の不具合の可能性もあるため、すぐにアクセスできるようになるわけではない点はご注意ください。
最後に
いかがでしたでしょうか。 現実的な話でいうとDNSエラーでよくあるのはアクセス集中やそれに伴うDNSサーバの高負荷/ダウンになるのでは、と思います。 とはいえ、すぐにそちらを疑うのではなく、まずはローカルPCの設定を確認してそれでも解消されないようであればDNSサーバをパブリックDNSに切り替えてみるというのを試してみるのがよいのではないでしょうか。 また、今回は紹介していませんがIPv6が現れ始めており、一部プロバイダーでは対応を始めているところもあります。 ですが、プロバイダーが対応していてもWEBサイトやメールを提供するサーバ側がIPv6に対応していなければ通信自体成立しないため注意は必要です。
参考サイト
DNSエラーが起こる原因と解決方法5つ|パブリックDNSの設定方法 | テックマガジン from FEnetインフラ
DNSエラー?DNSサーバーに問題がある?接続できないときの原因と解決方法|ferret
DNSサーバーの仕組、よく出るエラーの原因究明・解消方法をご紹介 - Digital Shift Times(デジタル シフト タイムズ) その変革に勇気と希望を
エンジニア中途採用サイト
ラクスでは、エンジニア・デザイナーの中途採用を積極的に行っております!
ご興味ありましたら是非ご確認をお願いします。
https://career-recruit.rakus.co.jp/career_engineer/カジュアル面談お申込みフォーム
どの職種に応募すれば良いかわからないという方は、カジュアル面談も随時行っております。
以下フォームよりお申込みください。
rakus.hubspotpagebuilder.comラクスDevelopers登録フォーム
https://career-recruit.rakus.co.jp/career_engineer/form_rakusdev/イベント情報
会社の雰囲気を知りたい方は、毎週開催しているイベントにご参加ください!
◆TECH PLAY
techplay.jp
◆connpass
rakus.connpass.com