Squid 代理上的多 IP 路由

Squid 代理上的多 IP 路由

我已经在具有 4 个 IP 地址的服务器上安装了 Squid Proxy。例如

  • 192.123.0.10
  • 192.123.0.11
  • 192.123.0.12
  • 192.123.0.13

192.123.0.10是主 IP。我希望能够:

将我的浏览器代理设置为指向列出的四个 IP 中的 1 个,并让 squid 使用该对应 IP 作为其传出 IP 地址

或者

将我的浏览器代理设置为指向列出的四个 IP 中的 1 个,并让 squid 从列表中的传出 IP 中随机选择

有任何想法吗?


编辑以澄清:

举个例子。假设我将浏览器设置为指向192.123.0.10,我访问的任何网站都应该将我的 IP 地址视为192.123.0.10。这有效。然后,如果我将浏览器更改为指向192.123.0.11,我访问的任何网站都应该将我的 IP 地址视为192.123.0.11,但它看到的却是第一个 IP 。和 也是192.123.0.10如此。192.123.0.12192.123.0.13

答案1

找到了一种方法。在 squid 配置中,我为每个端口设置了 4 个 http_port 值和一个 acl:

acl portA myport 8080
acl portB myport 8081
acl portC myport 8082
acl portD myport 8083
http_port 8080
http_port 8081
http_port 8082
http_port 8083

然后我根据传入的端口重定向传出的 IP 地址:

tcp_outgoing_address 192.123.0.10 portA
tcp_outgoing_address 192.123.0.11 portB
tcp_outgoing_address 192.123.0.12 portC
tcp_outgoing_address 192.123.0.13 portD

然后,在我向某个网页发出请求之前,我会更改浏览器代理设置中的端口,然后他们看到的 IP 地址就会发生变化。

唯一的问题是它似乎有一个缓存。更改代理端口后,我需要等待几分钟才能反映新的 IP 地址。

答案2

好的,明白了,基本上你需要在传出的代理端口前面放置一个反向代理,创建一个由四名成员组成的 VIP,使用类似粘性循环的方式在“客户端”之间共享这些 IP。

相关内容