最讨厌广告神马的!商家为了推销商品,使用广告无可厚非,但是动不动就是弹出广告,什么增大加粗人流减肥网页游戏等等等等只让我恶心!哥用的是一款支持DD-WRT系统的无线路由器,已经刷到最新的r19519版本。下面就以Buffalo WZR-HP-G300NH2为例,讲讲如何妙用DD-WRT路由器拦截广告。
原理:在路由器上,自动从Chinalist项目上获取最新的广告域名列表并更新,然后利用 Dnsmasq 服务,把广告的域名都指向不存在的网址,如 127.0.0.1。
这里必须表扬一下ChinaList Lazy,这是原本用于Adblock Plus 插件(Mozilla Firefox和Google Chrome上最优秀的反广告插件)的广告过滤列表,现在成功移植到DD-WRT路由器上,可以过滤掉大部分的网页广告。
下面就是具体操作步骤,不懂就留言问我吧。确保你使用的是DD-WRT系统的无线路由器,并且能正常上网!
1. 进入 DD-WRT 网页管理界面,Services(服务) -> Services(服务),DNSMasq 和 Local DNS(本地 DNS) 均设置成 Enable (启用),滚到页面底部保存。
2. 进入 DD-WRT 网页管理界面,Administration (管理)-> Commands(命令),贴 入如下脚本后,记得保存为Save Startup(保存为启动指令)。稍微解释下脚本的意思,就是开机之后,自动获取反广告列表,并且在路由器上拦截。
#!/bin/sh logger WAN up script executing sleep 30 if test -s /tmp/dnsmasq.ads then rm /tmp/dnsmasq.ads fi logger Downloading China Lazy List wget -O - https://easylist-downloads.adblockplus.org/easylistchina+easylist.txt | grep ^||[^*]*^$ | sed -e 's:||:address=/:' -e 's:^:/127.0.0.1:' > /tmp/dnsmasq.ads grep conf-file /tmp/dnsmasq.conf || echo -e "nconf-file=/tmp/dnsmasq.ads" >> /tmp/dnsmasq.conf logger Restarting dnsmasq killall dnsmasq dnsmasq --conf-file=/tmp/dnsmasq.conf
3.最后进入系统指令页面,Administration (管理)-> Management (管理)找到 Cron ( 计划任务 ), 点击 Enable(启用), 然后在下面“Cron 附加任务”(Additional Cron Jobs)贴入
* 1 * * * root /tmp/.rc_startup
在页面底部保存设置,并且重启路由器,搞定!这段代码的作用是每隔一小时自动更新一次反广告列表。清空游览器缓存+重启系统,打开新浪、网易等大型门户网站,应该能看不到大量广告了吧。不过必须申明下,漏网之鱼肯定有的,效果肯定比不上Adblock Plus。