虽然搭树莓派的最初原因只是想使用 Google Home Mini,但这个跑起来后不可避免的就想用它来带其它设备上网,毕竟 iOS 装个 ss 客户端还是挺麻烦的不是?
研究一番,发现 tcp 流量分发异常简单
- sudo apt install ipset
- 然后创建中国地区的网络地址表,以及生成 ipset 的脚本;可以放在 cron 里每周更新一下
- 从 https://github.com/17mon/china_ip_list 下载来自 ipip.net 最专业的国内IP表
- echo "ipset -N chnroute hash:net maxelem 65536">chnroute.sh; chmod +x chnroute.sh; for i in `cat china_ip_list.txt`; do echo "ipset add chnroute "$i >>chnroute.sh; done
- 每次启动系统的时候首先执行一次 chnroute.sh,最后在 iptables 设置 bypass 的命令中,增加如下一行
- iptables -t nat -A SHADOWSOCKS -p tcp -m set --match-set chnroute dst -j RETURN
看其它人的配置,往往还有 ChinaDNS 一项;仔细思索了一下它号称的原理,觉得从逻辑上投毒同正常业务的DNS海内外解析无法分辨的,如果仅仅依赖一个 chnroute.txt 完全做不到信任新浪的国内解析但不信任谷歌的国内解析。。。所以就不部署它了
Topic:
技术
最新评论