Raspberry Piをネットワーク全体の広告ブロッカーに変える方法|Pi-hole導入ガイド
ノートパソコンやデスクトップPC向けの広告ブロッカーは数多く存在しますが、その多くはスマートフォンやタブレットなど他のデバイスには対応していません。この記事では、Pi-holeを使ってRaspberry Piを「ネットワーク全体に対応する広告ブロッカー」に変身させる方法を解説します。設定が完了すれば、ラップトップ、PC、スマホ、タブレットなど、ネットワークに接続されたすべてのデバイスで広告をブロックできるようになります。
補足:初めての方は、まずPi-holeとは何か、どのようなメリットがあるのかを解説した入門記事をチェックしておくと理解がスムーズです。
用意するもの
このチュートリアルを進めるには、以下のものが必要です。
- RaspbianがインストールされたRaspberry Pi(未インストールの場合は最新版を入手し、EtcherなどでmicroSDカードに書き込んでください)
- Raspberry Piに対応した電源ケーブル
- 外部キーボードと、それを接続するための手段
- Raspberry Piのモデルに応じたHDMIまたはmicro HDMIケーブル
- 外部モニター
- 有線LANケーブルまたはWi-Fi接続環境
必要な道具が揃ったら、さっそくネットワーク全体の広告ブロッカー作りを始めましょう。
Raspberry PiにPi-holeをインストールする
まだ接続していない場合は、外部キーボードやモニターなどの周辺機器をRaspberry Piに取り付け、電源に接続します。
Raspberry Piが起動したら、Pi-holeのインストールスクリプトをダウンロードします。Raspbianのツールバーにあるターミナルアイコンをクリックしてターミナルを起動し、以下のコマンドを入力してください。
curl -sSL https://install.pi-hole.net | bash
Enterキーを押すと、Raspbianがスクリプトをダウンロードし、Pi-holeのセットアップ処理が始まります。しばらく待つと、Pi-holeのセットアップ画面が自動的に起動します。
Enterキーを押しながらイントロダクション画面を進めていくと、「Wi-Fi(wlan0)」と「Ethernet(eth0)」のどちらでPi-holeを動作させるかを尋ねられます。
矢印キーでwlan0またはeth0を選択し(本チュートリアルではWi-Fiを使用)、Enterキーを押します。
Google・Cloudflare・OpenDNS:DNSプロバイダーを選ぶ
次に、上流DNSプロバイダーを選択します。これは広告以外のドメインへの問い合わせに応答する役割を担うサーバーです。
Pi-holeは以下のプリセットDNSプロバイダーに対応しています。「custom」を選べば独自のDNSサーバーを指定することも可能です。
- Google(ECS)
- OpenDNS(ECS)
- Level3
- Comodo
- DNS.WATCH
- Quad9(フィルタリングあり、DNSSEC対応)
- Quad9(フィルタリングなし、DNSSEC対応)
- Quad9(フィルタリングあり+ECS)
- Cloudflare
本チュートリアルではGoogleを使用しますが、お好みのプロバイダーを選んで問題ありません。
Pi-holeはどのブラックリストを使うべき?
次に、望ましくないコンテンツを識別・ブロックするために使用するリストを指定します。
特別な理由がない限り、デフォルト設定のまま進めるのがおすすめです。
IPプロトコル:IPv4かIPv6か(それとも両方?)
IPv4とIPv6のどちらを選んでも動作しますが、できるだけ多くの広告をブロックしたい場合は、両方とも選択したままにしておきましょう。
静的IPアドレスの設定
現在のネットワーク設定をPi-holeの静的アドレスとして使用します。画面に表示される情報に問題がなければ、矢印キーで「Yes」を選択してEnterキーを押します。免責事項が表示されるので内容をよく読み、同意できるなら「OK」を選択してください。
Web管理画面でPi-holeを監視する
続いて、Pi-holeのWeb管理インターフェースをインストールするかどうか尋ねられます。この管理画面では、ネットワーク上でPi-holeがどう動作しているかを詳細に確認できるため、インストールしておくことを強くおすすめします。
Web管理画面をインストールする場合は、指示に従って「lighttpd Webサーバー」も一緒にインストールしましょう。
Pi-holeのログ記録設定
Pi-holeのログ機能は無効化することもできますが、有用な情報が得られるため有効のままにしておくのがおすすめです。
さらに、FTLのプライバシーモード(統計情報に含める情報レベル)の選択を求められます。以下から選びましょう。
- Show everything:すべての情報を表示する
- Hide domains:すべてのドメインを非表示として記録・保存する
- Hide domains and clients:ドメインを非表示にし、クライアントを0.0.0.0として記録する
- Anonymous mode:最も匿名性の高い統計以外の詳細をすべて隠す
- Disabled statistics:クエリカウンターを含むすべての統計処理を無効化する
Pi-holeの管理画面にログインする
セットアップ完了時に、Pi-holeのWeb管理画面のアドレスとログインパスワードが表示されます。必ずメモしておきましょう!
表示されたURLにアクセスすると、Pi-holeの標準的なWebインターフェースが表示され、パスワードを使ってログインできます。
Web管理画面は主に以下のセクションで構成されています。
- Query log:DNSサーバーに対する直近のクエリ履歴を表示します。
- Whitelist:Pi-holeにブロックさせたくないドメインを登録できます。
- Blacklist:一部の広告がすり抜けてしまう場合、原因となるドメインを特定できれば手動でブラックリストに追加できます。
- Disable:一時的または恒久的にPi-holeを無効化できます。
- Update lists:広告ブロックリストを手動で最新版に更新できます。
- Query adlists:特定のURLが広告ブロックリストに含まれているか確認できます。
- Tail pihole.log:ログファイルを確認し、Pi-holeがリクエストをどう処理しているか把握できます。
- Settings:上流DNSプロバイダーの変更を含む各種設定を行えます。
ここで紹介したのはほんの一例です。時間をかけて管理画面をいろいろと探索してみる価値は十分にあります!
トラブルシューティング:「could not resolve host」エラーが出たとき
Pi-holeの設定中、ターミナルに以下のようなエラーが表示されることがあります。
「Could not resolve host
FTL Engine not installed」
このメッセージが表示された場合は、次のコマンドを実行してください。
sudo nano /etc/resolv.conf
Nanoエディターでresolv.confファイルが開きます。ここに選択したDNSプロバイダーのIPアドレスを追記します。例えば本チュートリアルのようにGoogleをDNSプロバイダーとして使う場合、「8.8.8.8」を追記します。
nameserver 8.8.8.8
変更を保存するにはCtrl + Oを押し、確認画面でYを入力します。
Ctrl + Xでresolv.confファイルを閉じます。
その後、以下のコマンドでPi-holeのセットアップを再実行します。
curl -sSL https://install.pi-hole.net | bash
これでエラーなくセットアップを完了できるはずです。
ルーターを更新してネットワーク全体の広告ブロッカーにする
いよいよ、デバイスやルーターの設定をPi-hole経由に変更します。ネットワークに接続されたすべてのデバイスで広告をブロックしたいなら、ルーターのDNS設定をRaspberry PiのIPアドレスに向ける必要があります。
ルーターのDNS設定変更手順は機種によって異なりますが、一般的な流れは以下の通りです。
- ルーターの管理ページにアクセスします。
- ユーザー名とパスワードでログインします。不明な場合はメーカーの初期値を使っている可能性が高いので、メーカーサイトや付属のマニュアルで確認してください。
- 「DNSサーバー」や「DHCPサーバー」という言葉を含むタブ・メニュー・セクションを探します。「詳細設定」の中に隠れていることもあります。
- プライマリDNSサーバーをRaspberry PiのIPアドレスに変更します。IPアドレスがわからない場合は、Raspbianのターミナルで
hostname -Iを実行すれば確認できます。
お使いのルーター固有の手順については、メーカーの公式サイトや付属マニュアルを参照してください。
特定のデバイスだけで広告をブロックする方法
ルーターではなく、個別のデバイスやOSごとにDNS設定を変更することもできます。
1. Windowsの場合
WindowsでDNS設定を変更する手順:
- 「コントロールパネル」を開きます。
- 「ネットワークとインターネット → ネットワークと共有センター → アダプターの設定の変更」へ移動します。
- 設定したい接続を選択します。
- 右クリックして「プロパティ」を開きます。
- 「ネットワーク」タブを選択します。
- 「TCP/IPv4」または「TCP/IPv6」を選択します。
- 「プロパティ → 詳細 → DNS」と進みます。
- 「次のDNSサーバーのアドレスを使用する」を選択します。
- アドレス欄をRaspberry PiのIPアドレスに書き換えます。
これでWindows PCがPi-holeによる広告ブロックを使うように設定されました。
2. Linuxの場合
Linuxユーザーは以下の手順で設定します。
- 「システム → 設定 → ネットワーク接続」を開きます。
- 設定したい接続を選択し、「編集」をクリックします。
- 「IPv4設定」または「IPv6設定」タブを選択します。
- 「DNSサーバー」欄にRaspberry PiのIPアドレスを入力します。
- 「適用」をクリックして変更を保存します。
あるいは、「/etc/resolv.conf」ファイルを直接編集してDNS設定を変更することも可能です。
3. macOSの場合
macOSでDNS設定を変更する手順:
- メニューバーのAppleロゴをクリックします。
- 「システム環境設定 → ネットワーク」を開きます。
- 編集したい接続を選択します。
- 「詳細…」をクリックします。
- 「DNS」タブを選択します。
- 「+」アイコンをクリックし、Raspberry PiのIPアドレスを入力します。
- 「適用 → OK」で変更を保存します。
以降、Pi-holeがすべてのリクエストをブラックリストと照合し、可能な限り広告をブロックしてくれます。
4. iPhoneの場合
iPhoneやiPadをお使いの場合:
- 「設定」アプリを開きます。
- 「Wi-Fi」を選択し、リストから自宅のネットワークをタップします。
- 「DNS」欄を選択します。
- 既存のDNSサーバーをすべて削除し、Raspberry PiのIPアドレスに置き換えます。
5. Androidの場合
Androidで広告をブロックする手順:
- 「設定」アプリを開きます。
- 「Wi-Fi」を選択します。
- 変更したいWi-Fiネットワークを長押しします。
- 「ネットワークを変更 → 詳細オプション」を選択します。
- 「DHCP」をタップし、「静的」に切り替えます。
- 「DNS 1」にRaspberry PiのIPアドレスを入力します。
- 「保存」をタップします。
Raspberry Piを広告ブロッカーとして使っている間も、同時にWi-Fiアクセスポイントや個人用Webサーバーとして活用することもできます。ぜひ試してみてください。
-
Raspberry PiをRuneAudioで本格Hi-Fiオーディオシステムに変える方法
RuneAudioは、自らを「組み込みハードウェアをHi-Fiミュージックプレーヤーへと変える、無料のオープンソースソフトウェア」と定義しています。Raspberry PiにRuneAudioをインストールすれば、複数の音源から音楽を再生できる本格的なHi-Fiメディアセンターへと生まれ変わります。 さらに便利なのは、RuneAudioが独自のWebサーバーを立ち上げる点です。ローカルネットワーク経由でユーザーインターフェースにアクセスできるため、パソコンのブラウザや無料アプリを使って、家の中のどのデバイスからでもHi-Fiシステムを操作できます。 用意するもの セットアップに必要なものは以
-
古いテレビをスマートテレビ化する5つの方法【デバイスの選び方も解説】
最近販売されているテレビのほとんどはスマートテレビであり、インターネットに接続して、Netflix、Prime Video、Spotify、YouTubeなどのサービスで音楽や動画を楽しめます。しかし、まだ十分に使える古いテレビを持っていて、今すぐ新しいスマートテレビに買い替えるつもりはない——そんな場合、どうすればよいのでしょうか。従来型の「非スマート」なテレビのまま、充実したストリーミングアプリや最新機能から取り残されるしかないのでしょうか。答えはノーです。非スマートテレビをスマートテレビに変える方法は複数あり、しかもあまりお金をかけずに実現できます。まずは、テレビが「スマート」と呼ばれる