インターネットを使っていると必ずと言っていいほどWeb広告が出てくる。
中には本来見たいコンテンツになかなか辿り着けないほど煩わしいほど
罠が仕掛けられているようなサイトもある。
アドブロックみたいなアプリやブラウザの拡張機能を入れてもいいけど、
スマホだとなかなかそうはいかないわな。
なので、DNSサーバ側で広告のURLをブロックしてしまおうという仕組みで「Pi-Hole」と言うものがあるので、
それをDockerに入れてみた。
もちろんホストはRaspberryPi。
OCI上のDockerよりもRaspberryPiの方が頻繁に使ってるなぁ・・・。
docker-compose.yml
以下の通り設定した。
使うのはあくまでDNSサーバのみ。
version: "3" services: pihole: container_name: pihole image: pihole/pihole:latest ports: - "53:53/tcp" - "53:53/udp" - "8080:80/tcp" environment: TZ: 'Asia/Tokyo' PIHOLE_DNS_: '192.168.50.1;1.1.1.1;1.0.0.1' WEBPASSWORD: 'hogehoge' volumes: - '/docker/etc-pihole:/etc/pihole' - '/docker/etc-dnsmasq.d:/etc/dnsmasq.d' restart: unless-stopped
詳しい設定方法はGitHubのページを参照。
上位のDNSはルーター(192.168.50.1)とCloudflareのDNS(1.1.1.1、1.0.0.1)にした。
あとはWebGUIのポートは8080に変更。
WebGUIのパスワードも指定。
省略するとランダムで生成されるので、docker logsから確認。
WebGUI
"http://<RaspberryPiのIP>:8080"にアクセス。
すると以下のような画面が表示されるのでリンクをクリック。
パスワードを入力して「Log in」
ダッシュボードはこんな感じ。
だいたい直感的でわかりやすい。
あとはDNSサーバのアドレスをPi-Holeに向けてやれば良い。
家のルーターがDHCPサーバを兼ねているので、
DHCPの設定からDNSサーバを変更。
Web広告をブロック
DNSサーバを変更後、明らかにWeb広告の表示が減った。
ゼロではないが、大半の広告は表示されなくなった。
WebGUIのダッシュボードで見てみるとこんな感じ。
だいたいDNSクエリの10%くらいがブロックされている。
使っていくとパーセンテージは増えていくのかな??
とりあえずこれでしばらく様子見。
0 件のコメント:
コメントを投稿