示例:配置过滤器以对接受的数据包进行计数和采样
此示例说明如何配置标准无状态防火墙过滤器来对接受的数据包进行计数和采样。
要求
配置此示例之前,不需要除设备初始化之外的特殊配置。
在开始之前,通过在层次结构级别包含 sampling
语句 [edit forwarding-options]
来配置流量采样。
概述
在此示例中,您使用标准无状态防火墙过滤器对逻辑接口上接收的所有数据包进行计数和采样。
在具有防火墙日志和计数输入过滤器的接口上启用反向路径转发 (RPF) 时,输入防火墙过滤器不会记录 RPF 拒绝的数据包,尽管会计算被拒绝的数据包。要记录被拒绝的数据包,请使用 RPF 检查失败过滤器。
在配备 MPC3 或 MPC4 的 MX 系列路由器上,如果防火墙过滤器配置为对双向主动测量协议 (TWAMP) 数据包进行计数,则所有 TWAMP 数据包的计数将加倍。当 TWAMP 服务器托管在 MPC3 或 MPC4 上时,往返时间 (RTT) 也可能略有增加。此警告不适用于带有 MPC1 或 MPC2 卡的路由器。
在QFX5130和QFX5700,当一个数据包命中具有计数器操作的多个防火墙过滤器时,只有最高优先级的组计数器会递增。例如,假设数据包命中了 IPACL(端口 ACL)过滤器和 IRACL(路由 ACL)过滤器,两者都具有反作用。根据优先级,IRACL比IPACL具有很高的优先级。因此,只有IRACL计数器会递增。如果 IRACL 中没有命中,则 IPACL 计数器将递增。
以下是用户配置的 ACL 的优先级顺序(从最高到最低),
-
环路
-
爱尔兰语
-
IPACL
-
IVACL
配置
下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参见 在配置模式下使用 CLI 编辑器。
要配置此示例,请执行以下操作:
CLI 快速配置
要快速配置此示例,请将以下配置命令复制到文本文件中,删除所有换行符,然后将命令粘贴到层次结构级别的 CLI [edit]
中。
set firewall family inet filter sam term all then count count_sam set firewall family inet filter sam term all then sample set interfaces at-2/0/0 unit 301 family inet address 10.1.2.3/30 set interfaces at-2/0/0 unit 301 family inet filter input sam
配置无状态防火墙过滤器
分步过程
要配置无状态防火墙过滤器 sam
:
创建无状态防火墙过滤器
sam
。[edit] user@host# edit firewall family inet filter sam
配置术语以对所有数据包进行计数和采样。
[edit firewall family inet filter sam] user@host# set term all then count count_sam user@host# set term all then sample
将无状态防火墙过滤器应用于逻辑接口
分步过程
要将无状态防火墙过滤器应用于逻辑接口,请执行以下操作:
配置要应用无状态防火墙过滤器的逻辑接口。
[edit] user@host# edit interfaces ge-0/0/1 unit 0 family inet
配置逻辑接口的接口地址。
[edit interfaces ge-0/0/1 unit 0 family inet] user@host# set address 10.1.2.3/30
将无状态防火墙过滤器应用于逻辑接口。
[edit interfaces ge-0/0/1 unit 0 family inet] user@host# set filter input sam
注:Junos OS 不会对源自路由器或交换机的数据包进行采样。如果配置过滤器并将其应用于接口的输出端,则只会对通过该接口的传输数据包进行采样。不会对从路由引擎发送到数据包转发引擎的数据包进行采样。
确认并提交候选配置
分步过程
要确认并提交候选配置,请执行以下操作:
通过输入
show firewall
配置模式命令确认无状态防火墙过滤器的配置。如果命令输出未显示预期的配置,请重复此示例中的说明以更正配置。[edit] user@host# show firewall family inet { filter sam { term all { then { count count_sam; sample; # default action is accept } } } }
通过输入
show interfaces
配置模式命令确认接口的配置。如果命令输出未显示预期的配置,请重复此示例中的说明以更正配置。[edit] user@host# show interfaces interfaces { at-2/0/0 { unit 301 { family inet { filter { input sam; } address 10.1.2.3/30; } } } }
如果完成设备配置,请提交候选配置。
[edit] user@host# commit
验证
确认配置工作正常。
显示数据包计数器
目的
验证防火墙过滤器是否正在评估数据包。
操作
user@host> show firewall filter sam Filter: Counters: Name Bytes Packets sam sam-1 98 8028
显示防火墙过滤器日志输出
目的
显示防火墙过滤器评估的所有数据包的数据包标头信息。
操作
user@host> show firewall log Time Filter A Interface Pro Source address Destination address 23:09:09 - A at-2/0/0.301 TCP 10.2.0.25 10.211.211.1:80 23:09:07 - A at-2/0/0.301 TCP 10.2.0.25 10.211.211.1:56 23:09:07 - A at-2/0/0.301 ICM 10.2.0.25 10.211.211.1:49552 23:02:27 - A at-2/0/0.301 TCP 10.2.0.25 10.211.211.1:56 23:02:25 - A at-2/0/0.301 TCP 10.2.0.25 10.211.211.1:80 23:01:22 - A at-2/0/0.301 ICM 10.2.2.101 10.211.211.1:23251 23:01:21 - A at-2/0/0.301 ICM 10.2.2.101 10.211.211.1:16557 23:01:20 - A at-2/0/0.301 ICM 10.2.2.101 10.211.211.1:29471 23:01:19 - A at-2/0/0.301 ICM 10.2.2.101 10.211.211.1:26873
意义
此输出文件包含以下字段:
Time
—接收数据包的时间(未在默认值中显示)。Filter
- 已在层次结构级别使用[edit firewall]
语句配置filter
的过滤器的名称。连字符 (-) 或缩写pfe
表示数据包由数据包转发引擎处理。空格(无连字符)表示数据包由路由引擎处理。A
—过滤器操作:A
- 接受(或下一个学期)D
- 丢弃R
—拒绝
Interface
- 配置过滤器的接口。注:强烈建议您始终在语句中
then
显式配置操作。Pro
—数据包的协议名称或编号。Source address
— 数据包中的源 IP 地址。Destination address
—数据包中的目标 IP 地址。
显示采样输出
目的
验证采样输出是否包含适当的数据。
操作
wtmp.0.gz Size: 15017, Last changed: Dec 19 13:15:54 wtmp.1.gz Size: 493, Last changed: Nov 19 13:47:29 wtmp.2.gz Size: 57, Last changed: Oct 20 15:24:34 | Pipe through a command
user@host> show log /var/tmp/sam # Apr 7 15:48:50 Time Dest Src Dest Src Proto TOS Pkt Intf IP TCP addr addr port port len num frag flags Apr 7 15:48:54 192.168.9.194 192.168.9.195 0 0 1 0x0 84 8 0x0 0x0 Apr 7 15:48:55 192.168.9.194 192.168.9.195 0 0 1 0x0 84 8 0x0 0x0 Apr 7 15:48:56 192.168.9.194 192.168.9.195 0 0 1 0x0 84 8 0x0 0x0