見出し画像

広告がどうしようもないので、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が使用され、広告ブロックが有効となります

いいなと思ったら応援しよう!