要約:従来のDNSはすべての「example.comのIPアドレスは?」というクエリを、ネットワーク上の誰でも読み書きできるプレーンテキストのUDPで送信します。DoHはこれらのクエリをHTTPSでラップするため、ネットワーク上の監視者はドメイン名を見ることができず、偽の応答を挿入することもできません。これにより3つの正当な問題(ISPによるDNS盗聴、カフェでのDNSインジェクション、一部の国家レベルのDNS検閲)が解消されますが、2つの新たな問題が生まれます(ペアレンタルコントロールとエンタープライズセキュリティが機能しなくなる点と、選択したDoHプロバイダーにアクセスしたすべてのドメインが把握される点)。DoHは「よりプライベート」でも「あまりプライベートでない」わけでもありません——プライバシーの形が変わるだけであり、どのトレードオフが自分の脅威モデルに合うかが問題です。
DoHの実態(そして何を置き換えるのか)
従来のDNSは、今もなお現役の最古のプロトコルの一つです。1983年に誕生し、ユビキタスなHTTPSより前に存在し、「ネットワーク上の全員はおおむね信頼できる」という前提が合理的だった時代に設計されました。仕組みはこうです:デバイスは設定されたDNSリゾルバー(通常はISPのもの、または変更済みなら8.8.8.8 / 1.1.1.1)のポート53にUDPパケットを送信します。パケット本文はクリアテキストで「example.comのAレコードをください」と伝えます。リゾルバーはIPアドレスをクリアテキストで返します。注目すべき3つの特性があります:
- ネットワーク経路上の誰でもクエリを読める。ISP、カフェのWiFi、ローカルネットワークでtcpdumpを実行している人——あなたが調べたすべてのドメイン名が丸見えです。
- ネットワーク経路上の誰でも応答を偽造できる。正規のリゾルバーより先にデバイスに偽の応答が届けば、リダイレクトされてしまいます。これは一部のキャプティブポータルや検閲制度が利用している手法です。
- 設定済みのリゾルバーはすべてのクエリを見ている。DNSを運営している者は、あなたがアクセスしたすべてのドメインを時系列で把握しています。
DoH(RFC 8484、2018年)は#1と#2を変えます:クエリはリゾルバーへのTLS暗号化HTTPS接続の中を通ります。経路上の監視者にはHTTPSのバイト列が見えるだけで、ドメイン名は見えません。偽造はHTTPS応答の偽造と同程度の難しさになります(リゾルバーのTLS証明書なしでは事実上不可能)。#3は変わりません——クエリはリゾルバー宛てに送られるため、リゾルバーには引き続き見えます。DoHは信頼の境界を移動させるだけで、取り除くわけではありません。
DoT(DNS-over-TLS、RFC 7858)は同じことを、ポート443のHTTPSに乗せるのではなく、専用のポート(853)で行います。プライバシー特性は実質的に同等ですが、運用上は異なります。DoHはブロックするためにはHTTPS全体をブロックする必要があるため、ネットワークレベルでのブロックが難しくなります(それはインターネット全体を壊すことになる)。DoTはネットワークオペレーターが選択的に強制・ブロックしやすい仕様です。DoHが普及競争に勝ったのは、主にMozillaとGoogleがブラウザにデフォルトで組み込んだからです。
DoHが確実に解決する3つの問題
1. ISPによるDNS盗聴
米国では2017年以降、ISPは明示的なオプトインなしにブラウジングデータを販売することが法的に許可されており、DNSクエリログはその収集対象の一つです。他の国では法制度は異なりますが、義務的なデータ保存がDNSを名指しでカバーしている国もあります。いずれにせよ、ISPのリゾルバーを使っている場合、ISPはタイムスタンプ付きであなたが訪問したサイトの完全なログを持っています。
ISP以外のリゾルバーへのDoH(Cloudflare 1.1.1.1、Google 8.8.8.8、Quad9 9.9.9.9、NextDNS、AdGuard DNS、MullvadのDNS、VPN内のリゾルバー)は、ISPの観点からこれを完全に遮断します。ISPは引き続き特定のIPアドレスへのTLS接続を見ることができ、それらのIPとTLSハンドシェイク内のSNI(後述)から、しばしばホスト名を推測できます——しかし、検索可能なクリーンなDNSログは手に入らなくなります。信頼はISPからDoHリゾルバーの運営者へと移ります。
2. カフェでのDNSインジェクション
公衆WiFiのキャプティブポータルは、DNSクエリ(とHTTPリクエスト)を傍受して、ネットワークの規約に同意するまでポータルページへリダイレクトすることで機能します。このメカニズム——DNSの傍受——は悪意あるDNSインジェクションと同じ構造を持っています。悪意あるネットワークはDNS応答を書き換えて、フィッシングページや広告インジェクションプロキシへリダイレクトできます。プレーンDNSは簡単な攻撃面を提供しますが、DoHはそれを塞ぎます。
これはDoHとVPNトンネルが重複するケースの一つです。VPNはDNSを含むすべての通信を暗号化されたバイト列でトンネリングしますが、DoH単体はDNSクエリだけをトンネリングします。敵対的なネットワークでは、どちらの対策もDNSインジェクション系の攻撃を防ぎますが、それぞれ異なるレイヤーを扱います。脅威の全体像は2026年の公衆WiFi攻撃で詳しく解説しています。
3. 一部の国家レベルのDNS検閲
いくつかの検閲制度はDNSレベルのブロッキングを実施しています:「blocked-site.comのIPアドレスは?」と問い合わせると、国家が管理するリゾルバーはNXDOMAINを返すか、「このサイトはブロックされています」ページにリダイレクトします。検閲管轄外のリゾルバーへのDoHはこの特定のメカニズムを無効化します。検閲ネットワークにはDoHリゾルバーへのHTTPSしか見えず、その中のクエリは見えないからです。
注意点:これは検閲側がエスカレートするまでしか機能しません。高度な検閲制度(中国、イラン)はDoHリゾルバーのIPを直接ブロックし、国家発行のルート証明書によるHTTPS傍受を強制するか、SNIベースのブロッキングを使用します(次のセクションを参照)。DoHは単純なDNS検閲には対抗できますが、国家レベルの本格的な検閲には対抗できません。
DoHが解決しない3つの問題
1. TLSハンドシェイクにおけるSNI漏洩
これは多くの記事が省略するポイントです。HTTPSで「example.com」に接続する際、ブラウザはTLSハンドシェイク中にホスト名をクリアテキストで送信します——具体的にはSNI(Server Name Indication)拡張でです。理由は、単一のIPがTLSターミネーションで多数のドメインを提供することが多く、暗号化セッションが始まる前にサーバーがどの証明書を提示すべきか知る必要があるからです。SNIは設計上、プレーンテキストです。
実質的な影響:DoHを使っていても、ネットワーク上の監視者はSNIを通じてあなたが接続するホスト名を見ることができます。DNS盗聴の修正は部分的なものにすぎません。対策はECH(Encrypted Client Hello)——SNIを暗号化する比較的新しいTLS拡張です。Cloudflareは2023年に自社ネットワーク上のサイトでECHを有効化し、FirefoxとChromeもサポートを追加しましたが、Cloudflare以外での普及はまだまばらです。ECHが普遍的になるまで、DoHは「誰があなたのアクセスしたサイトを見られるか」という問題の半分しか解決しません。
2. 宛先のIPアドレスによる識別
DoHとECHを使っていても、TLS接続は特定の宛先IPに向かいます。専用インフラを持つサイト(銀行、ニッチなサービス)では、宛先IPはDNSやSNIなしでもサイトのほぼ完全な識別子になります。主要CDN(Cloudflare、Fastly、AWS CloudFront)の背後にあるサイトでは、IPベースの識別は曖昧になります——数百万のサイトが少数のIPを共有するため——しかし大規模サイトは独自のインフラか特徴的なトラフィックパターンを持ち続けています。
DoHはこれを解決できません;そもそも不可能です。本当にどのサイトにアクセスしているかを知りたいネットワーク監視者は、IPからドメインへのマッピングテーブルを構築し、トラフィックの宛先を照合できます。対策はVPNトンネルであり、宛先IPの可視性をローカルネットワークからVPNプロバイダーへ移します。信頼はどこかに行き着かなければならず、DoH単体ではネットワークオーナーのもとに残ります。
3. DoHプロバイダーは以前にISPに漏れていたすべてを見ている
これはDoHのマーケティングが通常省略するトレードオフです:DoHはDNSクエリをプライベートにするのではなく、可視性をISPから選択したDoHリゾルバーへ移動させます。Cloudflare(1.1.1.1)、Google(8.8.8.8)、Quad9、NextDNS、AdGuard、その他のDoHプロバイダーは、かつてISPがそうだったように、あなたが行うすべてのクエリを見ています。厳格なログなしポリシーを公表しているところもあれば、集計のみのログを公表しているところも、集計データを「研究パートナー」に販売しているところもあります。DoHプロバイダーを取り巻く法制度は、ISPを取り巻くそれと同じくらい重要です。
Cloudflareの1.1.1.1は、ログを24時間後に破棄し、DNSデータを販売しないことを示す監査レポートを公表しています。Googleの8.8.8.8は、定めた保持ポリシーに従い無期限に(匿名化して)クエリをログに記録します。NextDNSでは、「なし」から「自分のアカウント、自分の選択」まで独自のログ保持期間を設定できます。DoHプロバイダーの選択は重要であり、問題はどの信頼関係がより納得できるか——自国法に基づくISPか、そのDoHプロバイダーの国の法に基づくDoHプロバイダーか——ということです。
DoHが正当に壊してしまう2つのこと
1. ペアレンタルコントロールとファミリーネットワークフィルタリング
多くの消費者向けペアレンタルコントロールシステムは、ルーターでDNSを検査するか、設定済みのファミリーフィルターDNSリゾルバー(OpenDNS Family Shield、Cleanbrowsing Family、NextDNSファミリープロファイル)を使って機能します。子供のデバイスがこれらのリゾルバーを使うと、アダルトコンテンツやギャンブルなどへのルックアップはNXDOMAINを返します。このシステムは、デバイスが最初からペアレンタルコントロールのDNSリゾルバーに問い合わせることを前提としています。
ブラウザレベルのDoH(Firefoxは2019年に米国ユーザー向けにデフォルトでDoHを有効化;ChromeとEdgeはDoHが設定されている場合はOSリゾルバーを使用)は、こうしたシステムを静かにバイパスします。ブラウザはCloudflareかGoogleに直接問い合わせ、ファミリーフィルターリゾルバーにはクエリが届かず、子供はアクセスしたかったサイトに到達できてしまいます。Mozillaの観点からはこれは設計通りです(「ネットワークに検閲させるべきではない」);親の観点からは事故です(「お金を払ったフィルターが急に機能しなくなった」)。
対策はありますが面倒です:ファミリー対応リゾルバー(NextDNSファミリープロファイルやOpenDNS Family Shield)へのDoHをブラウザレベルではなくOSレベルで設定し、ブラウザレベルのDoHを無効化してOSの選択にフォールスルーさせる必要があります。AppleのConfiguration ProfilesとWindowsのグループポリシーはどちらもこれをサポートしています。多くの家庭には、実際に摩擦になる程度には複雑です。
2. エンタープライズセキュリティとネットワークレベルのマルウェアブロッキング
多くの企業ネットワークはDNSベースのセキュリティを実装しています:シンクホールDNSサーバーが既知の悪意あるドメインを解決しないように(または内部の警告ページに)することで、マルウェアのコマンド&コントロール、フィッシングリダイレクト、既知エンドポイントへのデータ漏洩をブロックします。これは企業ネットワーク上のすべてのデバイスが企業のDNSを使うため、すべてのルックアップがフィルタリングされることで機能します。
ブラウザレベルのDoHはこれを静かにバイパスします。C2サーバーへのアクセスをブロックされるべき侵害されたブラウザが、CloudflareへのDoHでC2のホスト名を解決し、実際のIPを取得して直接接続できてしまいます。エンタープライズITチームは次のいずれかで対応しました:(a) ブラウザポリシーを設定してDoHを無効化する、(b) セキュリティスタックがDoHトラフィックを含むHTTPS内部を見られるようにフルTLSインスペクションを展開する、(c) ファイアウォールで既知のDoHリゾルバーIPをブロックする。どれも快適ではありません——(a)は自宅でもユーザーをプレーンDNSに留め置き、(b)はすべてのデバイスへのルートCAインストールが必要で、(c)は新しいDoHエンドポイントが登場するたびに機能しなくなります。
各プラットフォームのDoH——実際の設定は?
iOS 14以降 / iPadOS 14以降:設定 → 一般 → VPNとデバイス管理 → DNS——ただしインストール済みの構成プロファイル経由のみ。iOSは標準の設定UIにDoHを公開しておらず、.mobileconfig ファイルをインストールする必要があります(Cloudflare、Quad9、NextDNS、AdGuard、Mullvadはそれぞれ公開しています)。インストール後、デバイス上のすべてのアプリがそのリゾルバーへのDoHを使用します。これは設計通りです——iOSはDoHをアプリ単位ではなくOSレベルの設定として扱います。
Android 9以降:設定 → ネットワークとインターネット → 詳細設定 → プライベートDNS——ただしこれは実際にはDoHではなくDoTです。AndroidはDoH(HTTPS)ではなくDoT(ポート853)を使って「プライベートDNS」を実装しました。プライバシー特性は実質的に同等ですが、プロトコルは異なります。DoTリゾルバーのホスト名(Cloudflareならone.one.one.one、Googleならdns.google、AdGuardならdns.adguard.com)を入力すると、AndroidはシステムワイドですべてのDNSクエリを暗号化します。
macOS 11以降:iOSと同じ構成プロファイルの仕組みです。AppleはDoHサポートを組み込んでいますが、システム設定から公開はしておらず、プロファイルをインストールします。
Windows 11:設定 → ネットワークとインターネット → アダプターのプロパティ → DNSサーバーの割り当て → 「暗号化のみ(DNS over HTTPS)」——WindowsはデフォルトでCloudflare、Google、Quad9を認識しており、これらのIPを設定するとDoHを自動構成します。Windows 10にもDoHサポートがありますが、見つけにくい場所にあります。
ブラウザレベルのDoH:Firefoxは米国ユーザー向けにデフォルトでDoHを有効化しています(設定 → プライバシーとセキュリティ → DNS over HTTPS)。ChromeはこれをSecure DNSと呼んでいます(設定 → プライバシーとセキュリティ → セキュリティ)。SafariはブラウザではなくmacOSレベルの設定を使います。EdgeはWindowsレベルを使います。ブラウザDoHは有効化が速いですが、上述のペアレンタルコントロール・エンタープライズバイパスの問題が生じます;OSレベルのDoHは決定を一箇所にまとめ、ガバナンスが可能になります。
DoHリゾルバーの選び方——正直な比較
DoHリゾルバーを選ぶことが、DoHによって可能になる実際のプライバシー上の決断です。主な選択肢:
- Cloudflare 1.1.1.1:高速(エニーキャスト、ほとんどの都市圏でサブ15ms)、24時間のログ保持、年次監査。アダルトコンテンツをブロックする「ファミリー」バリアント(1.1.1.3)あり。CloudflareはWARPも提供しており、DoHとCloudflareのネットワークへのトンネルを組み合わせたVPNライトです。
- Google 8.8.8.8:高速、ユビキタス、Googleの定める保持ポリシーに基づく無期限のログ保持。Googleの基準では十分なプライバシーですが、「もう一つのデータストリームをGoogleに任せる」ことへの抵抗があれば、別の選択を。
- Quad9 9.9.9.9:スイスの非営利財団、デフォルトで既知の悪意あるドメインをブロック、ログなしポリシーを明記、多くの場合よりデータに慎重。
- NextDNS:プロファイルごとに設定可能(ブロックリスト、ファミリーフィルター、ログ保持)——パワーユーザー向けの選択肢。詳細は比較ページで。
- AdGuard DNS:DNSレイヤーで広告・トラッカーを積極的にブロック、DoHとDoTの両方をサポート。
- Mullvad DNS:スタンドアロンで利用可能(VPNサブスクリプション不要)、スウェーデン、コンテンツブロッキングの設定可能、DoHとDoT経由でアクセス可能。
- VPNプロバイダーのリゾルバー:Casper's Cloak、ProtonVPN(NetShield)、Mullvad——VPNトンネル内でDNSを処理するため、別途設定不要。便利な反面、VPNプロバイダーを両方のレイヤーで信頼することを意味しますが、いずれにせよVPNを使うなら避けられません。
正直な見解:「最良の」DoHリゾルバーは存在しません;あなたの脅威モデルに最適なリゾルバーがあるだけです。速度を重視する人もいれば、ブロックリスト、ログなしポリシー、管轄地域を重視する人もいます。一つ選び、OS レベルで設定して(ブラウザレベルだけでなく)すべてのアプリに適用し、優先事項やリゾルバーの透明性レポートが変わったときに見直しましょう。
VPNや広告ブロックとDoHの位置づけ——統合的な全体像
3つの独立したプライバシーレイヤー、それぞれが異なる攻撃面を塞ぎます:
- VPNトンネル:ローカルネットワークからの宛先IPの可視性を暗号化し、VPNプロバイダーへ移動させます。「カフェやISPがどのIPに接続しているかを見られる」問題を解消します。
- DoH / DoT:ローカルネットワークとISPからのDNSクエリを暗号化し、DNS可視性をDoHリゾルバーへ移動させます。「ISPに残るDNSログ」と「ネットワークレベルのDNSインジェクション」の問題を解消します。
- DNSレベルのコンテンツフィルタリング(Pi-hole、NextDNS、AdGuard DNS):リゾルバーで広告、トラッカー、マルウェア、フィッシングのルックアップをブロックします。「デバイス上のすべてのアプリがDNSレイヤーでブロック可能なエンドポイントを持つトラッカーSDKを読み込んでいる」問題を解消します。
DoH単体は一つのレイヤーです。実質的なプライバシーの姿勢は3つすべてを重ねます。Casper's Cloakはこのスタックを単一アプリとして提供するよう構築されています:VPNトンネル + Pi-hole DNSフィルタリング(リゾルバーとしてユーザーごとにPi-holeインスタンスを運用)+ 静的ブロックリストに加えたMLベースのゼロデイフィッシング検出。DoHはその配線の中に暗黙的に含まれています——デバイスとリゾルバー間のDNSクエリは暗号化されています。正直に言えば、これは一つの有効なアーキテクチャであり、もう一方は「OSレベルでNextDNSへのDoHを設定し、お好みのVPNを重ねて同じ結果を得る」という方法もあります。どちらも機能しますが、トレードオフは利便性と設定の自由度です。同じ点をDNSフィルタリングの角度からDNSレベルフィルタリングの実際の仕組みで解説しています。
まとめ
DoHは実際の有用なプライバシー改善ですが、マーケティング資料には書かれていない注意点があります。ISPによるDNS盗聴、カフェでのDNSインジェクション、単純な検閲——実際のユーザーが抱える3つの実際の問題を解消します。SNI漏洩、IPベースの宛先識別、選択したリゾルバーへの信頼については解消できません。そして慎重に設定しなければ、正当なユースケースでペアレンタルコントロールとエンタープライズセキュリティを壊してしまいます。
DoHで最も重要な決断は、どのリゾルバーを選ぶかであり、すべてのアプリに一貫して適用されるようOSレベルで設定することです。次に重要な決断は、DoHをVPNトンネル(宛先IPの可視性を解消)とDNSレベルのコンテンツフィルタリング(広告・トラッカー・悪意あるドメインのルックアップをブロック)と組み合わせるかどうかです。DoH単体では一つのレイヤーを解決します;統合スタックは攻撃面全体を解決します。
関連記事:DNSレベルフィルタリングの実際の仕組みではDoH単体では含まれないフィルタリングレイヤーを解説;2026年の公衆WiFi攻撃ではDoHが役立つネットワーク敵対的脅威モデルを解説;2026年の無料VPNと有料VPNではVPNトンネルレイヤーを解説。NextDNS比較とPi-hole比較では設定可能なDNSリゾルバーの選択肢を深掘りしています。