アプリ入れたくない病ゆえに
ブラウザでニュースやブログなんかを見ていると文中にドババッ!と埋め込まれる広告、邪魔ですよね。スマホで複数ウィンドウを開いてブラウジングしているととても目ざわり!!
えっ・・・広告、多すぎ? とか思いますよね。(今もあるのかな?あの広告)
ブラウザの広告ブロック機能を使えばだいたいは消せるけど、その機能を有効化したブラウザでサイトを開かないと意味がない。各アプリの内部ブラウザ(例えばLINEでリンクを開いた時とかにLINEのアプリの中でページが開かれる機能)で開かれてしまうと、広告ブロックは動作しない。別のブラウザだから。
かと言って、スマホやPCにあまりアプリケーションを入れたくない・・・入れないでなんとかしたいな・・・という発想で、解決を模索していました。
サイトの広告表示を効率的に阻める「IPアドレス書き換え」
ウェブサイト上の広告は、広告設置者の利便性から、サーバーであらかじめ取得した広告データを表示するのではなく、クライアント(アクセスしている人のブラウザ)に広告データを取りに行かせる構造になっています。本文のフリをすることが構造上不可能なので、ブラウザのアドブロッカーは広告だけを機械的にきれいに除去できるわけです。
広告データは広告事業者のサーバー上にあるため、ニュースサイトやブログサイトで表示するには、広告データを参照するためのURLが(インターネットの構造上)必要です。
広告のURLというのは、例えば、
https://ad.example.com/foo.js
みたいなやつです。
ところで、ご存知の通り、インターネットにつながっている機器には必ず「IPアドレス」が割り当てられます。上記の「ad.example.com」というドメインも、ブラウザがアクセスする時にIPアドレスに変換されます。絶対に。
IPアドレスへの変換には、電話帳のようなデータベースを使います。この仕組みをDNSといいます。昔で言う電話交換手のようなサーバーが無数にあって、相互に連絡を取り合いながらドメインとIPアドレスを変換するわけです。
有線ルーターもWi-Fiルーターも、家庭用機器であれば絶対にDNSを使います。そして、ルーターには「ドメインとIPアドレスの紐づけを手動で登録する」という機能もふつうはついていて、ルーターはまずその登録データからIPアドレスを探します。つまり、ルーターが広告事業者のドメインを必ず間違えるように設定できるわけです。
(せっかく記事を書くので、あまりインターネットに詳しくない人にも意味を理解してもらいたくて、雑ですが簡単に説明しました。)
虚偽の電話帳
広告事業者のドメインをまとめたものがどこかにないかと探したら、よさげなものがありました。hostsファイルです。ありがたく頂戴しましょう。ライセンスはCC3.0です。
https://adaway.org/hosts.txt [ダウンロードしたもの]
hostsファイルというのは、コンピューター内のDNSのデータベースの一つです。ユーザーが手作業で設定を追加するためのテキストファイルです。よく、エンジニアが非公開のテストサーバーを利用するような場合に使われます。
- Windowsの場合C:\Windows\System32\drivers\etc\hosts
参考: 【Windows】hostsファイルとは、hostsファイルの場所、hostsファイルの編集・書き換え方法 - Macの場合
たぶん /etc/hosts にある。
/private/etc/hosts
参考: 【macOS】hostsファイルの場所と編集方法、書き換え方法
これを自分のPCのhostsファイルにコピペすればそのまま使えるのですが、この方法では自分のPCでしかブロックできません。ルーターに設定しましょう。
設定方法はルーターによって異なるのでここでは説明しません。詳しくない方は・・・すみませんががんばってください。
ちなみに 127.0.0.1 というIPアドレスは「自分自身」を指す特別なアドレスです。PCであれば自機(って今は言わないか)、ルーターであればルーター自身です。広告データがあるわけがないので通信は失敗し、広告は表示されないことになります。
あと、大事なことですが、そのルーターを介した通信すべてで設定が有効になります。広告が見たい人の権利は侵害されますのでご注意ください。そんな人いる?
よく使われているドメイン
上記hostsファイルの内容を全部設定する必要はないです。どのみち、こんなにたくさんルーターに保存できません。
ウチでは(自力で見つけたものを交えて)以下だけ設定しています。太字のドメインは必須だと思います。
- 33.asahi.com
- adv.asahi.com
- asm.asahi.com
- imp.asahi.com
- cmertv.com
- googletagmanager.com
- googletagservices.com
- outbrain.com
- somewrite.com
- afl.rakuten.co.jp
- doubleclick.net
- outbrain.org
ほかのやりかた
安定稼働するサーバーがもしあるなら、プロキシサーバーをLANに立てる方法もアリですよね。そこまでやれる人はわざわざこの記事を読もうとは思わないでしょう。できる人、カッコイイです。憧れます。一度はわたしもプロキシサーバーで設定してみたいです。
もっとセキュリティを気にする人は自分でブラウザを作るらしいです。ホントかな?