發現快取主機大約一天需要 3 元電費, 決定試試分享器加掛快取軟體.
設備:
- ASUS N10U (軔體: Tomato Firmware 1.28.0000 MIPSR2-123 K26 USB VPN (Shibby))
- USB 隨身碟一支
步驟:
- 把 USB 隨身碟接在 N10U 上, 並格式化成 ext3 格式(mkfs.ext3 /dev/sda)
- 在 Tomato 圖形介面, 把隨身碟 mount 進來(格式化後第一次需要手動, 以後會自動 mount , 預設的 mount 目錄在 /tmp/mnt/sda )
- 建立擴充功能專用的目錄: mkdir /tmp/mnt/sda/opt
並掛上 mount -o bind /tmp/mnt/sda/opt /opt - 下載擴充功能: cd /opt
wget http://tomatousb.org/local--files/tut:optware-installation/optware-install.sh - 改為可執行並開始執行: chmod u+x optware-install.sh
./optware-install.sh - 更新可擴充套件清單: ipkg update
- 安裝 Squid : ipkg install squid
- 修改 Squid 設定檔(在 /opt/etc/squid/squid.conf ):
http_port 3128 transparent
cache_mem 0 MB
(由於網路上有很多修改方式, 其實應用的環境不盡相同, 不一定要改.) - 執行看看: /opt/etc/init.d/S80squid start
- 既然目的是 transparent proxy , 就要把 http 連線轉送到 proxy :
modprobe ipt_REDIRECT
iptables -t nat -A PREROUTING -i br0 -p tcp --dport 80 -j REDIRECT --to-port 3128 - 然後用 netstat -n 觀察, 確定 http 的連線都有經過 proxy 了.
而以上是第一次設定時的步驟, 之後只有幾個步驟, 而可以寫在 Script :
- (免) mount USB 隨身碟: 預設值是開機時自動 mount . (只要確認 mount 目錄即可)
- mount 之後執行:
mount -o bind /tmp/mnt/sda/opt /opt
/opt/etc/init.d/S80squid restart
modprobe ipt_REDIRECT - WAN UP 之後執行:
iptables -t nat -A PREROUTING -i br0 -p tcp --dport 80 -j REDIRECT --to-port 3128
這樣沒有意外的話, 就有 transparent proxy 的功能, 讓手機不會一直發熱了....