问:UDP通讯在我的状态检查防火墙中不能被屏蔽以便进行状态检查。IP表中的一个进程会产生同样的结果吗?
专家答:你说得对。使用严格的状态检查时不能屏蔽UDP通讯的。那是因为UDP是一个没有连接的协议,不能保持进程的状态。这个协议与TCP协议有很大区别。TCP协议使用三次握手建立和断开连接。
然而,包含IP表的最现代的防火墙把UDP协议当作面向连接的协议同样对待。如果你创建一个规则允许一个方向的UDP通讯,这个防火墙将允许相关的返回通讯。
让我们考虑一个例子。假设你决定允许出网的DNS通讯使用UDP端口53。在它的状态表上,这个防火墙将跟踪与这个规则匹配的任何请求。这台DNS服务器的UDP应答将允许发送到那台客户机。
然而,没有三次握手,这个防火墙不知道什么时候从其状态表中删除这个入口。要解决这个问题,防火墙通常使用一个定时器,在这个连接停止活动一段时间之前允许返回的通讯通过。这段时间通常有几分钟。一旦防火墙达到那个停止活动的时间限制,它就从状态表中删除这个入口。
|