2016年11月4日金曜日

EdgeRouter Xで広告ブロック

さて、新しく使い始めたEdgeRouter Xですが、やはり広告が邪魔というわけで、真っ先にその対策です。

個人的には広告は必要悪と思っています。ですが、物事には限度があるわけで、動く広告や、読んでる記事の上に浮かぶ広告があると、抹消したくなるのが人間の自然な反応という奴でしょう。

こんな奴ですね。

EdgeRouter Xでは以下がout of the boxで利用可能です。

  • ホスト名ベースのブロック
  • IPアドレスベースのブロック

ホスト名ベースのブロックのやり方は以下の通り。標準で動いているdnsmasqが、

/etc/dnsmasq.d/dnsmasq.adlist.conf

というファイルを読むため、そこに、

address=/ホスト名1/0.0.0.0
address=/ホスト名2/0.0.0.0
address=/ホスト名3/0.0.0.0

とひたすら書き連ねます。そうすると、家庭内からはそれらのホストへアクセスできない、つまりそれらのホストが提供している広告が見れなくなります。

上記ファイルを書くにはsudoが必要です。EdgeRouter X上の環境は全部簡易環境なので、作業はローカルでファイルを用意して、それをscpした後、ログインしてsudo cpするのが楽ちんです。書き終えたら、

$ sudo /etc/init.d/dnsmasq force-reload

として更新した設定を読み込ませます。ホスト名ベースのブロックは以上。


次は、IPアドレスベースのブロックです。まず、Firewallに外向きのルールを追加します。ここはGUIから操作できます。Firewall/NATから、Firewall Policiesで、Add Rulesetで外向きを追加します。デフォルト動作はacceptにして、条件にマッチした物だけをrejectします。



このrulesetの中に、Add New RuleでrejectするIPアドレスを登録します。今回はhttpの広告がターゲットなので、「TCPで、ポートが80で、特定のIPアドレス(/24などとしてネットワークも指定できます)をrejectする」としています。



購入しただけで、何も追加しなくても、広告がブロックできるEdgeRouter X、マジ有能(/・ω・)/

0 件のコメント:

コメントを投稿