Proxy
根據本地埠,通過不同的公共 IP 在 Squid 中進行代理轉發
我希望通過不同的公共 IP 轉發持久的 HTTP 請求。它連接到伺服器並在伺服器持續流式傳輸數據時保持連接。
這需要對應用程序透明;路由邏輯需要僅限於與目標埠號(或主機:埠)建立 HTTP 連接。
我正在考慮讓 Squid 服務在 LAN IP 上偵聽多個埠;如果應用程序連接到埠A,則通過網卡A轉發請求;對於埠 B 連接,通過 nic B 轉發;等等。
這是適合 Squid 的任務嗎?在哪裡可以找到有關配置的一些提示?我在閱讀 Squid 文件時迷失了與此相關的任何內容(特別是如何映射本地埠-> 不同的輸出 NIC)。
是的,Squid 可以。
http_port 3128 http_port 3129 http_port 3130 acl port1 myport 3128 acl port2 myport 3129 acl port3 myport 3130 tcp_outgoing_address x.x.x.1 port1 tcp_outgoing_address x.x.x.2 port2 tcp_outgoing_address x.x.x.3 port3
如果每個 IP 地址有不同的網關,則還必須配置源路由:
ip rule add from x.x.x.1 table 10 ip rule add from x.x.x.2 table 11 ip route add table 10 default via GW1 ip route add table 11 default via GW2 ip route add default via GW3
在 squid.conf 中,重要的是設置:
server_persistent_connections off
否則我的程序行不通。