我正在使用 redsocks 重定向传入的非本地流量以将其转发到 socks5 代理。不幸的是,redsocks 不支持代理链,因此我尝试通过运行 2 个 redsocks 实例来扭转局面。我尝试使用 iptables 将外部数据包重定向到第一个 redsocks 实例,方法是:
sudo iptables -t nat -N REDSOCKS
sudo iptables -t nat -A REDSOCKS -p tcp -j REDIRECT --to-ports 12345
sudo iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDSOCKS
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDSOCKS
为了将新的数据包重新发送到第二个代理,我运行:
sudo iptables -t nat -N REDSOCKS1
sudo iptables -t nat -A REDSOCKS1 -p tcp -j REDIRECT --to-ports 12346
sudo iptables -t nat -A OUTPUT -p tcp --dport 443 -j REDSOCKS1
sudo iptables -t nat -A OUTPUT -p tcp --dport 80 -j REDSOCKS1
问题是,TCP 连接直接与最终目的地建立,而不是先与第二个代理建立,然后再与最终目的地建立。我也使用 microsocks 来运行代理服务器。您能帮我解决这个问题吗?谢谢,祝您有美好的一天。:D 第一个 redsocks 配置:
base {
//omitted
redirector = iptables;
}
redsocks {
local_ip = 0.0.0.0;
local_port = 12345;
ip = 127.0.0.1;
port = 1080;
type = socks5;
}
第二个redsocks配置:
base {
//omited
redirector = iptables;
}
redsocks {
local_ip = 127.0.0.1;
local_port = 12346;
ip = 34.77.235.223; //fictive IP
port = 1080;
type = socks5;
}
还