防火墙过滤器故障排除
使用以下信息对防火墙过滤器配置进行故障排除。
QFX10000交换机故障排除
本节介绍特定于QFX10000交换机的问题:
不要组合不同图层的匹配条件
在 QFX10000 交换机上,请勿组合第 2 层和过滤器中 family ethernet-switching
任何其他层的匹配条件。(例如,不要在同一筛选器中包含与 MAC 地址和 IP 地址匹配的条件。如果这样做,筛选器将成功提交,但不起作用。您还将看到以下日志消息: L2 filter filter-name doesn't support mixed L2 and L3/L4 match conditions. Please re-config.
防火墙过滤器不能丢弃第 2 层数据包
问题
Description
第 2 层 (L2) 控制数据包(如链路层发现协议 (LLDP) 和网桥协议数据单元 (BPDU) )不能被防火墙过滤器丢弃。
解决方案
在 L2 控制数据包上配置分布式拒绝服务 (DDoS) 保护,并将聚合监管器带宽和突发值设置为最小值 1。例如
[edit system ddos-protection protocols protocol name]
user@host# set aggregate bandwidth 1
[edit system ddos-protection protocols protocol name]
user@host# set aggregate burst 1
排除其他交换机故障
本节介绍 QFX10000 交换机以外的 QFX 交换机特有的问题。此信息也适用于 OCX1100 交换机和 EX4600 交换机。
- 防火墙过滤器配置返回 TCAM 消息中没有可用空间
- 过滤器计数先前丢弃的数据包
- 匹配数据包不计算在内
- 编辑过滤器时的计数器重置
- 不能在同一术语中包含丢失优先级和监管器操作
- 无法出口过滤器源自 QFX 交换机的某些流量
- 防火墙过滤器匹配条件不适用于 Q-in-Q 隧道
- 具有专用 VLAN 的出口防火墙过滤器
- 不支持 L2PT 流量的出口过滤
- 在某些情况下无法丢弃 BGP 数据包
- 监管器的统计信息无效
- 监管器可以限制出口过滤器
防火墙过滤器配置返回 TCAM 消息中没有可用空间
问题
Description
当防火墙过滤器配置超过可用三元内容可寻址内存 (TCAM) 空间量时,系统将返回以下 syslogd
消息:
No space available in tcam. Rules for filter filter-name will not be installed.
如果已应用于端口、VLAN 或第 3 层接口的防火墙过滤器超过 TCAM 表中的可用空间量,交换机将在提交操作期间返回此消息。不会应用过滤器,但防火墙过滤器配置的提交操作将在 CLI 模块中完成。
解决方案
当防火墙过滤器配置超过可用 TCAM 表空间量时,必须使用较少的过滤器术语配置新的防火墙过滤器,以便过滤器的空间需求不会超过 TCAM 表中的可用空间。
您可以执行以下任一过程来更正问题:
要删除过滤器及其绑定,并将新的较小防火墙过滤器应用于同一绑定,请执行以下操作:
删除过滤器及其与端口、VLAN 或第 3 层接口的绑定。例如:
[edit] user@switch# delete firewall family ethernet-switching filter ingress-vlan-rogue-block user@switch# delete vlans employee-vlan description "filter to block rogue devices on employee-vlan" user@switch# delete vlans employee-vlan filter input ingress-vlan-rogue-block
提交更改:
[edit] user@switch# commit
使用较少的术语配置较小的过滤器,不超过可用 TCAM 空间量。例如:
[edit] user@switch# set firewall family ethernet-switching filter new-ingress-vlan-rogue-block ...
将新的防火墙过滤器应用(绑定)到端口、VLAN 或第 3 层接口。例如:
[edit] user@switch# set vlans employee-vlan description "filter to block rogue devices on employee-vlan" user@switch# set vlans employee-vlan filter input new-ingress-vlan-rogue-block
提交更改:
[edit] user@switch# commit
应用新的防火墙过滤器并覆盖现有绑定但不删除原始过滤器:
使用比原始过滤器更少的术语配置防火墙过滤器:
[edit] user@switch# set firewall family ethernet-switching filter new-ingress-vlan-rogue-block...
将防火墙过滤器应用于端口、VLAN 或第 3 层接口以覆盖原始过滤器的绑定,例如:
[edit] user@switch# set vlans employee-vlan description "smaller filter to block rogue devices on employee-vlan" user@switch# set vlans employee-vlan filter input new-ingress-vlan-rogue-block
由于每个方向每个 VLAN 只能应用一个防火墙过滤器,因此原始防火墙过滤器与 VLAN 的绑定将被新的防火墙过滤器
new-ingress-vlan-rogue-block
覆盖。提交更改:
[edit] user@switch# commit
原始过滤器不会被删除,在配置中仍然可用。
过滤器计数先前丢弃的数据包
问题
Description
如果为物理接口在同一方向上配置两个或多个过滤器,并且其中一个过滤器包含计数器,则在以下情况适用时,计数器将不正确:
您可以配置首先应用于数据包的过滤器以丢弃某些数据包。例如,假设您有一个 VLAN 过滤器,该过滤器接受发送到 10.10.1.0/24 地址的数据包,并隐式丢弃发送到任何其他地址的数据包。您将过滤器
admin
应用于输出方向的 VLAN,接口 xe-0/0/1 就是该 VLAN 的成员。您可以将后续过滤器配置为接受并计数第一个过滤器丢弃的数据包。在此示例中,您有一个端口过滤器,用于接受并计数发送到 192.168.1.0/24 地址的数据包,该地址也适用于输出方向上的 xe-0/0/1。
首先应用出口 VLAN 过滤器,并正确丢弃发送到 192.168.1.0/24 地址的数据包。接下来应用出口端口过滤器,并将丢弃的数据包计为匹配的数据包。数据包未转发,但出口端口过滤器显示的计数器不正确。
请记住,应用筛选器的顺序取决于应用它们的方向,如下所示:
入口过滤器:
端口(第 2 层)过滤器
VLAN 过滤器
路由器(第 3 层)过滤器
出口过滤器:
路由器(第 3 层)过滤器
VLAN 过滤器
端口(第 2 层)过滤器
解决方案
这是预期行为。
匹配数据包不计算在内
编辑过滤器时的计数器重置
问题
Description
如果编辑防火墙过滤器术语,则与同一过滤器中的任何术语关联的任何计数器的值将设置为 0,包括过滤器引用的任何监管器的隐式计数器。请考虑以下示例:
假设您的过滤器具有
term1
、term2
和term3
,并且每个术语都有一个已经计算匹配数据包的计数器。如果以任何方式编辑任何术语,则所有术语的计数器将重置为 0。假设您的过滤器具有
term1
和term2
。还假设 具有term2
policer
操作修饰符,并且监管器的隐式计数器已经计数了 1000 个匹配数据包。如果编辑term1
或term2
以任何方式,则 引用term2
的监管器的计数器将重置为 0。
解决方案
这是预期行为。
不能在同一术语中包含丢失优先级和监管器操作
无法出口过滤器源自 QFX 交换机的某些流量
防火墙过滤器匹配条件不适用于 Q-in-Q 隧道
问题
Description
如果创建的防火墙过滤器包含匹配条件 dot1q-tag
或 dot1q-user-priority
,并将该过滤器应用于参与服务 VLAN 的中继端口的输入,则当 Q-in-Q EtherType 未0x8100时,匹配条件将不起作用。(启用 Q-in-Q 隧道后,中继接口将被视为服务提供商或数据中心网络的一部分,因此会参与服务 VLAN。
解决方案
这是预期行为。要将 Q-in-Q EtherType 设置为 0x8100,请在层次结构级别输入 set dot1q-tunneling ethertype 0x8100 语句 [edit ethernet-switching-options]
。您还必须将链路的另一端配置为使用相同的以太类型。
具有专用 VLAN 的出口防火墙过滤器
问题
Description
如果在输出方向上将防火墙过滤器应用于主 VLAN,则当流量通过主 VLAN 标记或隔离 VLAN 标记出口时,该过滤器也会应用于作为主 VLAN 成员的辅助 VLAN,如下所示:
从辅助 VLAN 中继端口转发到混合端口(中继或接入)的流量
流量从承载隔离 VLAN 的辅助 VLAN 中继端口转发到 PVLAN 中继端口。
从混合端口(中继或接入端口)转发至辅助 VLAN 中继端口的流量
从 PVLAN 中继端口转发的流量。到辅助 VLAN 中继端口
从公共组端口转发到混合端口(中继或接入)的流量
如果在输出方向上将防火墙过滤器应用于主 VLAN,则该过滤器 不适用于 带有公共组 VLAN 标记的出口流量,如下所示:
从公共组中继端口转发到 PVLAN 中继端口的流量
流量从承载公共组 VLAN 的辅助 VLAN 中继端口转发到 PVLAN 中继端口
流量从混合端口(中继或接入)转发到社区中继端口
从 PVLAN 中继端口转发的流量。到公共中继端口
如果在输出方向上将防火墙过滤器应用于公共组 VLAN,则以下行为适用:
过滤器应用于从混合端口(中继或接入)转发到社区中继端口的流量(因为流量出口带有社区 VLAN 标记)。
过滤器应用于从公共组端口转发到 PVLAN 中继端口的流量(因为流量出口时带有社区 VLAN 标记)。
过滤器 不适用于 从公共组端口转发到混合端口的流量(因为流量出口带有主 VLAN 标记或未标记)。
解决方案
这些是预期行为。仅当您在输出方向上将防火墙过滤器应用于专用 VLAN 时,才会发生这些问题,如果将防火墙过滤器应用于输入方向上的专用 VLAN,则不会发生它们。
不支持 L2PT 流量的出口过滤
在某些情况下无法丢弃 BGP 数据包
监管器的统计信息无效
监管器可以限制出口过滤器
问题
Description
在某些交换机上,您配置的出口监管器数量可能会影响允许的出口防火墙过滤器总数。每个监管器都有两个隐式计数器,它们在 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 个术语成功提交过滤器。监管器在没有计数器的情况下提交。