インターネットで「youtube.com」と入力してアクセスするとき、その通信内容は暗号化されていますよね。鍵マークがアドレスバーに表示され、HTTPSで保護されています。
でも実は、「youtube.comにアクセスしようとしている」という情報そのものは暗号化されていないんです。
この情報はDNS(ドメインネームシステム)でやり取りされるのですが、従来のDNS通信は平文(暗号化されていない状態)で行われていました。つまり、通信経路上の誰かがあなたの閲覧履歴を覗き見できる状態だったわけです。
そこで登場したのがDNS over TLS(DoT)です。
DoTは、DNS通信をTLS(Transport Layer Security)という暗号化技術で保護することで、あなたのプライバシーを守る技術なんです。この記事では、DoTの仕組みや使い方について、初心者の方にも分かるように詳しく解説していきます。
従来のDNSの深刻なプライバシー問題
DNSって何だっけ?
まず、DNSの基本をおさらいしましょう。
DNS(Domain Name System)は、人間が覚えやすいドメイン名(example.comなど)を、コンピュータが理解できるIPアドレス(192.0.2.1など)に変換してくれるシステムです。
インターネットの「住所録」や「電話帳」のような存在ですね。
従来のDNSの問題点
これまでのDNS通信には、重大なプライバシーの問題がありました。
問題1:平文通信
- DNS通信は暗号化されていない
- 通信内容が誰にでも読める状態
- どのサイトにアクセスしようとしているか丸見え
問題2:ISPによる監視
- インターネットサービスプロバイダ(ISP)があなたの閲覧履歴を把握できる
- 広告配信や通信制限に利用される可能性がある
- プライバシーの侵害につながる
問題3:盗聴のリスク
- 公共Wi-Fiなどでは第三者が通信を傍受できる
- どのサイトを見ているか知られてしまう
- 個人情報流出のリスク
問題4:検閲や制限
- 一部の国では、DNSを監視してアクセス制限を行っている
- 見たいサイトが見られない状況が発生
問題5:DNSハイジャック
- 悪意ある第三者がDNS通信を横取りできる
- 偽のサイトに誘導される危険性
HTTPSがあっても不十分
「でも、HTTPSで暗号化されているから大丈夫じゃないの?」と思うかもしれません。
確かに、Webサイトの内容はHTTPSで暗号化されます。しかし:
暗号化される情報:
- サイト内で何を見たか
- 入力したパスワードやクレジットカード情報
- やり取りしたメッセージ内容
暗号化されない情報:
- どのサイトにアクセスしようとしているか(DNS通信)
- 接続先のIPアドレス
つまり、「誰がどのサイトを見ようとしているか」という情報は筒抜けだったわけです。
実際の影響
この問題は、単なる理論上の話ではありません。
実例:
- ISPが閲覧履歴を収集して広告会社に販売
- 公共Wi-Fiでの盗聴による個人情報流出
- 政府による国民のネット監視
- 企業による社員の行動監視
プライバシーを重視する人々にとって、これは深刻な問題でした。
DNS over TLS(DoT)とは何か?
DoTの定義
DNS over TLS(DoT)は、DNS通信をTLS(Transport Layer Security)プロトコルで暗号化する技術です。
TLSは、HTTPSでも使われている信頼性の高い暗号化技術なんですね。
DoTの目的:
- DNS通信の内容を第三者から隠す
- 盗聴や改ざんを防ぐ
- ユーザーのプライバシーを保護する
標準化の歴史
DoTは、2016年にRFC 7858として標準化されました。
タイムライン:
- 2016年: RFC 7858でDoTが標準化
- 2018年: Android 9でDoTがネイティブサポート
- 2020年以降: 主要なDNSサービスが続々と対応
比較的新しい技術ですが、急速に普及が進んでいます。
基本的な仕組み
DoTの仕組みはシンプルです。
従来のDNS:
[あなたのPC] --平文で通信--> [DNSサーバー]
↑ 誰でも読める ↑
DNS over TLS:
[あなたのPC] --暗号化された通信--> [DNSサーバー]
↑ 暗号化されているので読めない ↑
DNS通信全体をTLSという「暗号のトンネル」で包むイメージですね。
使用するポート番号
DoTの重要な特徴の一つが、専用のポート番号を使うことです。
従来のDNS:
- ポート番号:53
- 暗号化:なし
DNS over TLS:
- ポート番号:853
- 暗号化:TLS
この専用ポート(853)を使うことで、DNS通信であることが明確に分かります。
DoTの動作の仕組み
実際にDoTがどう働くのか、ステップごとに見ていきましょう。
ステップ1:TLSハンドシェイク
まず、あなたのデバイスとDNSサーバーの間でTLSハンドシェイクが行われます。
TLSハンドシェイクとは?
- 暗号化通信を始める前の「準備作業」
- お互いの身元を確認する
- 使用する暗号方式を決める
- 暗号化に使う鍵を交換する
具体的な流れ:
- クライアント(あなたのデバイス)がサーバーに接続要求
- サーバーが証明書を提示
- クライアントが証明書を検証(本物のサーバーか確認)
- 暗号化に使う共通鍵を安全に交換
- 暗号化通信の準備完了
この手順により、安全な暗号化トンネルが確立されます。
ステップ2:DNS問い合わせの暗号化
TLSトンネルが確立されたら、その中でDNS問い合わせを送ります。
通常のDNS問い合わせ:
「example.comのIPアドレスは?」→ 平文で送信
DoTでの問い合わせ:
「example.comのIPアドレスは?」→ 暗号化して送信
通信を傍受されても、暗号化されているので内容は読めません。
ステップ3:暗号化された応答
DNSサーバーも、応答を暗号化して返します。
「example.comは192.0.2.1です」→ 暗号化して送信
ステップ4:復号化
あなたのデバイスが、暗号化された応答を復号化します。
これで、安全にDNS情報を取得できました。
セッションの維持
DoTでは、一度確立したTLS接続をしばらく維持します。
メリット:
- 複数のDNS問い合わせを同じ接続で送れる
- 毎回TLSハンドシェイクをする必要がない
- 高速で効率的
接続を使わなくなったら、適切なタイミングで切断されます。
DoTとDoHの違い
DNS通信を暗号化する技術には、DoTの他にDoH(DNS over HTTPS)もあります。この2つの違いを理解しましょう。
DNS over HTTPS(DoH)とは?
DoHは、DNS通信をHTTPSプロトコルで暗号化する技術です。
- 標準化:2018年(RFC 8484)
- ポート番号:443(HTTPSと同じ)
- 通信方式:HTTP/2またはHTTP/3上でDNSクエリを送る
主な違い
| 項目 | DoT | DoH |
|---|---|---|
| ポート番号 | 853(専用) | 443(HTTPSと共用) |
| プロトコル | TLS直接 | HTTPS(TLS上のHTTP) |
| 識別性 | DNS通信と分かる | 通常のHTTPS通信に紛れる |
| ファイアウォール | ブロックされやすい | ブロックされにくい |
| 対応デバイス | Android、一部ルーター | Chrome、Firefox、iOS |
| 企業ネットワーク | 制御しやすい | 制御しにくい |
それぞれの長所と短所
DoTの長所:
- DNS通信として明確に識別できる
- ネットワーク管理者が制御しやすい
- 専用ポートで分離されている
- シンプルで実装しやすい
DoTの短所:
- ポート853がブロックされると使えない
- ファイアウォールで遮断されやすい
- 制限されている環境で使いにくい
DoHの長所:
- 通常のHTTPS通信に紛れるため検閲されにくい
- ファイアウォールを通過しやすい
- Webブラウザで簡単に使える
- CDNなどのHTTPSインフラを活用できる
DoHの短所:
- ネットワーク管理者が制御しにくい
- 企業のセキュリティポリシーと衝突する可能性
- やや複雑な実装
どちらを選ぶべき?
DoTが向いている場合:
- 自宅のルーターやスマホで使いたい
- ネットワーク管理の観点から透明性が欲しい
- シンプルな設定を好む
DoHが向いている場合:
- 制限の厳しいネットワーク環境にいる
- ブラウザで簡単に有効化したい
- より強い検閲回避が必要
結論:
どちらも目的は同じで、セキュリティレベルもほぼ同等です。環境や好みに応じて選びましょう。
DoTのメリット
DNS over TLSを使うことで得られる利点を詳しく見ていきましょう。
1. プライバシーの大幅な向上
効果:
- DNS通信の内容が第三者に見られない
- どのサイトを見ているか隠せる
- 閲覧履歴のプライバシーが守られる
具体例:
- ISPがあなたの閲覧履歴を収集できなくなる
- 公共Wi-Fiでも安心してネットが使える
- 広告会社への情報販売を防げる
2. 盗聴防止
効果:
- カフェや空港のWi-Fiでも安全
- 第三者が通信を傍受しても内容は分からない
- 個人情報流出のリスクが減る
重要性:
公共Wi-Fiは便利ですが、セキュリティリスクも高いです。DoTを使えば、DNS通信に関しては安全性が大幅に向上します。
3. DNS改ざん防止
効果:
- 中間者攻撃を防げる
- 偽のDNS応答を検出できる
- フィッシング詐欺のリスクが減る
仕組み:
TLS通信では、サーバーの証明書を検証します。偽のサーバーは正しい証明書を持っていないので、接続が拒否されます。
4. 検閲の回避
効果:
- 一部の国や組織によるDNSレベルのブロックを回避できる
- アクセスしたいサイトにアクセスできる
- 言論の自由を守れる
注意:
ただし、完全な検閲回避を保証するものではありません。より強力な制限には他の手段も必要です。
5. DNSハイジャック攻撃の防止
効果:
- 攻撃者がDNS通信を乗っ取れない
- 正規のDNSサーバーにのみ接続できる
- マルウェア配布サイトへの誘導を防げる
6. 企業や組織での利用価値
効果:
- 社員のプライバシーを守れる
- 機密情報の漏洩リスクを減らせる
- セキュリティポリシーを強化できる
DoTのデメリットと課題
良いことばかりではありません。DoTにもいくつかの課題があります。
1. 対応の必要性
課題:
- クライアント側(デバイス)とサーバー側(DNSサービス)の両方がDoTに対応している必要がある
- 古いデバイスやソフトウェアでは使えない
影響:
すべての環境で使えるわけではない
2. パフォーマンスへの影響
課題:
- TLSハンドシェイクに時間がかかる
- 暗号化・復号化の処理が必要
- わずかに遅延が発生する可能性
実際の影響:
- 初回接続時のみ数十ミリ秒の遅延
- 接続を維持すれば2回目以降は高速
- 体感ではほとんど分からない
3. ファイアウォールでのブロック
課題:
- ポート853が使われているため、DNS通信だと識別できる
- 企業や学校のファイアウォールでブロックされやすい
- 管理者が意図的に無効化する可能性
対策:
DoHを使えば、この問題を回避できることがあります。
4. DNSSECとの関係
誤解:
DoTとDNSSEC(DNS Security Extensions)は別物です。
それぞれの役割:
- DoT: DNS通信の内容を暗号化(プライバシー保護)
- DNSSEC: DNS情報の真正性を保証(改ざん防止)
理想的な構成:
DoTとDNSSECの両方を使うことで、最高レベルのセキュリティが実現されます。
5. ネットワーク管理の難しさ
課題:
- ネットワーク管理者がDNS通信を監視・制御できなくなる
- 企業のセキュリティポリシーとの衝突
- トラブルシューティングが難しくなる
企業の立場:
セキュリティ上の理由で、社内のDNS通信を監視したい場合もあります。DoTはこれを難しくします。
6. 完全なプライバシーではない
限界:
- DNSクエリは暗号化されるが、接続先のIPアドレスは隠せない
- SNI(Server Name Indication)でドメイン名が漏れる可能性
- 完全な匿名性を保証するものではない
補完手段:
より強力なプライバシー保護には、VPNやTorなどの併用が必要です。
DoTの設定方法
実際にDoTを使うには、どうすればいいのでしょうか。
Androidでの設定
Android 9(Pie)以降では、標準でDoTがサポートされています。
設定手順:
- 「設定」アプリを開く
- 「ネットワークとインターネット」をタップ
- 「プライベートDNS」をタップ
- 「プライベートDNSプロバイダのホスト名」を選択
- DoT対応のDNSサーバーのアドレスを入力
- 例:
dns.google(Google Public DNS) - 例:
1dot1dot1dot1.cloudflare-dns.com(Cloudflare)
- 「保存」をタップ
これで、Android全体のDNS通信がDoTで暗号化されます。
iOSでの設定
iOSでは、構成プロファイルをインストールすることでDoTを有効化できます。
設定手順:
- DoT対応のDNSサービスが提供する構成プロファイルをダウンロード
- 「設定」→「一般」→「VPNとデバイス管理」
- ダウンロードしたプロファイルをインストール
- 画面の指示に従って完了
対応サービス:
- Cloudflare
- NextDNS
- AdGuard DNS
Windowsでの設定
Windows 11では、DoTのサポートが追加されました。
設定手順:
- 「設定」→「ネットワークとインターネット」
- 使用中のネットワーク接続をクリック
- 「DNS設定」をクリック
- 「手動」に変更
- DoT対応のDNSサーバーのIPアドレスを入力
- 「DNS over HTTPS」を「オン(自動テンプレート)」に設定
注意:
Windows 11の設定画面では「DNS over HTTPS」と表示されますが、DoTも含めて暗号化DNS全般を指しています。
macOSでの設定
macOSでは、構成プロファイルを使うか、サードパーティアプリを使います。
方法1:構成プロファイルを使う
- DoT対応サービスが提供するプロファイルをインストール
- 「システム環境設定」→「プロファイル」から管理
方法2:アプリを使う
- DNSCloak、Cloudflare WARPなどのアプリをインストール
- アプリ内でDoTを有効化
ルーターでの設定
一部の高機能ルーターは、DoTに対応しています。
対応ルーター:
- ASUS製ルーター(AiProtection搭載モデル)
- OpenWrtファームウェアが動作するルーター
- 一部のメッシュWi-Fiシステム
メリット:
- ルーターで設定すれば、接続されているすべてのデバイスが自動的にDoTを使う
- スマート家電やゲーム機なども保護される
- 個別設定が不要
Linuxでの設定
Linuxでは、Stubbyやsystemd-resolvedを使ってDoTを有効化できます。
Stubbyを使う方法:
# Stubbyをインストール
sudo apt install stubby
# 設定ファイルを編集
sudo nano /etc/stubby/stubby.yml
# Stubbyを起動
sudo systemctl start stubby
sudo systemctl enable stubby
# システムのDNSをStubbyに向ける
sudo nano /etc/resolv.conf
# nameserver 127.0.0.1 を追加
DoT対応のDNSサービス
DoTを使うには、対応しているDNSサービスを選ぶ必要があります。
Google Public DNS
特徴:
- Googleが提供する無料のDNSサービス
- 高速で信頼性が高い
- DoT、DoH、DNSSEC対応
DoT設定:
- ホスト名:
dns.google - IPアドレス:
8.8.8.8/8.8.4.4
Cloudflare DNS
特徴:
- プライバシー重視のDNSサービス
- ログを保存しないポリシー
- 世界最速クラスの応答速度
DoT設定:
- ホスト名:
1dot1dot1dot1.cloudflare-dns.com - IPアドレス:
1.1.1.1/1.0.0.1
マルウェアブロック版:
- ホスト名:
security.cloudflare-dns.com - IPアドレス:
1.1.1.2/1.0.0.2
ファミリー版(有害サイトブロック):
- ホスト名:
family.cloudflare-dns.com - IPアドレス:
1.1.1.3/1.0.0.3
Quad9
特徴:
- セキュリティ重視のDNSサービス
- 悪意あるサイトを自動ブロック
- プライバシー保護を約束
DoT設定:
- ホスト名:
dns.quad9.net - IPアドレス:
9.9.9.9/149.112.112.112
AdGuard DNS
特徴:
- 広告ブロック機能付きDNS
- トラッキング防止
- 複数のフィルタリングレベル
DoT設定:
- ホスト名:
dns.adguard-dns.com - IPアドレス:
94.140.14.14/94.140.15.15
ファミリー保護版:
- ホスト名:
family.adguard-dns.com - IPアドレス:
94.140.14.15/94.140.15.16
NextDNS
特徴:
- カスタマイズ可能なDNSサービス
- 詳細なログと分析機能
- 広告ブロックやペアレンタルコントロール
DoT設定:
- ホスト名:
your-id.dns.nextdns.io(個別のIDが必要)
DoTのトラブルシューティング
DoTを使っていて問題が発生した場合の対処法です。
問題1:接続できない
症状:
- DoTを設定したのにインターネットに接続できない
- DNSが解決されない
原因:
- ポート853がブロックされている
- ファイアウォールやセキュリティソフトが妨害
- DNSサーバーのアドレスが間違っている
解決方法:
- 別のDoT対応DNSサーバーを試す
- ファイアウォールの設定を確認
- DoHに切り替えてみる
- 一時的に通常のDNSに戻して確認
問題2:接続が遅い
症状:
- Webサイトの読み込みが遅くなった
- 初回接続に時間がかかる
原因:
- 地理的に遠いDNSサーバーを使っている
- TLSハンドシェイクのオーバーヘッド
- ネットワークの問題
解決方法:
- 地理的に近いDNSサーバーに変更
- 接続の維持時間を長く設定
- キャッシュ機能を活用
問題3:一部のサイトにアクセスできない
症状:
- 特定のサイトだけ開けない
- エラーメッセージが表示される
原因:
- DNSサービスがそのサイトをブロックしている(セキュリティやフィルタリング機能)
- DNS設定の問題
解決方法:
- フィルタリングなしのDNSサーバーに変更
- 一時的に通常のDNSで試す
- サイトのURLが正しいか確認
問題4:企業ネットワークで使えない
症状:
- 会社や学校でDoTが動作しない
- ポート853がブロックされている
原因:
- ネットワーク管理者が意図的にブロックしている
- セキュリティポリシーで禁止されている
解決方法:
- 管理者に相談(ただし、ポリシー違反にならないよう注意)
- DoHを試す(ポート443を使うため通りやすい)
- モバイルデータ通信に切り替える
確認ツール
接続確認:
- Cloudflare: https://1.1.1.1/help
- Google: https://dns.google/
- 各サービスが提供する診断ツール
コマンドラインツール:
# DoT接続のテスト(kdigコマンド)
kdig -d @8.8.8.8 +tls example.com
DoTの現状と未来
普及状況
モバイルOS:
- Android: 2018年のAndroid 9から標準サポート
- iOS: 構成プロファイルで対応(iOS 14以降)
デスクトップOS:
- Windows 11: ネイティブサポート
- macOS: サードパーティアプリで対応
- Linux: Stubbyなどで対応
ブラウザ:
- ブラウザはDoHを優先的にサポート
- DoTは主にOS・ルーターレベルで実装
DNSサービス:
- 主要なパブリックDNSサービスはほぼすべて対応済み
- 企業向けDNSソリューションでも対応が進行中
DoTとDoHの棲み分け
現在の傾向:
- DoT: OSレベル、ルーター、ネットワークインフラで採用
- DoH: ブラウザレベルで採用
将来の方向性:
- 両方の技術が共存
- 用途や環境に応じて使い分け
- 暗号化DNSが「標準」になる流れ
技術の進化
最新の動向:
1. Oblivious DoH(ODoH)
- さらに高度なプライバシー保護
- DNSサーバーさえもユーザーを特定できなくなる
- 中継サーバーを経由する仕組み
2. DNS over QUIC(DoQ)
- QUICプロトコル上でDNSを暗号化
- より高速で効率的
- パケット損失に強い
3. HTTPS Resource Records
- DNSレコードにHTTPS情報を含める
- より安全な接続を実現
プライバシー保護の流れ
世界的な傾向:
- プライバシー保護への意識が高まっている
- 各国で個人情報保護法が強化
- 企業もプライバシー重視の姿勢を示す
暗号化DNSの役割:
- プライバシー保護の基盤技術として重要
- 将来的には「暗号化されていないDNS」が例外的な存在になる可能性
まとめ:DoTはプライバシー保護の重要な一歩
DNS over TLS(DoT)は、DNS通信を暗号化してプライバシーを守る重要な技術です。
この記事のポイント:
- DoTの目的: DNS通信をTLSで暗号化し、第三者からの盗聴や監視を防ぐ
- 従来のDNSの問題: 平文通信のため、閲覧履歴が丸見えだった
- 仕組み: ポート853を使い、TLSトンネルでDNS通信を保護
- DoHとの違い: DoTは専用ポート(853)、DoHはHTTPS(ポート443)を使用
- メリット: プライバシー向上、盗聴防止、DNS改ざん防止
- デメリット: 対応の必要性、わずかな遅延、ファイアウォールでブロックされやすい
- 設定方法: Android、iOS、Windows、macOS、Linuxで設定可能
- 対応サービス: Google、Cloudflare、Quad9、AdGuardなど主要サービスが対応
インターネットのプライバシーを守るには、HTTPSだけでは不十分です。DNS通信も暗号化することで、初めて完全なプライバシー保護に近づけます。
DoTの設定は、思ったより簡単です。特にAndroidユーザーなら、数回タップするだけで有効化できます。自分のプライバシーを守るため、ぜひDoTの導入を検討してみてください。
インターネット全体が暗号化される未来に向けて、DoTは重要な一歩となる技術です。


コメント