手机上 iptables 版本为 1.6.1,我自己测试感觉没有数据转发到代理端口。我的写法是这样的
iptables -t mangle -N TPROXY
iptables -t mangle -A TPROXY -d 0/8 -j RETURN
iptables -t mangle -A TPROXY -d 10/8 -j RETURN
iptables -t mangle -A TPROXY -d 127/8 -j RETURN
iptables -t mangle -A TPROXY -d 169.254/16 -j RETURN
iptables -t mangle -A TPROXY -d 172.16/12 -j RETURN
iptables -t mangle -A TPROXY -d 192.168/16 -j RETURN
iptables -t mangle -A TPROXY -d 224/4 -j RETURN
iptables -t mangle -A TPROXY -d 240/4 -j RETURN
iptables -t mangle -A TPROXY -m owner --uid-owner 代理程序的 uid -j RETURN
ip rule add fwmark 0x01/0x01 table 100
ip route add local 0.0.0.0/0 dev lo table 100
iptables -t mangle -A TPROXY -p udp -j TPROXY --on-port 代理程序监听端口 --tproxy-mark 0x01/0x01
iptables -t mangle -A TPROXY -p tcp -j TPROXY --on-port 代理程序监听端口 --tproxy-mark 0x01/0x01
iptables -t mangle -A PREROUTING -j TPROXY
以上命令执行完毕后感觉手机依然是走的直连。测试将最后一行替换为
iptables -t mangle -I PREROUTING -j TPROXY
依然没有变化。请各位大神指点。谢谢!
iptables -t mangle -N TPROXY
iptables -t mangle -A TPROXY -d 0/8 -j RETURN
iptables -t mangle -A TPROXY -d 10/8 -j RETURN
iptables -t mangle -A TPROXY -d 127/8 -j RETURN
iptables -t mangle -A TPROXY -d 169.254/16 -j RETURN
iptables -t mangle -A TPROXY -d 172.16/12 -j RETURN
iptables -t mangle -A TPROXY -d 192.168/16 -j RETURN
iptables -t mangle -A TPROXY -d 224/4 -j RETURN
iptables -t mangle -A TPROXY -d 240/4 -j RETURN
iptables -t mangle -A TPROXY -m owner --uid-owner 代理程序的 uid -j RETURN
ip rule add fwmark 0x01/0x01 table 100
ip route add local 0.0.0.0/0 dev lo table 100
iptables -t mangle -A TPROXY -p udp -j TPROXY --on-port 代理程序监听端口 --tproxy-mark 0x01/0x01
iptables -t mangle -A TPROXY -p tcp -j TPROXY --on-port 代理程序监听端口 --tproxy-mark 0x01/0x01
iptables -t mangle -A PREROUTING -j TPROXY
以上命令执行完毕后感觉手机依然是走的直连。测试将最后一行替换为
iptables -t mangle -I PREROUTING -j TPROXY
依然没有变化。请各位大神指点。谢谢!