- ブラウザー拡張、DNSフィルタリング、クラウドVPNを組み合わせ、オンライン広告をほぼ完全にブロックするための個人的な実験過程を説明
- uBlock OriginとFirefoxの組み合わせを基本として使い、最小限のフィルターリストと自作フィルターを併用
- Pi-holeをDockerで運用し、モバイルアプリの広告までDNSレベルでブロック、WireGuardで安全に接続
- クラウドベースVPNを活用し、トラフィックをクラウド事業者経由で迂回させることで広告表示を減らせる効果を確認
- 3年以上の実利用の結果、ほとんどのプラットフォームで広告が消え、DNSフィルタリングとブラウザーブロックだけで99%のブロックが可能
広告ブロックの始まり
- 数年前から、あらゆる形のオンライン広告を取り除くためにさまざまな方法を実験
- 単純なバナーや動画広告だけでなく、可能な限りすべての広告を取り除くことを目標に設定
- 何年にもわたる試行と観察を経て、現在の満足できるブロック環境を構築
- 広告ブロックには、よく知られた方法とあまり知られていない方法が混在しており、一部は設定と保守管理が必要
ブラウザー拡張
- uBlock OriginとFirefoxの組み合わせを使用し、最も効果的な広告ブロック方法だと評価
- ChromiumベースのブラウザーはManifest V3への移行により、広告ブロック機能が制限されている
- フィルターリストは最小限に維持
DNSフィルタリング
- DNSフィルタリングは、ブラウザー拡張ではブロックできないモバイルアプリ広告を補完
- 広告ドメインをDNSレベルで遮断し、アプリ内広告の読み込みを防止
- Pi-holeとAdGuard Homeが代表的なセルフホスト型ソリューション
- Pi-holeをDockerでインストールして使い、WireGuardを通じて個人ネットワークからのみアクセス
- The Firebogのブロックリストを参考にしつつ、正常なドメインのブロックを防ぐため**許可リスト(allowlist)**を維持
クラウドベースVPN
- クラウド事業者を通したVPNトラフィックのルーティングで広告表示が減る効果を確認
- 広告プラットフォームがクラウドIPを**広告詐欺(fraud)**の可能性として認識し、広告を表示しない
- 例として、競合が広告予算を浪費させる行為を防ぐため、クラウドトラフィックへの広告配信を制限している
- 欠点として、一部サイトでCloudflare CAPTCHAやHTTPエラーが発生する可能性
- 必要に応じてVPNを切ってアクセスし、一定期間実際のIPを見せると広告が再び表示されることがある
- DigitalOceanの5ドルDropletにWireGuardをインストールして使用し、Hetzner、Azure、Google Cloud、AWSなども利用可能
その他の便利なツール
- 広告ブロック以外の煩わしい要素を取り除くための拡張を推奨
- Cookieポップアップのブロック: Consent-O-Matic
- CAPTCHAの自動処理: Buster
- SponsorBlockで動画内のスポンサー区間を自動スキップ、TV向けバージョンも存在
- iOSではBackground App Refreshの無効化を推奨
- 一部アプリがこれを悪用してユーザーデータを収集している
- ReVancedによるアプリのパッチも可能だが、セキュリティリスクがあるため機密性の高いアカウントでは使わない
個人的な経験と結果
- 上記の方法を3年以上使った結果、ほとんどのプラットフォームで広告表示はほぼない
- プラットフォーム別のブロック方法の要約
- YouTube: uBlock Origin, NewPipe または Invidious
- Instagram: uBlock Origin, クラウドVPN(効果が出るまで1週間〜1か月)
- Twitch: クラウドVPN(数日で効果)
- TikTok: uBlock Origin, クラウドVPN(数時間で効果)
- AdMobベースのアプリ: DNSブロック
- DNSフィルタリングとブラウザーブロックだけで約99%の広告をブロック可能、残り1%はクラウドVPNで補完
2件のコメント
Pi-holeやAdGuardだけでもだいたい全部ブロックできていたと思いますが……さらにやる必要があったんでしょうか?
Hacker Newsのコメント
特別なことはなくて、要は オープンプラットフォーム を使うことが肝心
デスクトップでは Firefox、Android(Graphene) では Fennec を使えば uBlock Origin が完璧に動くので、YouTube を含めどこでも広告を見ずに済む
Android では NewPipe でバックグラウンド再生とダウンロードができるので、実質「無料の YouTube Premium」みたいに使っている
個人的には Unbound で DNSベースのフィルタリング もしているが、この組み合わせなら別になくてもよい
スマートTVのような機器にはカメラやマイクがあるので、そもそもインターネットに接続していない
以前、32ビットで 1GB RAM のミニ Dell ノートPCで TinyCore を使って最新の Firefox を動かしてみた
自分は YouTube Premium に慣れすぎていて、人々が広告を見ていることを忘れるくらいだ
長いインタビュー、講義、ポッドキャストを主に見ていて、その大半をオフラインでダウンロードしている
月 8 ドルの中でいちばん惜しくないサブスク料金だ
有料で見ても動画内に広告的な区間があるし、フォーマット自体が 注意力搾取型 なので、このプラットフォームでは勝ち目がない
Shorts を消して Alphabet の妙なデザイン変更を元に戻せるので、ずっと快適だ
iOS では Safari + uBlock Origin + Vinagre 拡張で広告なしのバックグラウンド再生が可能だ
インフレに対して賃金はそのままなのに、こういう値上げは不公平だと感じる
追加の小技をいくつか
その代わり NextDNS をプライベート DNS サーバーとして使えば問題なく動く
自分も Firefox + uBlock Origin の組み合わせを使っていて、広告は完璧にブロックされる
ほかの人たちもこの組み合わせを使っているのか気になる
Edge でも uBlock Origin がサポートされているので、広告なしで使える
VPN をクラウドに載せるアイデアも良さそうなので、Wireguard や Tailscale で試してみようと思っている
家族が Google TV アプリを使っているのだが、UI を改善する方法があれば知りたい
uBlock ベースだが広告を実際にクリックして、広告主に損をさせる仕組みだ
多くの人がこれに乗り換えれば、監視資本主義 そのものが崩れるかもしれない
自分は AdNauseam を使って、広告をただブロックするのではなく、自分の広告プロファイルを「汚染」する方を好んでいる
クリック率は高めに(100% ではない)設定してある
https://adnauseam.io/
FAQ によれば XHR リクエストでクリックを模倣しているだけで、広告ネットワークはこうしたパターンを簡単に検知できる
実際にはほとんどがフィルタされ、広告主に損害を与えられない
FAQ リンク
最近は Pi-hole や AdGuard Home を自前で動かす価値があるのか疑問だ
年 18 ドルで NextDNS が使えて、電気代より安く、エンタープライズ級のインフラと冗長性まで提供される
家ではキャッシュ DNS リゾルバさえあれば十分で、Wireguard でつないで Pi-hole にアクセスするのはやりすぎだ
自分も NextDNS を使っていて、家には単純なキャッシュリゾルバだけ置いている
関連する話は このコメント に書いた
Firefox + uBlock Origin の組み合わせで 平和なブラウジング体験 を満喫している
特に目新しいことはない。Firefox + uBlock はもう標準だ
Google が Manifest v3 に移行して以降、Chrome はもう勧められない
Cloudflare が Recaptcha を置き換えるにつれて、関連する拡張もだんだん消えつつある
ここに User-Agent Switcher を追加すると良い
一部のサイトは Chrome しか許可しないが、実際には Firefox の方がうまく動くことも多い
たとえば自分の ISP のライブTVストリーミングサイトは Firefox の方が安定しているのに、User-Agent を変えないと接続をブロックされる
どうしてわざわざこんな形でブラウザを制限するのか理解しがたい
User-Agent Switcher 拡張
Chrome Mask リンク
Chrome Mask は JS 関連の問題も処理してくれるらしいので、試してみるつもりだ
Apple TV では iSponsorBlockTV を Synology NAS にインストールして使っている
YouTube Premium と一緒に使うと、広告のないすっきりした環境になる
動画の途中に出てくる VPN や生産性アプリの宣伝のような スポンサー区間 を自動でスキップしてくれるので満足している
iSponsorBlockTV リンク
Brave + NextDNS/ControlD の組み合わせが、家庭全体(TV、スマホ、コンピュータ)で最も効率の良い広告ブロックソリューションだ
Pi-hole も良いが、この組み合わせの方がずっと安くて管理しやすい
無料の広告ブロック DNS もあるが、カスタマイズ ができない
もしかして NextDNS にフィルターリストを追加していないのかな?