DNS over HTTPS(DoH)とDNS over TLS(DoT)を完全解説

自分がどのサイトにアクセスしようとしているか、DNSの問い合わせの段階から隠すことができます。

従来のDNS検索はなぜ見られてしまうのか

一般的なDNS問い合わせは暗号化されていない平文(UDP53番ポート)でやり取りされるため、途中でどのサイトのアドレスを尋ねているかを見られてしまう可能性があります。Webサイトにアクセスする際、ブラウザはまずドメイン名をIPアドレスに変換するためDNSサーバーに問い合わせを送ります。従来のDNSはこの問い合わせと応答を暗号化せずにやり取りするため、同じネットワーク上の別の端末やISPがどのドメインを検索しているか容易に覗き見たり、悪くすれば途中で別のIPアドレスに偽装した応答を送ったりすることも理論上可能です。

DoH(DNS over HTTPS)とは

DoHはDNSの問い合わせ内容を、一般的なWebトラフィックと同じHTTPS(443番ポート)のチャネルに乗せて暗号化して送る方式です。Webサイトへのアクセスにも使われる443番ポートをそのまま使うため、見た目には一般のHTTPSトラフィックと区別しにくいのが特徴です。Chrome、Firefox、Edgeなど主要ブラウザが自体設定でDoHをサポートしており、Cloudflare(1.1.1.1)やGoogle(8.8.8.8)のような公開DNS事業者がDoHエンドポイントを提供しています。

DoT(DNS over TLS)とは

DoTはDoHと同様にTLS暗号化を適用しますが、一般のHTTPSと同じ443番ポートを使わず、DNS専用に指定された853番ポートを使用します。このためネットワーク管理者がDoTのトラフィックだけを別途識別してポリシーを適用しやすいという特徴があります。Androidの「プライベートDNS」設定が代表的なDoT対応の例です。

DoHとDoTの主な違い

両方式ともDNSの問い合わせ内容を暗号化し、盗聴や改ざんを防ぐという目的は同じです。違いは伝送方式にあり、DoHは一般のWebトラフィックに混ざるためネットワーク管理者がDNSトラフィックだけを分けてフィルタリングしたり遮断したりしにくいのに対し、DoTは別のポートを使うため企業や学校のネットワークでポリシーとして許可・遮断しやすくなります。このため企業のIT部門はDoTを、個人のプライバシーを重視するユーザーはDoHを好む傾向があります。

暗号化DNSのメリットと限界

DoH・DoTは「どのドメインを検索したか」を第三者から隠すのには効果的ですが、その後実際にそのサーバーへ接続する際にやり取りされるIPアドレスやSNI(サーバー名表示)情報まで完全に隠してくれるわけではありません。また学校や会社、ルーター自体が特定のサイトを遮断するポリシーを持っている場合、DoHを使う端末はこの遮断を回避してしまうことがあり、ネットワーク管理者にとってはむしろ悩みの種になることもあります。

設定方法

Chromeでは設定 > プライバシーとセキュリティ > セキュリティのメニューで「セキュアDNSを使用する」をオンにし、CloudflareやGoogleなどの事業者を選択できます。Firefoxではネットワーク設定で「DNS over HTTPS」を有効にします。Androidでは設定 > ネットワーク > プライベートDNSのメニューで、DoTに対応したサーバーのホスト名(例:dns.google)を入力すると、端末全体のDNS検索に暗号化が適用されます。

DNSサーバーを直接変更したいなら

暗号化なしで公開DNSサーバーだけを変更する方法が気になるなら、そちらも確認してみると良いでしょう。

DNSレコードの種類が気になるなら

A、CNAME、MXといったDNSレコードの種類そのものが気になるなら、合わせて確認してみましょう。

よくある質問

DoHをオンにするとインターネットが遅くなりますか?

暗号化・復号化の過程が加わりますが、現代の端末の処理速度では体感できるほどの遅延はほとんどありません。ただし利用しているDoHサーバーが物理的に遠い場所にある場合、最初の接続時に多少の遅延が生じることがあります。

会社や学校のネットワークでDoHを使うと問題になりますか?

会社や学校が特定のサイトをDNS遮断方式で制限している場合、DoHを使用する端末はこの遮断を回避することになる場合があります。このため一部の組織は自社のネットワークでDoHのトラフィックを別途遮断・制限するポリシーを適用することもあります。