我想要实现的最终目标是:阻止访问某些网站并查看 IP 地址使用的带宽。无需更改我员工的网关地址。
--
我们的互联网连接目前由 Cisco 路由器提供服务。Cisco 路由器还会分发 DHCP 地址。我没有此 Cisco 路由器的管理权限。我无法更改它的任何内容。
我想安装一个位于员工计算机和思科路由器之间的代理服务器。
当然,我不想让我的员工知道我正在设置代理服务器,所以最好他们的 IP 地址范围不会改变,他们的网关地址也不会改变。
我一直在研究 Squid 及其透明代理服务,但据我所知,它要求当 Cisco 路由器发放 DHCP 地址时,它必须将网关地址更改为我的代理服务器的 IP 地址。
然后,代理服务器将接收来自我员工的计算机的流量,然后代理服务器将有效请求转发到思科路由器。
对我来说这不是一个理想的解决方案。
我是否误解了 Squid 的工作原理或者是否有其他我可以实施的解决方案。
谢谢
答案1
使用 WPAD:http://en.wikipedia.org/wiki/Web_Proxy_Autodiscovery_Protocol
大多数 Windows 系统默认配置为使用 WPAD。IE、Chrome 和 Firefox 将遵守系统代理设置。假设您的用户位于管理员权限受限的 Windows 域中,他们将无法更改系统代理设置或 IE 代理设置,但他们仍可以根据需要更改 Chrome 或 Firefox 代理设置。但他们必须先知道他们正在通过代理。
代理的最大问题是,如果 Web 开发人员访问 http://localhost:someport 来查看其应用程序的原型,代理会说该端口无法访问。否则,WPAD 代理对天真的最终用户来说是相当透明的。
请注意,根据我的经验,Squid 等网络代理虽然很有用,因为 Squidguard 等程序可以阻止用户访问“禁止”网站,但由于当今网络上有大量 HTML5 和其他动态不可缓存内容,因此对减少网络流量几乎没有作用。虽然它们对于跟踪哪个 IP 地址连接到哪些内容很有用,但将 IP 地址和它所属的计算机的名称(以及用户)绑定在一起将需要一个记录该信息的 DHCP 服务器。Microsoft 的 DHCP 服务器会记录该信息。据我所知,Cisco 的服务器不会。