自宅でAdGuard Homeを使ってみた!Braveでも8%の広告がブロックされる驚きの結果
3秒まとめ
- 自宅でAdGuard Homeを導入してみた
- Braveブラウザを使っていても、8%の広告やトラッカーの名前解決がブロックされている
- DNSの名前解決による情報漏えいを防止できる
- DoT (DNS-over-TLS)やDoQ (DNS-over-QUIC)にも対応していてセキュア
- Tailscaleと組み合わせて使うと、スマホや出先からも設定なしで対応できる
AdGuard Homeとは?
AdGuard Homeは、ネットワークレベルで広告やトラッカーをブロックできるDNSキャッシュサーバーです。Pi-Holeと同じ感じです。
通常のブラウザの広告ブロック拡張機能とは異なり、ネットワーク全体で広告をブロックできるため、スマホアプリやスマートTVなど、あらゆるデバイスの広告をブロックできます。
自宅のネットワークに設置することで、家のすべてのデバイスの広告をまとめてブロックできるというわけです。
DHCPで振られたDNSを利用する問題
普段何気なく使っているインターネットですが、実はDNSの名前解決によってどこのホストに接続しているのかが第三者に漏洩してしまうという問題があります。
例えば、アクセスしようとしているホスト名に会社名や組織を識別する情報が含まれていると、あなたがどの会社のサービスを利用しているのか、どんなウェブサイトを見ているのかといった情報が筒抜けになってしまいます。具体的には、login.company-name.com
のようなURLにアクセスすると、あなたがその会社のサービスを利用していることがDNSキャッシュサーバーの運営者に知られてしまうんです。
参考資料: DNSとプライバシー
この問題を解決する方法として、ローカルで名前解決をするという方法があります。しかし、これにはデメリットもあります:
- キャッシュ効率が悪くなる - 同じドメインの名前解決を多くのデバイスが個別に行うことになり、効率が悪い
- リソースを消費する - 各デバイスでDNS解決のためのリソースを使うことになる
そこで最適な解決策となるのが、信頼できる安全なホストで運用されているDNSキャッシュサーバーを利用することです。これにより、プライバシーを保ちながら効率的な名前解決が可能になります。
AdGuard Homeはまさにこの役割を果たしてくれるツールなんです。自宅のネットワーク内で安全にDNSサーバーを運用できるため、プライバシーを守りながら広告ブロックの恩恵も受けられるというわけです。
この図のように、通常のDNS解決では、あなたのアクセスしているホスト名がISPや第三者に漏れる可能性があります。
AdGuard Homeを使うことでプライバシーを保護しながら広告ドメインをブロックできます。
なぜAdGuard Homeを導入したのか
私はBraveブラウザを普段から使っています。Braveは標準で広告ブロック機能が搭載されているので、かなり快適にウェブブラウジングができるんですよね。
でも、「本当にすべての広告がブロックされているのかな?」という疑問がありました。そこで、ネットワークレベルでの広告ブロックを試してみようと思い、AdGuard Homeを導入してみることにしました。
導入してみた結果
AdGuard Homeを導入して驚いたのは、Braveを使っているのに8%もの広告やトラッカーの名前解決がブロックされていたことです!
ダッシュボードを見ると、全体のDNSクエリ数が327,076件で、そのうち27,573件(約8%)がブロックされています。これはBraveブラウザを使っていても、まだ広告やトラッカーの一部が通過していることを示しています。
上位のDNSキャッシュサーバ (upstream)
複数のupstreamを設定し、ラウンドロビンでしばらく運用してみた結果です。各DNSキャッシュサーバの応答時間が表示されるので取捨選択もしやすいです。
ちなみに、upstreamを設定しない場合、AdGuard Homeは自身でDNSクエリをRoot Hintsから辿って名前解決を行います。
これは「フルリゾルバー」または「再帰DNSサーバー」と呼ばれる動作です。
DNS blocklists
AdGuard Homeでは、DNSブロックリストを使って広告やトラッカーをブロックします。デフォルトでは上の2つのリストが有効になっていますが、わたしはいくつか追加してみました。
ブロックリストには様々な種類があり、広告専用、トラッカー専用、マルウェア対策など、目的に応じて選べます。リストを追加するほどブロック率は上がりますが、誤検知のリスクも高まるので、バランスが大事です。
追記: 自分でもトラッキングサービスの運用をしているので追加で登録したリストは幅が広すぎたため結局はデフォルトに登録されているリストと、uBlockのみを使うようになりました。
セキュリティ面の強化
AdGuard HomeはDoT (DNS-over-TLS)やDoQ (DNS-over-QUIC)に対応しているので、DNSクエリを暗号化できます。これにより、ISPや第三者からのDNSクエリの監視を防ぐことができます。
通常のDNSは平文で通信するため、どのサイトにアクセスしているか漏れる可能性があります。DoTやDoQを使えばそのリスクを減らせるので、セキュリティを重視する方には嬉しい機能ですね。
TLSを利用するためにはサーバ証明書を取得する必要があるので追加でひと手間がかかります。
Tailscaleとの組み合わせ
わたしはTailscaleを使っています。Tailscaleを使うと、外出先からでもDNSの名前解決をVPN上で稼働しているAdGuardに投げることによってDNSのリゾルバを常時自分で動かしているホストに向けることができます。
Tailscaleを導入しているクライアントホストでは、DNSキャッシュサーバーとして100.100.100.100という仮想ネットワークの仮想IPアドレスが使われています。このアドレスは実際のネットワークには存在せず、Tailscale内部で使われるものです。
Tailscaleにおいて、DNSキャッシュサーバーは100.100.100.100という仮想ネットワークの仮想IPアドレスが使われていますが、実際にはDNSキャッシュサーバーを指定できるオプションがあります。そのため、AdGuardが動いているサーバーのIPアドレスを指定できます。
これにより、スマホからも特別な設定なしでAdGuard Homeを使ったDNSフィルタリングが可能になりました。外出先でもVPN経由で自宅のAdGuard Homeを使えるので、広告ブロックの恩恵を受けられます。
まとめ
AdGuard Homeを導入してみて、Braveブラウザを使っていても8%もの広告やトラッカーがブロックされることがわかりました。ネットワークレベルでの広告ブロックは、ブラウザレベルの広告ブロックを補完する形で効果を発揮します。
また、Tailscaleと組み合わせることで、外出先でもVPN経由で広告ブロックの恩恵を受けられるのは大きなメリットです。
プライバシーやセキュリティを重視する方は、ぜひAdGuard Homeの導入を検討してみてください。設定は少し手間がかかりますが、一度設定してしまえば、家のすべてのデバイスで広告なしの快適なインターネット環境を実現できますよ!
Discussion