パソコンやスマホ(ブラウザーやアプリ)で広告を表示させないことができたらいいと思いませんか?
表示がなくなるだけではなく、無駄な通信をなくすことができます。
広告によっては子供に見せられないようなものもありますし、大人でも各種広告はわずらわしいものです。変なアドウェアが入ることを防止することにもなります。
hostsファイルを編集することで実現できます。
hostsファイルの説明として、
「TCP/IPを利用するコンピュータにおけるホスト名のデータベースで、IPアドレスとホスト名の対応を記述したテキストファイル」
とWikipediaに書かれていますが、ようするに、px.a8.netというサーバーのIPアドレスが12.34.111.111ですよということを(名前サーバーに聞いて知るのではなく)明示的に指定するためのファイルです。
数字で構成されたIPアドレスを知ることができれば、データがいくつものルーター経由で何とか行き先にたどり着くことができるわけです。
・・・まぁ、この説明で理解できる人はその道の人しかいないでしょう(笑)
まぁ細かいことは気にせず…
(参考画像:hostsファイルを英語版メモ帳で開いた例 #で始まる行はコメント行(無効な行)になります。)
※上で、facebook.comのIPアドレスは127.0.0.1ですよと指定されています。これでそのPCからfacebook.comにアクセスできなくなります。facebook中毒の人にはいいかもしれませんね…笑
パソコンの場合
C:¥Windows¥System32¥Drivers¥Etc にhostsファイルがあります。
これを、アクセサリの中にあるメモ帳やSakura Editorのようなテキストエディターで開いて、特定のアドレスにはアクセスできないようにします。
例えば、
0.0.0.0 px.a8.net
という行を追記します。0.0.0.0の部分は、127.0.0.1(自身のコンピューターを意味する特別なIPアドレスです)でもかまいません。px.a8.netは0.0.0.0という場所にありますよと指定するわけです。そして0.0.0.0へ行こうとしても何も見れないというわけです。
px.a8.net の部分はブラウザーの「ソースを表示」機能を使って探します。
hostsファイル変更後は、再起動しなくても保存するだけで有効になります。
こちらに数百の主要サイトの行を入れたhostsファイルを置きました。右クリック|名前を付けて保存 で保存できます。
なお、パソコンの環境によっては、DNS Clientというサービスを停止する必要があります。田+Rキーで、services.mscと打ってOKを押し、DNS Clientというサービスをダブルクリックして、「手動」にします。
また、上記hostsファイルでは、YouTubeでコメントを書き込めない(Googleの宣伝を表示しないようにしているため)など、不都合も発生すると思います。その場合は、C:¥Windows¥System32¥Drivers¥Etcにエクスプローラーでアクセスして、hostsファイルを別のファイル名に一時的に変えればすぐに元の状態に戻ります。
Androidスマホの場合
まず、root権限がないとできません。スマホ改造マニア以外はあきらめましょう。
hostsファイルは /system/etc にあります。
これを自動的に更新してくれる野良アプリ(ストア以外でインストールするアプリ)があります。
Adaway (Download apkという部分でapkファイルをダウンロードします)
というアプリです(root権限必要)。
しかし、アメリカ人向けなので、日本人向けの広告には十分に対応していない場合があります。
その場合、Netstat Plusという無料アプリを入れて(Google Playにあります)、
(参考画像:Netstat Plusの画面)
今どのサイトにアクセスしているのか調べて、手動でhostsファイルを更新することになります(ESファイルエクスプローラーなどを使って)。
なお、上のNetstat Plusの画面で、青字でYouTubeと書いてあるのは、通信させているアプリの名前です。2行目がIPアドレスとポート番号で、3行目が相手のホスト名(+使用プロトコル)になります。自分が使用しているアプリの広告を非表示にするにはこの3行目のホスト名をhostsファイルに追加してあげます。
広告非表示に成功した方は、この投稿のコメントにて、新規のホスト名のご報告をお願いします!!
知識がある人がトクをするのがインターネットです!賢く使いましょう。