Raspberry Pi に AdGuard Home で自宅DNSを構築する
一行要約
Raspberry Pi 上に AdGuard Home を導入し、LAN 全体の広告・トラッキングをDNSレベルでブロックする。
概要
AdGuard Home はローカルDNSサーバーとして広告やトラッキングをブロックできるソフトウェア。
本ノートでは Raspberry Pi への導入、LAN への適用(DHCP/DNS 設定)、運用上の注意点をまとめる。
なぜ重要か
- 端末ごとに拡張やアプリを入れなくても、ネットワーク全体で広告ブロックが効く
- 端末性能やブラウザ差に依存せず、家庭内の子機すべてに一括適用できる
- DNS レイヤでログ・可視化が可能になり、トラブル調査やドメインの細粒度制御がしやすい
詳細な説明
前提
- 対象: Raspberry Pi(常時稼働、固定IP推奨)
- ネットワーク: ルーター管理画面へアクセスできること
- 管理UI: AdGuard Home はデフォルトで http://
:3000 でセットアップ
手順
- Raspberry Pi の IP を固定化
- /etc/dhcpcd.conf で静的 IP を設定し、再起動する
- AdGuard Home のインストール
- 公式のパッケージ/ワンライナーで導入し、初期セットアップを完了
- 初期UI: http://
:3000
- ルーター設定(どちらか)
- DNS を AdGuard Home の IP に向ける
- もしくは DHCP サーバで配布する DNS を AdGuard Home にする
- 注: 一部機種では「ルーターの IP と同一サブネットの DNS を指定不可」等の制限あり(例: AC2600)
- その場合は「DHCP サーバの配布DNSとして AdGuard Home を指定」するのが現実解
- 動作確認
- クライアント端末で DNS が AdGuard Home を向いているか確認(ipconfig/ifconfig、ブラウザで広告ドメインブロックを確認)
- AdGuard Home のダッシュボードでクエリが流れているか確認
運用のポイント
- フィルタリストは最小限から開始し、ブロック誤検知が出たサイトのみ除外ルールで対応
- ルーターや IoT 機器のファーム更新などで DNS 固定が解除されていないか定期確認
- 障害時のため、端末側で「代替 DNS」を一時設定できる運用手順も用意しておく
よくある詰まりポイント
| 症状 | 原因 | 解決策 |
|---|---|---|
| 一部サイトが開かない | フィルタで誤ブロック | クエリログから対象ドメインを除外リストへ追加 |
| ルーターに DNS を設定できない | ルーター仕様制限 | DHCP の配布DNSを AdGuard Home にし、クライアントへ周知 |
| 管理UIに繋がらない | ポート未開放/AdGuard停止 | サービス状態確認、:3000 の初期セットアップ完了か再チェック |
| クライアントが旧DNSを使う | キャッシュ/固定設定 | 端末のネットワーク再取得、手動DNS設定の除去 |
参考資料
- 公式: https://adguard.com/
- Qiita: RaspberryPi を使った AdGuard Home 導入手順
- Adguard Homeをラズパイにインストール(作業ログ)