Skip to content

unblock youku路由器進階篇, 區域網絡下所有裝置全自動解鎖!

karlcheong edited this page Aug 25, 2013 · 3 revisions

(如有關於路由伺服器的問題可至Issue #106 發表)

本文是簡便unblock youku路由器的進階應用 Dnsmasq DNS + privoxy 路由器反向代理

通過更改DNS返回的IP 把要解鎖url的域名指向privoxy架設的反向代理IP 反向代理再通過國內PROXY把結果回傳給用戶 區域網絡下所有裝置都不需任何設定就可以unblock youku

以下說明比較簡要, 但我想會一點*UNIX的都應該明白

要求: openwrt系統路由器 本人使用attitude adjustment 12.09

###1 SSH進去路由, 然後輸入指令安裝 privoxy

opkg update
opkg install privoxy

###2 把basicsetting里的設定文件解壓, 放到 /etc/privoxy

https://www.dropbox.com/s/su1p0j95igcycv1/reverseproxysetting.7z

password: karlcheong

###3 輸入指令啟動 privoxy

/etc/init.d/privoxy start

(可選:)輸入指令, 使路由啟動時自動運行 privoxy 代理

/etc/init.d/privoxy enable

###4 修改/etc/init.d/dnsmasq Dnsmasq啟動腳本, 在 第518行 done 的下面加上以下2句 令路由系統不使用本機運行的Dnsmasq DNS伺服器

  rm -f /tmp/resolv.conf
  ln -s /tmp/resolv.conf.auto /tmp/resolv.conf

即是修改成這樣子:

service_start /usr/sbin/dnsmasq -C $CONFIGFILE && {
	rm -f /tmp/resolv.conf
	[ $ADD_LOCAL_DOMAIN -eq 1 ] && [ -n "$DOMAIN" ] && {
		echo "search $DOMAIN" >> /tmp/resolv.conf
	}
	DNS_SERVERS="$DNS_SERVERS 127.0.0.1"
	for DNS_SERVER in $DNS_SERVERS ; do
		echo "nameserver $DNS_SERVER" >> /tmp/resolv.conf
	done
  rm -f /tmp/resolv.conf
  ln -s /tmp/resolv.conf.auto /tmp/resolv.conf

###5 打開 /etc/privoxy/basehosts, 把里面的這個IP 192.168.11.1 全部替換成你路由器的區域網IP

###6 修改 /etc/dnsmasq.conf Dnsmasq設定文件, 加入一行新的設定 令Dnsmasq 讀取basehosts 文件

addn-hosts=/etc/privoxy/basehosts

###7 重啟Dnsmasq 即可

/etc/init.d/dnsmasq reload

PS: 如果想限制privoxy只能代理需要解鎖之域名, 不代理其他網站, 請打開 /etc/privoxy/config 把 trustfile trust 前的註釋去掉即可