はじめに:DoHって何?なぜ必要?
インターネットを使うとき、ブラウザは「このドメイン名のIPアドレスは?」とDNSサーバーに問い合わせます。この問い合わせは通常、暗号化されていません。つまり、カフェのWi-Fiや公衆ネットワークでは、あなたが「どのサイトにアクセスしようとしているか」が見える状態です。
DNS over HTTPS(DoH)は、このDNSの問い合わせをHTTPS(443番ポート)で暗号化する技術です。これにより:
- ネットワーク管理者や第三者から、アクセス先のドメインが見えにくくなる
- DNS応答の改ざん(偽のサイトへの誘導など)を防ぎやすくなる
- プライバシーが向上する
この記事では、macOSで最短でDoHを導入し、いつでも元に戻せる方法を解説します。
1. まず選ぶ:どのDNSサービスを使う?
DoHを使うには、対応したDNSサービスを選ぶ必要があります。主要なサービスの特徴を整理しました。
Google Public DNS(速度・安定性重視)
Googleが2009年から提供する世界最大規模のパブリックDNS。世界中のデータセンターを活用した高速なレスポンスと高い安定性が特徴で、設定もシンプルなため初心者にも扱いやすいサービスです。
Cloudflare(速度・プライバシー重視)
応答速度の速さで知られるCloudflareのDNS。プライバシー保護に力を入れており、ログを24時間以内に削除するポリシーを採用しています。マルウェア対策版(1.1.1.2系)やファミリーフィルター版(1.1.1.3系)も提供されており、用途に応じて選択できます。
Quad9(セキュリティ最優先)
スイスに本拠を置く非営利団体が運営。セキュリティを最優先し、既知の悪意あるドメイン(マルウェア配布サイト、フィッシングサイトなど)へのアクセスを自動でブロックします。利益目的でないため、プライバシー面でも信頼性が高いとされています。
OpenDNS(フィルタリング重視)
Cisco傘下のDNSサービス。家庭や学校での利用に適しており、フィッシング対策に加え、カテゴリごとのウェブサイトブロックなど強力なフィルタリング機能を備えています。無料のFamilyShield版と、より詳細な設定が可能な有料プランがあります。
AdGuard DNS(広告ブロック重視)
広告やトラッキングスクリプトをDNSレベルでブロックするのが最大の特徴。ブラウザ拡張を入れなくても、OS全体で広告を減らせます。ウェブ表示がすっきりし、通信量の削減にもつながります。
NextDNS(カスタマイズ重視)
非常に多機能でカスタマイズ性が高いサービス。ブロックリストの選択、ログの詳細分析、デバイスごとの設定など、自分好みの設定を追求したいユーザーにおすすめです。無料プランでも月30万クエリまで利用可能。アカウント登録が必要です。
CleanBrowsing(子供の保護重視)
子どもを有害サイトから守りたい場合に最適。「Security」「Adult」「Family」の3つのフィルタリングレベルを提供し、設定が簡単です。教育機関での導入実績も多いサービスです。
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
【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
- Comodo Secure DNS:DoH非対応(通常DNS 8.26.56.26 のみ)
- Level3/Lumen(4.2.2.2等):DoH非対応、公式サービスではなく予備用途向け
2. macOS全体にDoHを効かせる方法
macOSでOS全体にDoHを適用する方法は、主に3つあります。
方法A:構成プロファイル(.mobileconfig)を使う【推奨】
最も確実で、Safari・Mail・その他多くのアプリに効きます。この記事ではこの方法を詳しく解説します。
方法B:サードパーティアプリを使う
手動でプロファイルを作るのが面倒な場合、以下のアプリがDoH/DoT設定を簡単にしてくれます。
Little Snitch(リトルスニッチ)
macOS用の高機能ファイアウォールアプリ。バージョン5以降でDNS暗号化機能を搭載しています。設定画面から、DoH/DoTを有効にするだけでOS全体のDNS通信を暗号化できます。ネットワーク監視機能も併せて使いたい方に特におすすめです。
AdGuard Pro(iOS/macOS)
広告ブロッカーとして有名なAdGuardの有料版には、DNS保護機能が搭載されています。アプリ内で任意のDoHサーバーを設定でき、フィルタリングルールと組み合わせることも可能。広告ブロックとプライバシー保護を一括で管理したい方に向いています。
方法C:ブラウザだけDoHを使う
Chrome、Firefox、Braveなどのブラウザは、独自のDoH設定を持っています。ブラウザの設定からDoHを有効にすれば、そのブラウザだけDoHで通信します。ただし、Safariやメールアプリには効きません。
3. 構成プロファイルを作成する(手順)
ここからは、自分で構成プロファイルを作成してインストールする手順を解説します。
Step 1:UUIDを2つ生成する
ターミナルを開き、以下のコマンドを2回実行します。
uuidgen
uuidgen
2つのUUID(例:A1B2C3D4-E5F6-7890-ABCD-EF1234567890のような長い文字列)が出力されるので、メモしておきます。
Step 2:プロファイルファイルを作成する
テキストエディタ(VSCode、CotEditor、メモ帳など何でもOK)で新規ファイルを作成し、以下のテンプレートをコピペします。
3箇所を置き換えてください:
YOUR_DOH_URL→ 使いたいDoH URL(例:https://dns.quad9.net/dns-query)UUID_1→ Step 1で生成した1つ目のUUIDUUID_2→ Step 1で生成した2つ目のUUID
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadContent</key>
<array>
<dict>
<key>DNSSettings</key>
<dict>
<key>DNSProtocol</key>
<string>HTTPS</string>
<key>ServerURL</key>
<string>YOUR_DOH_URL</string>
</dict>
<key>PayloadType</key>
<string>com.apple.dnsSettings.managed</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>PayloadIdentifier</key>
<string>local.doh.dnssettings</string>
<key>PayloadUUID</key>
<string>UUID_1</string>
<key>PayloadDisplayName</key>
<string>DNS over HTTPS</string>
</dict>
</array>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>PayloadIdentifier</key>
<string>local.doh.profile</string>
<key>PayloadUUID</key>
<string>UUID_2</string>
<key>PayloadDisplayName</key>
<string>DoH Profile</string>
<key>PayloadRemovalDisallowed</key>
<false/>
</dict>
</plist>
ファイル名はDoH-Quad9.mobileconfigのように、使用するDNSがわかる名前で保存します。拡張子は必ず.mobileconfigにしてください。
Step 3:プロファイルをインストールする
保存した.mobileconfigファイルをダブルクリックします。
macOSのバージョンによって、プロファイル管理画面の場所が異なります:
- macOS Ventura以降:システム設定 → 一般 → VPNとデバイス管理
- macOS Monterey:システム環境設定 → プロファイル
- 見つからない場合:システム設定の検索欄で「プロファイル」または「デバイス管理」と検索
「インストール」をクリックし、管理者パスワードを入力すれば完了です。
4. 動作確認(最低限これだけ)
確認1:Webサイトが正常に表示されるか
Safariで普段使うサイトを2〜3個開いてみてください。問題なく表示されれば、ひとまずOKです。
確認2:平文DNS(53番ポート)の通信をチェック
DoHが効いていれば、従来のDNS通信(UDPポート53番)は大幅に減るはずです。ターミナルで以下を実行し、Webサイトをいくつか開いてみましょう。
sudo tcpdump -n -i any port 53
- 出力がほとんどない / 少ない → DoHが効いている可能性が高い
- 大量に出力される → まだ通常DNSが使われている可能性
停止するにはCtrl + Cを押します。
※これはあくまで簡易確認です。詳しい検証方法はChapter 2(上級者向け)で解説します。
5. 元に戻す方法(重要)
何か問題が起きたら、プロファイルを削除するだけで元の状態に戻せます。
- システム設定 → 一般 → VPNとデバイス管理(またはプロファイル)を開く
- インストールした「DoH Profile」を選択
- 「−」ボタンまたは「プロファイルを削除」をクリック
- 管理者パスワードを入力して削除
6. よくあるトラブルと対処法
Q1. プロファイル管理画面が見つからない
システム設定の検索欄に「プロファイル」「デバイス管理」「VPN」などと入力してください。macOSのバージョンによって場所が変わることがあります。
Q2. 会社や学校のWi-Fiで繋がらなくなった
企業ネットワークでは、DoHや特定のDoHサーバーがブロックされていることがあります。その場合は:
- まずプロファイルを削除して通常DNSに戻す
- 社内ルールを確認(DoH禁止の場合もある)
- 必要なら、社内ネットワークではDoHを使わない運用にする
Q3. VPNやセキュリティソフトを使っている
VPNやセキュリティソフトの中には、DNSを独自にコントロールするものがあります。DoHプロファイルと競合する場合は:
- 一時的にVPN/セキュリティソフトをOFFにして挙動を確認
- 競合が確認できたら、どちらを優先するか判断
詳しい切り分け方法はChapter 2で解説しています。
7. まとめ
この記事では、macOSでDoHを最短で導入する方法を解説しました。
- DoHとは:DNSの問い合わせをHTTPSで暗号化する技術
- 導入方法:構成プロファイル(.mobileconfig)が最も確実
- 代替手段:Little SnitchやAdGuard Proでも簡単に設定可能
- 戻し方:プロファイルを削除するだけ
「本当にDoHになっているか検証したい」「VPNと競合した」「DNS漏れが心配」という方は、Chapter 2:仕組み・検証・トラブルシューティング編へ進んでください。



コメント