DD-WRT 路由器攔截廣告教程(圖文)
您當(dāng)前位置:首頁 > 紅訊頻道 > 網(wǎng)絡(luò)技術(shù)
紅軟基地 推薦
2012-10-19
在這個秋風(fēng)送爽手腳冰涼的夜里我又不出意外地失眠了,拿 Pad 下棋。因 iPhone 不在身邊,狂輸不止。期間底部廣告頻彈,不時誤點(diǎn),跳到瀏覽器還要再切回。往復(fù)如是,心生厭念,磨刀霍霍向廣告。臭棋簍子多少都是這樣,拉不出屎怪茅坑歪。說到茅坑,有一次一只熊在坑上蹲著,旁邊一只兔子。熊問你掉毛么兔子驕傲地說不掉熊說我沒帶紙就拿兔子擦了屁屁。過了幾天熊又來蹲坑,旁邊一只棕色松鼠,熊又沒帶紙感嘆到最近沒看見兔子啊。松鼠聽見了說尼瑪我就是前幾天那只兔子!
天是越來越冷了,秋褲得穿啊。聽說,不穿秋褲的,冬天能凍出尾巴來。到時候還要到醫(yī)院去剪掉;疼不說,還要在不知多大歲數(shù)的女護(hù)士面前脫褲子,多難為情。這都是題外話,咱們書歸正傳,剪掉以后在傷口上貼個創(chuàng)可貼比較好,不然容易凍瘡。
好了,來看農(nóng)村魔幻現(xiàn)實(shí)主義的可以回欄了,下面是技術(shù)內(nèi)容了。
那為什么要用路由器擋廣告呢?別的不行么?
一說擋廣告,有那么一小撮人,最先想到“Adblock Plus”這類瀏覽器擴(kuò)展。方便,裝上不用管。清靜,裝上不用管。且不提還有裝不上這擴(kuò)展的 I 什么啊 O 什么啊,除了瀏覽器那可還有好幾車軟件連著網(wǎng)呢。那下載的、聊天的、輸入的、衛(wèi)士的,沒十幾個廣告那么大用戶界面上放什么?放少了都沒面子。丟人。連圖片兒,帶鏈接,那一定得用廣告,把窗口給填滿了。這些,多牛掰的瀏覽器擴(kuò)展都歇菜。
稍微有點(diǎn)兒錢,再買個手機(jī),別管蘋果鴨梨的,反正能上網(wǎng)。裝幾個免費(fèi)的 App,廣告就跟貞子一樣一個勁兒從屏幕里頭往外拱,一不小心就鉆出來了。
再有點(diǎn)兒閑錢,買個平板,別管蘋果鴨梨的,反正能上網(wǎng)。要不擋擋廣告,就跟把電梯間那塊兒大屏幕從墻上掰下來,掛身上,差不多。
所以,把廣告攔截在路由器上,對各種設(shè)備上各種程序各種 App 的廣告統(tǒng)統(tǒng)管用,客觀上也減少流量增快網(wǎng)速。
手頭兒是價(jià)值一百二十塊錢的 Buffalo g300nv2,小,破,丑,舊。這路由器就一好處,刷不死。當(dāng)然如果有人愿意拿 Linksys E4200 跟我把 g300nv2 換去練手,我大概也會完全同意吧。
這個牛叉閃閃的閃光點(diǎn)有一個辛酸的來源,它其實(shí)是一個致命的安全缺陷。此路由在開機(jī)后幾秒會毫不抵抗地接受任何數(shù)據(jù),于是碰上行家,剛通電的時候,隨便灌點(diǎn)數(shù)據(jù)進(jìn)去,就能讓它徹底癱瘓丟失所有配置,還要找正確的 firmware 再灌回來。自然和大多數(shù)領(lǐng)域一樣,不懂行的更讓人恐懼。只要不懂行的高跟鞋踩上一腳,或者澆上半杯可樂,灌什么也救不回來了。
于是給它灌了 DD-WRT,下面就以 DD-WRT 為例,講講如何用路由攔截廣告。
原理自然很簡單,就是把送廣告的域名都指向 127.0.0.1,然后定期自動更新廣告域名列表。你可能想到 hosts 文件,原理是一樣的,這里用到路由器上廣泛存在的 dnsmasq 服務(wù)。SpeedTao
首要問題是,廣告域名列表從哪里來。國外確有一些更新頻繁的廣告域名列表,可我們連自己的廣告都看不完,哪有時間看他們的。好在我們有 chinalist,尤其是 chinalist lazy,可從里面把純域名的摘出來,中文為主英文兼顧還定期更新,理想列表。做成啟動腳本定期更新就好了。
下面就是具體實(shí)現(xiàn)了,全網(wǎng)絡(luò)界面操作,不沾命令行,逃不過會稍微解釋一下:
1. 進(jìn)入 DD-WRT 網(wǎng)頁管理界面,Services(服務(wù)) -> Services(服務(wù)),DNSMasq 和 Local DNS(本地 DNS) 均設(shè)置成 Enable (啟用)。滾到頁面底部保存。SpeedTao
2. 進(jìn)入 DD-WRT 網(wǎng)頁管理界面,Administration -> Commands,貼入如下腳本后,Save Startup:
#!/bin/sh
logger WAN up script executing
if test -s /tmp/dnsmasq.ads
then
rm /tmp/dnsmasq.ads
fi
logger Downloading China Lazy List
wget -O - http://adblock-chinalist.googlecode.com/svn/trunk/adblock-lazy.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. 上面其實(shí)是做了一個啟動腳本,在路由器每次啟動時運(yùn)行。意思是,下載 China List Lazy,轉(zhuǎn)換生成 dnsmasq 配置文件,再告知 dnsmasq 調(diào)用。SpeedTao 最高.
4.進(jìn)入 DD-WRT 網(wǎng)頁管理界面,Administration -> Management, 找到 cron,enable, 然后在下面”Additional Cron Jobs”貼入
* 1 * * * root /tmp/.rc_startup
頁面滾到底,保存,重啟路由器。成功?汕蹇諡g覽器緩存后訪問幾個大網(wǎng)站看看,雖然效果沒有 Adblock Plus 徹底,但也相當(dāng)明顯的。何況,可以打開 Adblock Plus 攔截漏網(wǎng)之魚么。
來源:Truth Telling