从 Wikipedia 中,我了解到电路级网关通过 TCP 握手来过滤非法流量,而应用级网关以某种方式过滤特定于应用程序的流量。
但我并没有真正看到区别——除了应用程序级网关似乎在更高级别的网络协议栈上运行这一明显事实之外。有人可以充实关键差异吗?
从 Wikipedia 中,我了解到电路级网关通过 TCP 握手来过滤非法流量,而应用级网关以某种方式过滤特定于应用程序的流量。
但我并没有真正看到区别——除了应用程序级网关似乎在更高级别的网络协议栈上运行这一明显事实之外。有人可以充实关键差异吗?
好问题。让我们这样想:
你要参加基础数学考试,门上的牌子上写着
“没有硕士水平的学生。不允许使用计算器。”
一个普通的检查员(防火墙)会要求你提供学生证,以确保你不是硕士生,然后他们会让你进来。一个看起来像你的硕士生走到门口,防火墙会记住这一点几分钟前他检查了他,他让他进来,因此破坏了考试的安全性。
在检查你的身份之后,电路级网关会给你一张水印纸,上面写着你已经被检查过,所以当你的分身必须出示水印纸时,他必须通过身份检查,并且他作为硕士生的真实身份将被揭露。
但是,应用程序级网关会让您( DPI ) 寻找计算器。由于计算器(特定于应用程序的命令)不是您身份的一部分,因此它是电路级网关无法理解的更高级别的东西。
应用级网关了解它支持的所有协议,它不关心您的 IP 是否在电路级白名单中,它可以读取您的FTP流量并确定您何时使用该delete命令并丢弃该确切数据包。它可以剖析您的HTTP流量并阻止您发送POST请求。