方永、南天紫雲

道亦有道

linux本机透明代理
2015年12月01日

tsocksproxychains4配合sshshadowsocks固然可以半透明的代理, 可是咱要的是透明代理,折腾一番,记录如下:

一、 大致思路:

与shadowsocks自动fucking墙相似,shadowsocks中的ss-redir作为iptables重定向的接收者, dnsmasq标记IP到ipset中,由于本机环境不能连到公网,只个别的IP可以连接,故需要代理 所有的连接。需要注意在shadowsocks的配置中server要设置为IP。

二、 配置:

  1. dnsmasq
    listen-address=127.0.0.1
    port=53
    bind-interfaces
    user=nobody
    group=nobody
    pid-file=/var/run/dnsmasq.pid
    domain-needed
    bogus-priv
    no-hosts
    resolv-file=/etc/resolv.dnsmasq
    no-poll

    ipset=p   # 全部标记
    ipset=/x.com/ # 排除此域名
  1. iptables:
    ipset -N p iphash
    iptables -t nat -A OUTPUT -p tcp -m set --match-set p dst -j REDIRECT --to-port 49281