了解如何评估防火墙过滤器
防火墙过滤器由一个或多个术语组成,术语在过滤器中的顺序非常重要。在配置防火墙过滤器之前,您应该了解交换机如何评估过滤器中的术语,以及如何根据术语评估数据包。
当防火墙过滤器由单个术语组成时,将按如下方式评估过滤器:
如果数据包符合所有条件,则执行语句中的
then操作。如果数据包符合所有条件,并且语句中未指定
then任何操作,则执行默认操作 accept 。如果数据包不符合所有条件,交换机将丢弃该数据包。
当防火墙过滤器由多个术语组成时,将按顺序评估过滤器:
在第一个术语中,将根据语句中的
from条件评估数据包。如果数据包与术语中的所有条件匹配,则执行语句中的
then操作并结束评估。不计算筛选器中的后续项。如果数据包与术语中的所有条件不匹配,则在第二个术语中根据语句中的
from条件评估数据包。此过程一直持续到数据包在后续术语之一中匹配语句中的所有
from条件,或者过滤器中不再有术语。如果数据包在不匹配的情况下通过过滤器中的所有术语,交换机将丢弃它。
语句中 from 条件的顺序并不重要,因为数据包必须与所有条件匹配才能被视为匹配。
图 1 显示了交换机如何评估防火墙过滤器中的术语。

from如果未在术语中包含语句,则所有数据包都将匹配该术语并由语句处理then。如果术语不包含 then 语句,或者语句中未配置 then 操作,则该术语接受任何匹配的数据包。
每个防火墙过滤器在过滤器末尾都包含一个隐 deny 式语句,该语句等效于以下显式过滤器术语:
term implicit-rule {
then discard;
}
因此,与防火墙过滤器中的任何术语都不匹配的数据包将被丢弃。如果配置的过滤器没有术语,则通过过滤器的所有数据包都将被丢弃。
长度至少为 64 字节的数据包支持防火墙过滤。