【後編】macOS DoHの仕組み・検証・トラブルシューティング

macOS DoH macOS
この記事は約12分で読めます。
  1. はじめに:この記事のゴール
  2. 1. 暗号化DNSの種類:DoH / DoT / DoQ
    1. DoH(DNS over HTTPS)
    2. DoT(DNS over TLS)
    3. DoQ(DNS over QUIC)
  3. 2. macOSのDNSはどこで決まる?
    1. DNSに影響を与える要素
  4. 3. DoH設定パターンの比較
    1. パターンA:構成プロファイル(OS全体)
    2. パターンB:サードパーティアプリ(Little Snitch / AdGuard Pro)
      1. Little Snitchの場合
      2. AdGuard Proの場合
    3. パターンC:ブラウザだけDoH
    4. パターンD:ローカルDoHプロキシ(上級者向け)
  5. 4. DNSサービスの選び方:目的別ガイド
    1. 速度・安定性を重視するなら
      1. Google Public DNS
      2. Cloudflare
    2. セキュリティを重視するなら
      1. Quad9
      2. OpenDNS
    3. 広告ブロックを重視するなら
      1. AdGuard DNS
      2. NextDNS
    4. 子供の保護を重視するなら
      1. CleanBrowsing
      2. Cloudflare for Families(1.1.1.3系)
    5. DoH URL一覧(まとめ)
  6. 5. 本当にDoHになっている?検証方法
    1. 5.1 現在のDNS設定を確認する
      1. networksetup(ネットワークサービスごとのDNS)
      2. scutil –dns(実際のリゾルバ状態)
    2. 5.2 DNS漏れチェック:53番ポートを監視
    3. 5.3 DoH通信を確認する(443番ポート)
    4. 5.4 digコマンドの注意点
  7. 6. トラブルシューティング
    1. 6.1 VPNを入れたらDoHが効かない
    2. 6.2 会社Wi-Fiでだけ遅い/繋がらない
    3. 6.3 AdGuard DNSで一部サイトが壊れる
    4. 6.4 DoHにしたのに遅くなった
  8. 7. 運用のベストプラクティス
    1. 7.1 プロファイルは「切り替え前提」で用意する
    2. 7.2 仕事用/家庭用で方針を分ける
    3. 7.3 「戻し手順」を必ず覚えておく
  9. 8. まとめ

はじめに:この記事のゴール

Chapter 1では「とにかくDoHを入れる」ことに集中しました。この記事では一歩進んで、以下のことができるようになります。

  • DoH / DoT / DoQの違いを説明できる
  • macOSのDNSが「どこで」決まるか理解できる
  • DoHが本当に効いているか、コマンドで検証できる
  • VPNや社内ネットワークなど「ありがちな競合」を切り分けできる
  • 目的に合ったDNS(Quad9 / AdGuard / Google / Cloudflare)を選べる

1. 暗号化DNSの種類:DoH / DoT / DoQ

「暗号化DNS」と一口に言っても、実は複数の方式があります。混同しやすいので整理しておきましょう。

DoH(DNS over HTTPS)

DNSの問い合わせをHTTPSプロトコルに載せて運ぶ方式です。

  • ポート:443/TCP(通常のHTTPSと同じ)
  • メリット:ファイアウォールで弾かれにくい、ブラウザやOSでの採用が進んでいる
  • デメリット:HTTPのオーバーヘッドがある

DoT(DNS over TLS)

DNSの問い合わせをTLSで直接暗号化する方式です。

  • ポート:853/TCP(専用ポート)
  • メリット:実装がシンプル、プロトコルとしてはDoHより軽量
  • デメリット:853番ポートが企業ネットワークでブロックされていることがある

DoQ(DNS over QUIC)

DNSの問い合わせをQUICプロトコルで運ぶ、比較的新しい方式です。

  • ポート:443/UDP
  • メリット:接続確立が高速、パケットロスに強い
  • デメリット:対応サービス・クライアントがまだ限定的

この記事では、最も普及しているDoHを中心に解説します。


2. macOSのDNSはどこで決まる?

macOSのDNS設定は「1箇所で固定」ではなく、複数の要素が影響します。これがトラブルの原因になりやすいポイントです。

DNSに影響を与える要素

要素 説明 優先度
ネットワークサービス設定 Wi-Fi / Ethernet / VPNごとのDNS設定 通常
構成プロファイル .mobileconfigによる強制設定
VPN / セキュリティ製品 独自にDNSを制御するソフトウェア 最高(上書きされることが多い)
アプリ独自のDoH Chrome、Firefoxなどがブラウザ内でDoH アプリ内のみ

重要:構成プロファイルでDoHを設定しても、VPNやセキュリティ製品が上書きすることがあります。だからこそ「検証」が大切です。


3. DoH設定パターンの比較

パターンA:構成プロファイル(OS全体)

おすすめ度:★★★★★

  • Safari、Mail、ほとんどのアプリに効く
  • 導入・削除が「プロファイル管理」から簡単
  • ただしVPN等で上書きされる可能性あり

パターンB:サードパーティアプリ(Little Snitch / AdGuard Pro)

おすすめ度:★★★★☆

Chapter 1でも紹介したLittle SnitchAdGuard Proは、GUIから簡単にDoH/DoTを設定できます。

Little Snitchの場合

  1. Little Snitch(バージョン5以降)をインストール
  2. 設定画面 → DNS → 「Encrypt DNS traffic」を有効化
  3. 使用するDoH/DoTサーバーを選択または追加

AdGuard Proの場合

  1. AdGuard Pro(有料版)をインストール
  2. 設定 → DNS保護 → DNSサーバーを選択
  3. カスタムサーバーでDoH URLを直接指定することも可能

これらのアプリはネットワーク拡張機能を使用するため、VPNと同様の仕組みでDNS通信を制御します。構成プロファイルより確実に効く場合もあります。

パターンC:ブラウザだけDoH

おすすめ度:★★★☆☆

  • Chrome / Firefox / Braveなどの設定から有効化
  • そのブラウザ内の通信だけDoHになる
  • Safariやメールアプリには効かない

パターンD:ローカルDoHプロキシ(上級者向け)

おすすめ度:★★☆☆☆(運用負荷が高い)

  • cloudflared、dnscrypt-proxyなどを常駐させる
  • ローカル(127.0.0.1)をDNSとしてOSに登録
  • 柔軟だが、障害時の切り分けが難しい

4. DNSサービスの選び方:目的別ガイド

DoHは「暗号化する」だけでなく、どのDNSサービスを使うかで体験が大きく変わります。

速度・安定性を重視するなら

Google Public DNS

世界最大規模のパブリックDNS。Googleの巨大なインフラを活用し、高速で安定したレスポンスを提供します。設定もシンプルで、初心者から上級者まで幅広く利用されています。余計なフィルタリングがないため、業務用途にも適しています。

Cloudflare

応答速度の速さで定評があり、プライバシー保護にも注力。ログは24時間以内に削除され、第三者監査も受けています。マルウェア対策版(security.cloudflare-dns.com)やファミリーフィルター版(family.cloudflare-dns.com)も選択可能です。

セキュリティを重視するなら

Quad9

スイスに本拠を置く非営利団体が運営。既知の悪意あるドメイン(マルウェア、フィッシングサイトなど)を自動でブロックします。非営利組織のため商業的利用がなく、プライバシー面でも信頼されています。

注意:誤検知で必要なサイトがブロックされることがあります。業務で問題が生じる場合は、ブロックなし版(dns10.quad9.net)も検討してください。

OpenDNS

Cisco傘下のDNSサービス。フィッシング対策に加え、カテゴリごとのウェブサイトブロック機能を備えています。家庭や学校での利用に適しており、FamilyShield版は追加設定なしでアダルトコンテンツをブロックします。

広告ブロックを重視するなら

AdGuard DNS

広告配信ドメインをDNSレベルでブロック。ブラウザ拡張より「手前」で止められるため、通信量の削減にも効果があります。

注意:ログイン、決済、埋め込みコンテンツに影響することがあります。問題が発生したらunfiltered版に切り替えてください。

NextDNS

最も多機能でカスタマイズ性が高いサービス。複数のブロックリストを組み合わせたり、ホワイトリスト/ブラックリストを細かく設定したり、デバイスごとに異なるルールを適用できます。無料プランでも月30万クエリまで利用可能。設定を追求したい上級者向けです。

子供の保護を重視するなら

CleanBrowsing

子どもを有害サイトから守ることに特化したサービス。3つのフィルタリングレベル(Security / Adult / Family)を提供し、設定が簡単です。教育機関での導入実績も豊富です。

Cloudflare for Families(1.1.1.3系)

Cloudflareの高速性を維持しつつ、マルウェアとアダルトコンテンツをブロック。SafeSearchの強制も有効になります。

DoH URL一覧(まとめ)

【Google Public DNS】
標準:           https://dns.google/dns-query

【Cloudflare】
標準:               https://cloudflare-dns.com/dns-query
マルウェア対策:      https://security.cloudflare-dns.com/dns-query
マルウェア+アダルト: https://family.cloudflare-dns.com/dns-query

【Quad9】
標準:          https://dns.quad9.net/dns-query
ブロックなし:   https://dns10.quad9.net/dns-query

【OpenDNS】
標準:         https://doh.opendns.com/dns-query
FamilyShield: https://doh.familyshield.opendns.com/dns-query

【AdGuard DNS】
標準:          https://dns.adguard-dns.com/dns-query
ブロックなし:   https://unfiltered.adguard-dns.com/dns-query
ファミリー:     https://family.adguard-dns.com/dns-query

【NextDNS】※アカウント登録後、プロファイルIDを取得
標準:           https://dns.nextdns.io/[あなたのプロファイルID]

【CleanBrowsing】
Security: https://doh.cleanbrowsing.org/doh/security-filter/
Adult:    https://doh.cleanbrowsing.org/doh/adult-filter/
Family:   https://doh.cleanbrowsing.org/doh/family-filter/

ℹ️ DoH非対応・サービス終了のDNS

以下のDNSはDoHに対応していないため、この記事の方法では使用できません。

  • Comodo Secure DNS(8.26.56.26):通常DNS(ポート53)のみ対応
  • Level3/Lumen(4.2.2.2等):通常DNSのみ。元々は非公式サービスで、他のDNSが不調な際の予備として使われていました

5. 本当にDoHになっている?検証方法

「体感で速い/遅い」ではなく、観測できるもので確認しましょう。

ℹ️ 注意:以下のコマンドには管理者権限(sudo)が必要なものがあります。また、会社のPCでは実行が制限されている場合があります。

5.1 現在のDNS設定を確認する

networksetup(ネットワークサービスごとのDNS)

# ネットワークサービス一覧を表示
networksetup -listallnetworkservices

# Wi-FiのDNS設定を表示
networksetup -getdnsservers "Wi-Fi"

ここで表示されるのは「従来DNSの設定」です。DoHプロファイルを入れても、この値は変わらないことがあります。

scutil –dns(実際のリゾルバ状態)

scutil --dns

出力は長いですが、resolverが複数表示され、状況に応じて使い分けられていることがわかります。

5.2 DNS漏れチェック:53番ポートを監視

DoHが効いていれば、従来のDNS通信(UDPポート53番)は大幅に減ります。

sudo tcpdump -n -i any port 53

この状態でSafariなどでWebサイトを開いてみます。

  • 出力がほとんどない → DoHが効いている可能性が高い
  • 大量に出力される → 通常DNSがまだ使われている

停止はCtrl + Cです。

⚠️ 注意:mDNS(ローカルの名前解決)や一部アプリの挙動で、少量の53番通信が出ることはあります。「完全にゼロ」を期待しすぎないでください。

5.3 DoH通信を確認する(443番ポート)

DoHはHTTPS(443番ポート)を使いますが、通常のWeb通信も443番なので区別が難しいです。DoHサーバーのホスト名で絞り込む方法があります。

# Cloudflareの例
sudo tcpdump -n -i any host cloudflare-dns.com and port 443

※DNS解決のタイミングによっては表示されないこともあります。その場合はIPアドレスで絞り込む必要があります。

5.4 digコマンドの注意点

dig example.com

digは便利ですが、macOSの「実際のアプリが使う解決経路」とは異なる場合があります。参考程度に留め、過信しないでください。


6. トラブルシューティング

6.1 VPNを入れたらDoHが効かない

原因:VPNがDNSを強制的に自社サーバーへ送っている可能性があります。

切り分け手順

  1. VPNをOFFにする → 挙動が戻るか確認
  2. sudo tcpdump -n -i any port 53で53番通信を確認
  3. VPNの設定に「DNS関連オプション」(Split DNS、Secure DNSなど)がないか確認

対処

  • VPN優先が必須なら、DoHはブラウザ限定にする
  • DoH優先なら、VPN側でDNS上書きを止められるか確認

6.2 会社Wi-Fiでだけ遅い/繋がらない

原因候補

  • DoH自体、または特定のDoHサーバーがブロックされている
  • HTTPSインスペクション(プロキシ)が入っている
  • キャプティブポータル(認証画面)と競合

対処

  • 別のDoHサーバー(Google/Cloudflareなど)に切り替えてみる
  • 一時的にプロファイルを削除して通常DNSで確認
  • 社内IT部門に確認

6.3 AdGuard DNSで一部サイトが壊れる

よくある症状

  • ログインボタンが動かない
  • 決済処理が失敗する
  • 画像やAPIが読み込まれない

対処

  • AdGuard DNSを「unfiltered」(ブロックなし)に切り替える
  • 重要な作業時だけプロファイルを外す運用にする
AdGuard(ブロックなし): https://unfiltered.adguard-dns.com/dns-query

6.4 DoHにしたのに遅くなった

DNSの体感速度は、以下の要素に影響されます。

  • 回線品質
  • DoHサーバーまでの物理距離
  • キャッシュ状態
  • サイト側のCDN

対処

  • 1つのDNSだけで判断しない(Cloudflare/Google/Quad9で比較)
  • 体感より、同条件で数回テストして平均を見る
  • 広告ブロック系DNSはブロック判定で遅く感じることも

7. 運用のベストプラクティス

7.1 プロファイルは「切り替え前提」で用意する

用途別に複数のプロファイルを作っておくと便利です。

DoH-Quad9.mobileconfig      # セキュリティ重視
DoH-Cloudflare.mobileconfig # 速度・安定性重視
DoH-AdGuard.mobileconfig    # 広告ブロック

注意:同時に複数入れるより、使うものを1つだけにした方が事故が減ります。

7.2 仕事用/家庭用で方針を分ける

用途 おすすめDNS 理由
仕事(安定性重視) Google / Cloudflare 高速・安定、誤ブロックなし
仕事(セキュリティ重視) Quad9 / OpenDNS マルウェア・フィッシング対策
家庭(一般) Quad9 / Cloudflare Malware セキュリティ対策
家庭(広告対策) AdGuard DNS / NextDNS 広告・トラッカー削減
家庭(子供保護) CleanBrowsing Family / Cloudflare Family アダルトコンテンツもブロック
カスタマイズしたい NextDNS 詳細な設定・ログ分析が可能

7.3 「戻し手順」を必ず覚えておく

トラブル時の基本フローです。

  1. まずプロファイルを削除 → 通常DNSに戻して挙動確認
  2. それでもおかしい → VPN/セキュリティ製品を疑う
  3. 原因が切り分けできたら → 再度DoHを入れ直す

8. まとめ

この記事では、macOSでDoHを使う際の仕組み、検証方法、トラブルシューティングを解説しました。

  • DoH / DoT / DoQ:暗号化DNSには複数の方式があり、DoHが最も普及
  • macOSのDNS:複数の要素が影響し、VPN等に上書きされることがある
  • 設定方法:構成プロファイルが確実、Little Snitch/AdGuard Proも便利
  • 検証:tcpdumpで53番通信を監視するのが実用的
  • 運用:用途別にプロファイルを用意し、切り替え前提で
  • DNSの選択:速度重視ならGoogle/Cloudflare、セキュリティ重視ならQuad9/OpenDNS、広告ブロックならAdGuard/NextDNS、子供保護ならCleanBrowsing/Cloudflare Familyがおすすめ

DoHを正しく理解して設定すれば、プライバシーとセキュリティを向上させながら快適にインターネットを使えます。ぜひ自分の環境に合った設定を見つけてください。

コメント

タイトルとURLをコピーしました