项目二十一--便携式广告过滤路由器
Shengkai81@gmail.com(讨论 | 贡献)2015年10月3日 (六) 08:18的版本 (Created page with "{| style="width: 800px;" |- | 大家都有这样的经历,经过一个星期紧张而忙碌的上班时间,终于到了周末,打开电影网站,追一下漏掉的美...")
大家都有这样的经历,经过一个星期紧张而忙碌的上班时间,终于到了周末,打开电影网站,追一下漏掉的美剧或者电影。要等30s秒的广告!顿时 心情不好了,想看的意愿都减半了。遇到这种情况,我们能不能装个广告过滤插件呢?当然可以。但是问题又来了,是把插件装载电脑上还是装载路由器上呢? 作为一名geek,安装在路由器上才会更有成就感。好吧,本项目就是介绍如何让MicroWRT变成一个带有广告过滤功能的路由器。 广告过滤方案目前在openwrt上实现广告过滤功能,有多种方案,总的来说有dnsmasq和nginx,一种是走代理,一种是重定向。而开源的过滤广告方案有openGG,adbyby等。 本教程主要使用adblockplus提供的过滤列表。
固件定制延续我们以前教程的思路,我们首先介绍一下,如何在openwrt上配置实现广告过滤功能的软件。在这个方案中,我们要用到dnsmasq,所以先要配置它,具体如下图所示: 将编译好的固件烧写到microWRT上,重新启动。 配置MicroWRT1. 登陆到MicroWRT,并运行下面的命令,从adblockplus官网上下载列表,当然前提是要参考我们的基础教程,将microWRT设置成可以上外网。 wget --no-check-certificate -qO - https://easylist-downloads.adblockplus.org/chinalist+easylist.txt | grep ^\|\|[^\*]*\^$ | sed -e 's:||:address\=\/:' -e 's:\^:/127\.0\.0\.1:' > /etc/adblock.conf 通过下面的命令,将列表写入dnsmasq grep conf-file /etc/dnsmasq.conf || echo -e "\nconf-file=/etc/adblock.conf" >> /etc/dnsmasq.conf 重启dsnmasq /etc/init.d/dnsmasq restart 2. 修改crontab 通过SSH登陆到microWRT上,crontab -e 编辑计划任务,加入如下内容: 每天19.30自动更新列表: 30 19 * * * wget --no-check-certificate -qO - https://easylist-downloads.adblockplus.org/chinalist+easylist.txt | grep ^\|\|[^\*]*\^$ | sed -e 's:||:address\=\/:' -e 's:\^:/127\.0\.0\.1:' > /etc/adblock.conf 每天6.30自动重启dnsmasq 30 6 * * * /etc/init.d/dnsmasq restart 当然,玩家也可以对照自己的时间雪球更改即可,其中,时间参数分别如下: [minute] [hour] [day of month] [month] [day of week] [program to be run] 具体的cron用法,可以问问“度娘“ 通过上面的设置,我们的MicroWRT就能实现广告过滤的功能的。赶快动手试试吧。。 |