Proxy
Squid 4.2 - 每個客戶端/使用者的不同出站 IP
我一直在玩一些不同的轉發代理軟體,主要是 CCProxy 和 Squid Proxy/Cache。我擁有的是一個專用伺服器,它有一個單獨的 NIC,並分配了多個 IP。一個 IP 是靜態的,其餘的是動態的。靜態 IP 充當主地址,這是我訪問代理伺服器的方式,其他是用於網路抓取和其他任務的動態 IP 地址。我在 CCProxy 中創建了一個代理,它允許您將使用者連結到特定的出站 IP 地址,這對我正在做的事情非常有用,允許我將不同的任務分配給不同的 IP。
那麼我想知道這是否可以在 Squid Proxy 中完成?
我喜歡 Squid 的可定制性,但我真的可以使用此功能。
在此先感謝,喬
這樣做的選項是
tcp_outgoing_address
:允許您根據發出請求的使用者的使用者名或源地址將請求映射到不同的傳出 IP 地址。
“傳出IP地址”實際上意味著“源IP”。現在您可以選擇一個acl通過任何可用的方式來區分您的使用者,客戶端的 IP (
acl ... src ...
)、簡單的代理身份驗證(auth_param
+basic_ncsa_auth
) 等。範例改編自文件,使用源 IP 作為選擇器,其中 squid 伺服器將擁有
192.0.2.0/24
LAN 中的各種 IP 及其主 IP192.0.2.1
。將此添加到典型範例中squid.conf
:acl allowed_clients src 198.51.100.0/24 http_access allow allowed_clients acl dedicated_client1 src 198.51.100.174 tcp_outgoing_address 192.0.2.174 dedicated_client1 tcp_outgoing_address 192.0.2.10 allowed_clients tcp_outgoing_address 192.0.2.5
將允許客戶端
allowed_clients
,並讓他們使用傳出 IP192.0.2.10
,除了客戶端將從198.51.100.174
那裡得到192.0.2.174
。在此範例之外的其他位置配置的任何其他客戶端都將使用192.0.2.5
,並且永遠不會使用伺服器的主 IP。