
広告がどうしようもないので、Pi-Holeにて家庭内LAN全部でAdblockした話
もう広告ブロック無しではインターネットは無理
現代ではインターネットは広告に満ち溢れており、スマホが主流となった現在では、スマホの画面50 %以上を占めるような広告が出るケースがある。邪魔なだけなら良いのだが、邪魔なだけではなくEvilなサイトへ誘導されることが予想される。
我が家でも、父親が怪しいサイトのドローンを購入しようとし、すんでのところでなんとか止めたことがあった。
もはやインターネットを広告ブロック無しに見るのは不可能であるといえるのではないか。
Pi-Hole

pi-holeは、DNSサーバとして動作し、DNSの名前解決にて広告ブロックを実施する。
Pi-HoleにてDNSブロックする前の表示は以下

Pi-Holeによって広告ブロックを有効にした画像

これは表示されていないだけでなく、余計な通信も行われないため、サイトの表示も高速になる。また、家族が変なサイトに巻き込まれないために現代では必須と考える。
自分んとしてはインターネットサイトの維持には広告が不可欠であると思うのであるが、こうもEvilな広告が多いため、家全体の広告ブロックを実施した。
Pi-Hole導入に必要なもの
低電力ホームサーバ(Dockerインストール済み)
家庭内サーバとして、今回はRaspberryPiを使用する。Pi-zeroでも動作しますが、常に動作させる都合上、有線LANで接続することがおすすめです。
知識として覚えておくこと
1.DHCPサーバは、同一セグメント内からのDHCP要求に対し応答するため、ルータのDNS設定によらず、同一セグメントに入れておけば動作する。
家庭環境ではセグメントがすべて同一であるケースが多いため、DHCPサーバがネットワークに接続されているだけで動作する
2.DHCPサーバによりDNSサーバのipアドレスが通知される
Pi-Holeの導入方法
1.Pi-HoleをDockerにて導入する
mkdir ~/pi-hole
cd ~/pi-hole
vim docker-compose.yml
2.docker-compose.ymlを以下のように記入。今回はWebパスワードをP@$$WORDとしています
services:
pihole:
container_name: pihole
image: pihole/pihole:latest
# For DHCP it is recommended to remove these ports and instead add: network_mode: "host"
ports:
- "53:53/tcp"
- "53:53/udp"
- "67:67/udp" # Only required if you are using Pi-hole as your DHCP server
- "80:80/tcp"
environment:
TZ: 'Asia/Tokyo'
WEBPASSWORD: "P@$$WORD"
volumes:
- './etc-pihole:/etc/pihole'
- './etc-dnsmasq.d:/etc/dnsmasq.d'
cap_add:
- NET_ADMIN
restart: unless-stopped
Pi-Holeを起動する
sudo docker compose up -d
WebコンソールにてPi-Holeを設定する
サーバのアドレスにアクセスして、Webコンソールを起動し、ログインする。

Setting -> DHCPより、DHCPサーバを有効にする

ルータ側のDHCPサーバを無効とする。

以上でPi-Holeの導入は完了です。接続端末の無線LANをOFF/ONすることでPi-Holeが使用され、広告ブロックが有効となります