![还有什么正当理由(在 2011 年)使用代理服务器而不是 NAT 来共享互联网连接吗?](https://linux22.com/image/555345/%E8%BF%98%E6%9C%89%E4%BB%80%E4%B9%88%E6%AD%A3%E5%BD%93%E7%90%86%E7%94%B1%EF%BC%88%E5%9C%A8%202011%20%E5%B9%B4%EF%BC%89%E4%BD%BF%E7%94%A8%E4%BB%A3%E7%90%86%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%80%8C%E4%B8%8D%E6%98%AF%20NAT%20%E6%9D%A5%E5%85%B1%E4%BA%AB%E4%BA%92%E8%81%94%E7%BD%91%E8%BF%9E%E6%8E%A5%E5%90%97%EF%BC%9F.png)
代理在 NAT 出现之前就已经存在,因此在互联网早期,它们是仅使用单个公共 IP 即可让整个网络联机的流行方式。NAT 最初需要复杂的软件和/或硬件才能运行,因此可以理解的是,一些组织仍然使用代理服务器来提供访问。
然而,在过去十年中,NAT 变得非常流行,几乎市场上的每一款路由器都配备了该功能。该硬件速度非常快且价格低廉,除非您尝试使用 50 美元的家用路由器来运行 5000 人的办公室,否则您不会遇到问题。防火墙也足够智能,可以进行复杂的身份验证,轻松允许不同的用户在一天中的不同时间访问不同的服务(即使最基本的家用路由器也经常内置此功能)。事实上,NAT 可能比代理服务器更容易设置和管理。
在我的工作中,我仍然经常与使用代理服务器提供互联网访问的客户打交道,以及随之而来的由身份验证、以什么帐户服务运行等引起的问题。这包括一些非常大和古老的公司(所以我想他们的网络在十多年前就安装了,并且一直保持这种状态)以及只有几年历史的相对较新的组织。
所以我的问题是,为什么仍然有那么多地方使用代理服务器来达到此目的?
答案1
代理仍然被使用,主要有以下几个原因:
- 内容过滤
- 验证
- 缓存
虽然 NAT 和代理在某些方面相似,但它们在不同的层上运行,因此在许多方面有所不同,并且它们满足不同的需求。NAT 主要是第 3 层技术,而 HTTP 代理是第 7 层技术。
答案2
NAT 在防火墙上运行,因此作用于 IP 数据包,而代理在应用程序级别处理 Web 请求,因此能够过滤、分析和记录这些请求。这为代理提供了一些您不需要的功能不能路由器上有:
- 身份验证。代理可以识别(并接受/拒绝和记录)用户帐户,而防火墙只能看到 IP 地址。
- 应用程序级过滤。在这种情况下,URL 过滤和内容过滤;代理可以分析流经它的 Web 请求并根据其内容采取行动,而防火墙只能阻止或允许特定的 IP 地址。
- 恶意软件防护。代理可以检查网页中是否存在恶意内容。
- 日志记录。代理可以记录 HTTP 请求和响应,包括用户访问的完整 URL。同样,防火墙只能看到 IP 地址和 TCP/UDP 端口。
- 缓存。如今动态内容太多,缓存的作用不大,但仍有助于减少网络流量。
另一方面,代理仅对 HTTP(有时是 FTP)流量起作用,因为它是专门为此而设计的;如果您需要任何其他类型的互联网流量,则仍然需要 NAT。
此外,由于周围存在大量混合防火墙/代理设备和软件,因此引起了很多混淆;但即使它们在同一设备上运行,它们也是两种根本不同的功能。
答案3
更有可能的是,他们使用代理服务器来监控和阻止网络流量。有许多过滤工具可以直接连接到代理,这非常容易。此外,使用代理,您可以缓存常用文件。当我在大学工作时,每台计算机都有一个可路由的 IP,但我们仍然使用 squid 来减少流量。
答案4
由于路由设备提供的附加功能,我能够理解作者的问题。WatchGuard 和 SonicWALL 提供了多种选项,它们可以从设备中提供 Web 过滤服务、防病毒、反垃圾邮件和其他服务。不同之处在于,它们可以完成所有这些操作,而无需您在浏览器中配置代理设置。尽管 Web 过滤器从技术上讲是代理服务器(因为它查看的层),但无需配置浏览器设置使其感觉更像是 NAT。
在高端,我认为专用网络过滤器与光纤通道相比,扩展性更好,无缝性更强。在低端,您可以使用这些多设备之一获得更具成本效益的一体化解决方案。