我的公司使用 HTTP 代理,所以我必须配置我的工具的几个配置文件才能通过代理访问互联网。
当用户在家时,他们将无法使用该代理(除非他们使用 VPN 连接)。是否可以模拟该代理(相同地址,相同端口)但使用用户的直接家庭连接?
有没有更好的方法来处理这种代理/移动用户情况?
我的公司使用 HTTP 代理,所以我必须配置我的工具的几个配置文件才能通过代理访问互联网。
当用户在家时,他们将无法使用该代理(除非他们使用 VPN 连接)。是否可以模拟该代理(相同地址,相同端口)但使用用户的直接家庭连接?
有没有更好的方法来处理这种代理/移动用户情况?
不要这样做 - 像(几乎)其他人一样使用 WPAD!
WPAD 允许客户端自动检测其当前网络的代理设置。
对于 IE,这意味着您为 LAN 连接属性选中“自动检测设置”。
在这之后:
WPAD 是通过 DHCP 选项 252 和/或将主机名 WPAD.yourdomain.com 指向托管文件 /wpad.dat 的 Web 服务器或代理的 DNS 条目实现的。
看起来您应该能够在您和 Internet 之间设置一个带有代理的 Linux 机器。然后添加一些 iptables 规则,将任何对您公司代理的 IP 地址的请求重定向到在本地系统上运行的代理。
我猜你下班时带着一台笔记本电脑回家(并带着这个代理配置回家)。
如果您在家中控制自己的路由器和 DNS 服务器,则可以很容易地完成此任务。如果没有,那么您最好在家时取消配置代理。
您需要使用代理。如果你有一个备用的盒子可以在家里安装 Linux,你可以启动类似IPCop Linux或任何数量的其他带有 Squid Cache 代理的小型 Linux 发行版。在继续之前,请确保您已启用 Squid 并且可以正常工作。
如果您通过 DNS 名称(即“proxy.company.com”)引用代理,那么您需要获取该名称以在您的家庭 LAN 上解析。最简单的方法是在您的家庭 LAN 上设置 DNS 服务器并为“proxy.company.com”创建一个区域,其中包含一个引用名称“@”和代理计算机 IP 地址的 A 记录。
如果您通过 IP 地址引用代理,您将不得不做一些网络地址转换游戏。此时,您可能最好使用基于 Linux 的机器作为您的路由器/互联网网关。您可以在 iptables 防火墙中执行 NAT 规则,将请求转换到位于 123.4.5.6、端口 8080 的示例公司代理服务器到本地 Squid 缓存、端口 3128,如下所示:
iptables -t nat -A PREROUTING -d 123.4.5.6 --dport 8080 -j REDIRECT --to-ports 3128
如果您不熟悉 DNS、代理等的工作原理,这对您来说将是一次学习体验。
Fiddler是一个代理。我不确定它会做你想做的事,但它是所有请求的代理。
我想到了另一个想法。
与其在家中设置另一个代理,不如在笔记本电脑上安装代理更好。在本地系统上运行的代理上配置所有需要使用代理的客户端。当您在工作时,让您的本地代理将所有内容转发到业务代理,当您在家时,允许您的代理直接建立连接。
这个名字让我忘记了,但我确信我在某个地方看到了一个专门为此目的而设计的程序。
并非如此,代理连接的请求处理方式与直接到主机连接的处理方式不同。
你有几个选择: