规划要创建的防火墙过滤器数量
如何增加防火墙过滤器的数量
您可以通过多种方式增加设备上的防火墙过滤器数量:
-
(QFX5220)要创建超过 512 个出口 VLAN 过滤器,请将第一个 VLAN ID 指定为 6,第二个 VLAN ID 指定为 7,第三个 VLAN ID 指定为 8 ,依此类推。对于您配置的每个 VLAN,该数字将增加 1,并一直持续到 VLAN ID 1029。如果要创建的出口 VLAN 过滤器少于 512 个,但希望这些过滤器中的术语总数超过 512 个,请确保以相同的方式对 VLAN ID 进行编号。否则,允许的术语或筛选器的总数将小于 1024,并将保持在 512。
-
从 Junos OS 19.1R1 版开始,您可以使用该选项将
egress-to-ingress
QFX5110上的出口 VLAN 防火墙过滤器数量从 1024 个增加到 2048 个。您可以在层次结构的[edit firewall]
语句下from
包含此选项。从 Junos OS 演化版 19.4R2 开始,通过在层次结构级别的语句
[edit system packet-forwarding-option firewall]
下eracl-profile
添加egress-scale
选项,您可以在QFX5220上配置多达 2000 个出口防火墙过滤器。此功能仅在出口方向(退出设备的路由流量)受支持。配置此功能时,请考虑以下事项:
-
您无法将具有相同匹配条件的过滤器应用于不同的出口 VLAN 或第 3 层接口。
-
您无法在 GRE 接口上应用出口扩展。
-
如果数据包匹配具有不同限定符的多个过滤器,并且您应用于不同的出口接口,则可能会导致不可预测的行为。
-
您只能在全局模式下配置该
egress-scale
选项。新的 CLI 配置将以全局模式提供。一旦用户在出口规模(出口到入口)模式下配置 ERACL 组,他将无法以旧方式配置 ERACL,即不使用 IFP tcam 空间。换句话说,将不支持混合模式下的 ERACL。
-
中药胺
对于运行 Junos OS 20.3R1 或更高版本的 QFX5120-48Y 和 EX4650 交换机,您可以将环路接口上的环路过滤器术语数从 IPv6 的 384(默认)增加到 768,IPv4 的环路过滤器术语数从 384(默认)增加到 1152。使用在 [编辑机箱] 层次结构级别设置环路防火墙优化 CLI 以启用优化。此命令会导致 FPC 重新启动和服务中断。有关 CLI 的信息,请参阅 https://www.juniper.net/documentation/us/en/software/junos/cli-reference/topics/ref/statement/chassis-loopback-firewall-optimization.html 。
用于防火墙过滤器的三元内容寻址存储器 (TCAM) 分为容纳 256 个术语的片。配置防火墙过滤器时,内存片中的所有术语必须位于相同类型的过滤器中,并沿相同方向应用。提交筛选器后,将立即保留内存片。例如,如果创建端口过滤器并将其应用于输入方向,则会保留仅存储入口端口过滤器的内存片。如果仅创建并应用一个入口端口过滤器,并且该过滤器只有一个术语,则此切片的其余部分将闲置,并且不可用于其他过滤器类型。
在 EVPN 环境中,QFX5200 系列交换机最多支持 512 个 TCAM 条目。
例如,假设您创建并应用 256 个入口端口过滤器,每个过滤器一个术语,以便填充一个内存片。这样就剩下两个内存片可用于入口过滤器。(在本例中,最大入口项数为 768。如果随后使用一个术语创建并应用入口第 3 层过滤器,则会为入口第 3 层过滤器保留另一个内存片。和以前一样,切片的其余部分未使用,不可用于不同的筛选器类型。现在有一个内存片可用于任何入口过滤器类型。
现在假设您创建并应用 VLAN 入口过滤器。最后一个内存片是为 VLAN 入口过滤器保留的。入口过滤器的内存分配(再次假设每个过滤器一个项)为:
-
切片 1:填充了 256 个入口端口过滤器。不能再提交任何入口端口过滤器。
-
切片 2:包含一个带有一个术语的入口第 3 层过滤器。您可以在入口第 3 层过滤器中再提交 255 个术语。
-
切片 3:包含一个带一个术语的入口 VLAN 过滤器。您可以在入口 VLAN 过滤器中再提交 255 个术语。
这是另一个示例。假设您创建了 257 个入口端口过滤器,每个过滤器一个术语,也就是说,您创建的术语比单个内存片所能容纳的术语多一个。应用筛选器并提交配置时,筛选器内存分配为:
-
切片 1:填充了 256 个入口端口过滤器。您无法再应用任何入口端口过滤器。
-
切片 2:包含一个入口端口过滤器。您可以在入口端口过滤器中再应用 255 个术语。
-
切片 3:此切片未分配。您可以在任何类型的入口过滤器(端口、第 3 层或 VLAN)中创建和应用 256 个术语,但所有过滤器必须属于同一类型。
上述所有示例也适用于出口过滤器。不同之处在于使用四个内存切片,因为 IPv4 和 IPv6 第 3 层过滤器存储在单独的切片中。出口过滤器的内存切片与入口过滤器的内存切片大小相同,因此最大过滤器数相同 (1024)。
避免配置太多过滤器
如果违反其中任何限制并提交不符合要求的配置,Junos OS 将拒绝过多的过滤器。例如,如果配置 300 个入口端口过滤器和 300 个入口第 3 层过滤器并尝试提交配置,Junos OS 将执行以下操作(同样假设每个过滤器一个术语):
-
接受 300 个入口端口过滤器(将它们存储在两个内存片中)。
-
接受它处理的前 256 个入口第 3 层过滤器(将它们存储在第三个内存片中)。
-
拒绝剩余的 44 个入口第 3 层过滤器。
在重新启动设备之前,请确保从配置中删除过多的过滤器(例如,剩余的 44 个入口第 3 层过滤器)。如果重新启动配置不合规的设备,则很难预测重新启动后安装了哪些筛选器。使用上述示例,可能会安装最初拒绝的 44 个入口第 3 层过滤器,并可能拒绝最初接受的 44 个端口过滤器。
配置 TCAM 错误消息
如果缺少 TCAM 空间且无法安装防火墙过滤器,则可以将交换机配置为通过以下方式发送错误消息:
-
输入
set system syslog file filename pfe emergency
将错误消息发送到系统日志文件。 -
Enter
set system syslog console pfe emergency
以向控制台发送错误消息。 -
输入
set system syslog user user-login pfe emergency
以向 SSH 终端会话发送错误消息。
如何使用配置文件增加防火墙过滤器的规模
配置防火墙过滤器时,防火墙过滤器配置中的术语语句提供了一组广泛的匹配条件。匹配条件是数据包必须包含才能被视为匹配的字段和值。您可以根据需要定义一个或多个匹配条件。当数据包与过滤器匹配时,设备将执行术语中指定的操作。防火墙过滤器的可扩展性通常取决于所使用的匹配条件的数量。
在典型的部署方案中,只需使用匹配条件的子集。引入配置文件后,您可以使用具有预定义匹配条件的可用防火墙过滤器配置文件之一来增加用于实现最大规模的防火墙过滤器数量。
您可以为系列交换和基于以太网的交换配置防火墙过滤器配置文件。使用 [编辑系统数据包转发选项防火墙] 层次结构级别的配置文件配置语句来配置防火墙过滤器配置文件。
当您通过选择一个配置文件或从一个配置文件移动到另一个配置文件来更改防火墙过滤器配置文件时,数据包转发引擎将重新启动,这会导致流量中断。
下表介绍了防火墙过滤器配置文件以及用于基于 inet 和以太网的交换的预定义匹配条件。
家族类型 | 防火墙过滤器配置文件 | 匹配条件(预定义) | 配置层次结构 |
---|---|---|---|
inet (IPv4/IPv6) | profile1 |
IP 源前缀列表 协议 下一个标题 源端口 目标端口 第一个片段 是片段 ICMP 代码 ICMP 类型 基于 TCP 建立 TCP 初始 TCP 标志 |
[edit system packet-forwarding-options firewall profiles inet profile1 ] |
profile2 |
IP 源地址 IP6-源地址 IP 源前缀列表 IP6-源前缀列表 协议 下一个标题 源端口 目标端口 第一个片段 是片段 ICMP 代码 ICMP 类型 基于 TCP 建立 TCP 初始 TCP 标志 DSCP 优先 流量类 啧啧�� 跳数限制 |
[edit system packet-forwarding-options firewall profiles inet profile2 ] |
|
以太网交换 | profile1 |
源-MAC-地址 目的地 MAC 地址 |
[edit system packet-forwarding-options firewall profiles ethernet-switching profile1 ] |
配置文件2 |
源-MAC-地址 目的地 MAC 地址 醚型 IP 源地址 IP 源前缀列表 IP 协议 源端口 目标端口 下一个标题 |
[edit system packet-forwarding-options firewall profiles ethernet-switching profile2 ] |
|
选择防火墙过滤器配置文件时,必须应用属于预定义匹配条件子集的匹配条件。如果应用的匹配条件不属于防火墙过滤器配置文件的预定义匹配条件子集,则会发生提交错误。例如,如果选择 profile1
inet 筛选器并将匹配条件 ip-destination-address
应用 为 ,这不是预定义匹配条件的一部分,则在提交操作期间将看到一个错误, ip-destination-address
指出匹配不是 inet 筛选器的一部分 profile1
。
您可以使用 show pfe filter hw profile-info
CLI 命令查看防火墙过滤器配置文件的详细信息。
要实现最大的防火墙过滤器规模,建议应用接口级别(第 2 层或第 3 层)过滤器,并在不同数据包处理管道的接口上平均分配过滤器。每组接口都映射到数据包处理管道,该管道处理在这些接口上接收的数据包。在这种情况下,防火墙过滤器将安装到映射到相应接口的数据包处理管道的 TCAM 内存空间。
当数据包进入接口时,防火墙过滤器会在退出出口接口之前根据匹配条件对数据包处理管道中的数据包执行过滤操作。在多个数据包处理管道的情况下,当数据包通过多个接口进入设备时,防火墙过滤器会对通过相应数据包处理管道的数据包执行过滤操作。让接口级过滤器在不同数据包处理管道的接口上平均分布,可以提供更好的扩展
您可以使用 show pfe filter hw port-pipe-info
CLI 命令查看每个物理接口映射到的数据包处理管道的详细信息。此 CLI 命令的输出还提供有关数据包处理管道上安装的防火墙过滤器的信息。可以使用此信息跨管道规划和分配防火墙筛选器,以实现最大规模。
CLI 命令的 show pfe filter hw port-pipe-info
以下示例输出显示了每个物理接口映射到的数据包处理管道的详细信息:
user@host> show pfe filter hw port-pipe-info IFD Pipe et-0/0/0 1 et-0/0/1 1 ... et-0/0/10 0
监管器如何限制出口过滤器
在某些交换机上,您配置的出口监管器数量可能会影响允许的出口防火墙过滤器总数。每个监管器都有两个隐式计数器,它们在 1024 条目的 TCAM 中占用两个条目。这些用于计数器,包括在防火墙过滤器术语中配置为操作修饰符的计数器。(监管器使用两个条目,因为一个用于绿色数据包,另一个用于非绿色数据包,而不考虑监管器类型。如果 TCAM 已满,您将无法再提交任何与计数器有条款的出口防火墙过滤器。例如,如果配置并提交 512 出口监管器(双色、三色或两种监管器类型的组合),计数器的所有内存条目都将用完。如果稍后在配置文件中插入了其他出口防火墙 过滤器,其中 的术语也包括计数器,则不会提交这些过滤器中的任何术语,因为计数器没有可用的内存空间。
以下是更多示例:
-
假设您配置的出口过滤器总共包括 512 个监管器,并且没有计数器。稍后在配置文件中,您将包含另一个包含 10 个术语的出口过滤器,其中 1 个具有计数器操作修饰符。此筛选器中的任何术语均未提交,因为没有足够的 TCAM 空间用于计数器。
-
假设您配置的出口过滤器总共包含 500 个监管器,因此占用 1000 个 TCAM 条目。稍后在配置文件中,您将包含以下两个出口过滤器:
-
具有 20 个术语和 20 个计数器的过滤器 A。将提交此筛选器中的所有术语,因为有足够的 TCAM 空间供所有计数器使用。
-
筛选器 B 位于筛选器 A 之后,具有五个术语和五个计数器。此筛选器中的任何术语均未提交,因为没有足够的内存空间供所有计数器使用。(需要五个 TCAM 条目,但只有四个可用。
-
您可以通过确保在配置文件中放置带有计数器操作的出口防火墙过滤器术语比包含监管器的术语更早来阻止此问题的发生。在这种情况下,即使没有足够的 TCAM 空间用于隐式计数器,Junos OS 也会提交监管程序。例如,假设以下情况:
-
您有 1024 个出口防火墙过滤器术语和计数器操作。
-
稍后在配置文件中,您将有一个包含 10 个术语的出口过滤器。没有一个术语有计数器,但有一个术语有一个监管器操作修饰符。
即使没有足够的 TCAM 空间用于监管器的隐式计数器,您也可以使用 10 个术语成功提交过滤器。监管器在没有计数器的情况下提交。
规划特定于过滤器的监管器
您可以将监管器配置为特定于过滤器。这意味着,无论引用监管器多少次,Junos OS 都只会创建一个监管器实例。执行此操作时,将聚合应用速率限制,因此,如果将监管器配置为丢弃超过 1 Gbps 的流量并以三个不同的术语引用该监管器,则过滤器允许的总带宽为 1 Gbps。但是,特定于过滤器的监管器的行为受引用监管器的防火墙过滤器术语在三元内容可寻址存储器 (TCAM) 中的存储方式的影响。如果创建特定于过滤器的监管器并以多个防火墙过滤器术语引用该监管器,则当这些术语存储在不同的 TCAM 切片中时,监管器允许的流量多于预期。例如,如果将监管器配置为丢弃超过 1 Gbps 的流量,并以存储在三个单独内存片中的三个不同术语引用该监管器,则过滤器允许的总带宽为 3 Gbps,而不是 1 Gbps。
为防止发生此意外行为,请使用上述有关 TCAM 切片的信息来组织配置文件,以便引用给定过滤器特定监管器的所有防火墙过滤器术语都存储在同一个 TCAM 切片中。
规划基于过滤器的转发
您可以将防火墙过滤器和虚拟路由实例一起使用,为数据包在其网络中传输指定不同的路由。要设置此功能(称为基于过滤器的转发),请指定过滤器和匹配标准,然后指定要将数据包发送到的虚拟路由实例。以这种方式使用的滤波器也会消耗附加 TCAM 中的内存。有关详细信息 ,请参阅了解 FIP 侦听、FBF 和 MVR 筛选器可伸缩性 。本主题中的 FBF 筛选器 VFP TCAM 消耗 部分专门介绍了使用基于筛选器的转发时支持的筛选器数。
基于过滤器的转发不适用于某些瞻博网络交换机上的 IPv6 接口。
变更历史表
是否支持某项功能取决于您使用的平台和版本。 使用 Feature Explorer 查看您使用的平台是否支持某项功能。
[edit system packet-forwarding-option firewall]
下 eracl-profile
添加egress-scale
选项,您可以在QFX5220上配置多达 2000 个出口防火墙过滤器。egress-to-ingress
QFX5110上的出口 VLAN 防火墙过滤器数量从 1024 个增加到 2048 个。