Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

EX 系列交换机的防火墙过滤器匹配条件、操作和操作修饰符

为 EX 系列交换机定义防火墙过滤器时,请为数据包定义过滤标准(,带 match conditions),如果数据包与过滤条件匹配,则为交换机定义过滤action标准terms(和可选的action modifier)。您可以定义防火墙过滤器来监控 IPv4、IPv6 或非 IP 流量。

本主题将详细介绍可在防火墙过滤器中定义的各种匹配条件、操作和操作修饰符。有关各种 EX 系列交换机上支持匹配条件的信息,请参阅平台 对 EX 系列交换机上的防火墙过滤器匹配条件、操作和操作修饰符的支持。

防火墙过滤器元素

防火墙过滤器配置包含术语、匹配条件、操作和操作修饰符(可选)。 表 1 介绍了防火墙过滤器配置中的每个元素。

表 1:防火墙过滤器配置的元素

元素名称

描述

期限

定义数据包的过滤标准。防火墙过滤器中的每个术语都由匹配条件和操作组成。您可以在防火墙过滤器中定义一个或多个术语。如果定义多个术语,则每个术语都必须具有唯一的名称。

匹配条件

由定义匹配条件的字符串(称为 ) match statement组成。匹配条件是数据包必须包含的值或字段。您可以为术语定义单个或多个匹配条件。您也可以选择不定义匹配条件。如果未为某个术语指定匹配条件,则默认情况下会匹配所有数据包。

行动

指定如果数据包符合匹配条件中指定的所有条件,交换机将采取哪些操作。

动作修饰符

指定如果数据包与特定术语的匹配条件匹配,交换机要采取的一个或多个操作。

交换机支持的匹配条件

根据要监控的流量类型,您可以配置防火墙过滤器来监控 IPv4、IPv6 或非 IP 流量。配置防火墙过滤器来监控特定类型的流量时,请确保指定该类型流量支持的匹配条件。有关特定类型的流量和支持这些条件的交换机支持的匹配条件的信息,请参阅 EX 系列交换机上防火墙过滤器匹配条件、操作和操作修饰符的平台支持。

表 2 介绍了 EX 系列交换机上的防火墙过滤器支持的所有匹配条件。

表 2:EX 系列交换机支持的防火墙过滤器匹配条件

匹配条件

描述

destination-address ip-address

IP 目标地址字段,即最终目标节点的地址。

ip-destination-address ip-address

IP 目标地址字段,即最终目标节点的地址。

ip6-destination-address ip-address

IP 目标地址字段,即最终目标节点的地址。

目标 MAC 地址 mac-address

数据包的目标介质访问控制 (MAC) 地址。

您可以使用前缀定义目标 MAC 地址,例如 destination-mac-address 00:01:02:03:04:05/24。如果未指定前缀,则使用默认值 48。

目标端口 number

TCP 或 UDP 目标端口字段。通常,将此匹配条件与 protocol 或 ip-protocol 匹配条件一起指定,以确定端口上使用的协议。对于 number,可以指定以下文本同义词之一(端口号也会列出):

AFS (1483)、BGP (179)、BIFF (512)、BootPC (68)、Bootps (67)、CMD (514)、CVSPserver (2401)、DHCP (67)、域 (53)、eklogin (2105)、ekshell (2106)、exec (512)、finger (79)、ftp (21)、ftp-data (20)、http (80)、https (443)、ident (113)、imap (143)、kerberos-sec (88)、klogin (543))、kpasswd (761)、krb-prop (754)、krbupdate (760)、kshell (544)、ldap (389)、login (513)、mobileip-agent (434)、mobilip-mn (435)、msdp (639)、netbios-dgm (138)、netbios-ns (137)、netbios-ssn (139)、nfsd (2049)、nntp (119)、ntalk (518)、ntp (123)、pop3 (110)、pptp (1723)、 打印机 (515)、radacct (1813)、RADIUS (1812)、RIP (520)、rkinit (2108)、SMTP (25)、SNMP (161)、SNMPTRAP (162)、SNPP (444)、socks (1080)、SSH (22)、SunRPC (111)、syslog (514)、TACACS-DS (65)、talk (517)、telnet (23)、TFTP (69)、Timed (525)、WHO (513)、xdmcp (177)、 Zephyr-CLT (2103)、Zephyr-HM (2104)

目标前缀列表 prefix-list

IP 目标前缀列表字段。

您可以在前缀列表别名下定义 IP 地址前缀列表,以便频繁使用。您可以在层次结构级别定义 [edit policy-options] 此匹配条件。

dot1q-tag number

以太网报头中的标记字段。标记值的范围从 1 到 4095。 dot1q-tag 匹配条件和 VLAN 匹配条件是互斥的。

user-vlan-id number

以太网报头中的标记字段。标记值的范围从 1 到 4095。 user-vlan-id 匹配条件和 learn-vlan-id 匹配条件是互斥的。

dot1q-用户优先级 number

标记以太网数据包的用户优先级字段。用户优先级值的范围为 0 到 7。

对于 number,可以指定以下文本同义词之一(也会列出字段值):

  • 背景 (1) — 背景

  • 尽力服务 (0) — 尽力服务

  • 受控负载 (4) — 受控负载

  • 卓越载荷 (3) — 卓越载荷

  • network-control (7) — 网络控制保留流量

  • 标准 (2) — 标准或备件

  • 视频 (5) — 视频

  • 语音 (6) — 语音

用户 vlan-1p 优先级 number

标记以太网数据包的用户优先级字段。用户优先级值的范围为 0 到 7。

对于 number,可以指定以下文本同义词之一(也会列出字段值):

  • 背景 (1) — 背景

  • 尽力服务 (0) — 尽力服务

  • 受控负载 (4) — 受控负载

  • 卓越载荷 (3) — 卓越载荷

  • network-control (7) — 网络控制保留流量

  • 标准 (2) — 标准或备件

  • 视频 (5) — 视频

  • 语音 (6) — 语音

DSCP number

指定差异服务代码点 (DSCP)。DiffServ 协议在 IP 报头中使用服务类型 (ToS) 字节。此字节的最有效六位构成 DSCP。

您可以指定十六进制、二进制或十进制形式的 DSCP。

对于 number,可以指定以下文本同义词之一(也会列出字段值):

  • ef (46) — 如 RFC 2598 中所定义,加速 转发 PHB。

  • AF11 (10)、AF12 (12)、AF13 (14)、AF21 (18)、AF22 (20)、AF23 (22),

    AF31 (26)、AF32 (28)、AF33 (30)、AF41 (34)、AF42 (36)、AF43 (38)

    这四个类(每个类中有三个丢弃优先级)在 RFC 2597“ 保证转发 PHB 组”中为 12 个代码点定义。

以太类型 value

以太网类型字段。该 值 指定在以太网帧中传输的协议。对于 value,可以指定以下文本同义词之一:

  • aarp—EtherType 值 AARP (0x80F3)

  • appletalk—EtherType 值 AppleTalk (0x809B)

  • arp—EtherType 值 ARP (0x0806)

  • ipv4—EtherType 值 IPv4 (0x0800)

  • ipv6—EtherType 值 IPv6 (0x08DD)

  • mpls 组播 — EtherType 值MPLS组播 (0x8848)

  • mpls 单播 — EtherType 值MPLS单播 (0x8847)

  • oam—EtherType 值 OAM (0x88A8)

  • ppp—EtherType 值 PPP (0x880B)

  • pppoe-discovery—EtherType 值 PPPoE 发现阶段 (0x8863)

  • pppoe-session—EtherType 值 PPPoE 会话阶段 (0x8864)

  • sna—EtherType 值 SNA (0x80D5)

注意:

当 ether-type 设置为 ipv6 时,不支持以下匹配条件:

  • DSCP

  • 片段标志

  • IS-fragment

  • precedence 或 ip-precedence

  • protocol 或 ip-protocol

片段标志 fragment-flags

以符号或十六进制格式指定的 IP 分段标志。您可以指定以下选项之一:

  • 不分段 (0x4000)

  • 更多片段 (0x2000)

  • 保留 (0x8000)

GBP-DST 标记 匹配目标标记,以便用于 VXLAN 上的微分段,如下所述: 示例:在 VXLAN 中使用基于组的策略进行微分段和宏分段
gbp-src-标记 匹配源标记,以便用于 VXLAN 上的微分段,如下所述: 示例:在 VXLAN 中使用基于组的策略进行微分段和宏分段

ICMP 代码 number

ICMP 代码字段。此值或选项提供比 icmp-type 更具体的信息。由于值的含义取决于关联的 icmp 类型,因此您必须指定 icmp-type 和 icmp-code。对于 number,可以指定以下文本同义词之一(也会列出字段值)。这些选项按与之关联的 ICMP 类型进行分组:

  • 参数问题 - ip-header-bad (0),required-option-missing (1)

  • 重定向 - 重定向主机 (1)、网络重定向 (0)、重定向到主机和主机 (3)、重定向到到网络 (2)

  • time-exceeded—ttl-eq-zero- during-reassembly (1)、ttl-eq-zero-during-transit (0)

  • 不可达 - 过滤禁止通信 (13)、禁止目标主机 (10)、禁止目标主机 (7)、禁止目标网络 (9)、目标网络未知 (6)、需要分段 (4)、主机优先级违规 (14)、主机无法访问 (1)、TOS 主机无法访问 (12)、网络无法访问 (0)、TOS 网络无法访问 (11)、端口无法访问 (3)、优先级截止生效 (15)、协议不可访问 (2)、源主机隔离 (8)、源路由失败 (5)

ICMP 类型 number

ICMP 数据包类型字段。通常,将此匹配条件 protocol 与 或 ip-protocol 匹配条件一起指定,以确定端口上使用的协议。对于 number,可以指定以下文本同义词之一(也会列出字段值):

回显回复 (0)、回显请求 (8)、信息回复 (16)、信息请求 (15)、掩码请求 (17)、掩码回复 (18)、参数问题 (12)、重定向 (5)、路由器通告 (9)、路由器请求 (10)、源淬火 (4)、超时 (11)、时间戳 (13)、时间戳回复 (14)、不可达 (3)

接口 interface-name

接收数据包的接口。可以将通配符 (*) 指定为接口名称的一部分。

注意:

在运行 Junos OS Evolved 的设备上, interface 接口上的 IRB 匹配将与底层 L2 IFL 索引匹配。

IP 选项

IP 报头中是否存在选项字段。

IP 版本 version match_condition(s)

匹配端口和 VLAN 防火墙过滤器的 IP 协议版本。的 version 值可以是 ipv4 或 ipv6。当

ip-version 时, 您必须 从以下支持列表中至少添加一个其他匹配条件。

  • destination-address、 ip-destination-address或 ip6-destination-address

  • 目标端口

  • 目标前缀列表

  • DSCP

  • 片段标志

  • ICMP 代码

  • ICMP 类型

  • IS-fragment

  • precedence 或 ip-precedence

  • protocol 或 ip-protocol

  • source-address 或 ip-source-address

  • 源端口

  • 源前缀列表

  • TCP 已建立

  • TCP 标志

  • TCP 初始

IS-fragment

如果数据包是尾随分片,则此匹配条件与分片数据包的第一个分片不匹配。使用两个术语来匹配第一个片段和尾随片段。

L2 封装型 LLC-非 SNAP

在逻辑链路控制 (LLC) 层数据包上匹配非子网访问协议 (SNAP) 以太网封装类型。

下一个报头 bytes

8 位协议字段,用于标识紧接在 IPv6 标头之后的标头类型。可以指定以下文本同义词之一来代替数值(也会列出字段值):

AH (51)、DSops (60)、EGP (8)、ESP (50)、分片 (44)、GRE (47)、逐跳 (0)、ICMP (1)、ICMP6 (1)、IGMP (2)、IPIP (4)、IPv6 (41)、无下一个报头 (59)、OSPF (89)、PIM (103)、路由 (43)、RSVP (46)、SCTP (132)、TCP (6)、UDP (17)、VRRP (112)

数据包长度 bytes

接收数据包的长度(以字节为单位)。

长度仅指 IP 数据包,包括数据包标头,不包括任何第 2 层封装开销。

precedence precedence

IP 优先级。对于 precedence,可以指定以下文本同义词之一(也会列出字段值):

关键 ECP (5)、闪存 (3)、闪存覆盖 (4)、立即 (2)、互联网控制 (6)、网络控制 (7)、优先级 (1)、例程 (0)

ip-precedence precedence

IP 优先级。对于 precedence,可以指定以下文本同义词之一(也会列出字段值):

关键 ECP (5)、闪存 (3)、闪存覆盖 (4)、立即 (2)、互联网控制 (6)、网络控制 (7)、优先级 (1)、例程 (0)

protocol list of protocol

IPv4 协议值。对于 protocols,可以指定以下文本同义词之一:

EGP (8)、ESP (50)、GRE (47)、ICMP (1)、IGMP (2)、IPIP (4)、OSPF (89)、PIM (103)、RSVP (46)、TCP (6)、UDP (17)

ip-protocol list of protocol

IPv4 协议值。对于 protocols,可以指定以下文本同义词之一:

EGP (8)、ESP (50)、GRE (47)、ICMP (1)、IGMP (2)、IPIP (4)、OSPF (89)、PIM (103)、RSVP (46)、TCP (6)、UDP (17)

源-地址 ip-address

IP 源地址字段,即发送数据包的源节点的地址。对于 IPv6,源地址字段的长度为 128 位。过滤器描述语法支持 RFC 2373,IP 版本 6 寻址架构中所述的 IPv6 地址的文本表示形式。

ip-source-address (ip-address | ip6-address)

IP 源地址字段,即发送数据包的源节点的地址。您可以指定 IPv4 地址 (ip-address) 或 IPv6 地址 (ip6-address)。对于 IPv6,ip-source-address 字段长度为 128 位。过滤器描述语法支持 RFC 2373,IP 版本 6 寻址架构中所述的 IPv6 地址的文本表示形式。

源 MAC 地址 mac-address

源 MAC 地址。

您可以使用前缀定义源 MAC 地址,例如 source-mac-address 00:01:02:03:04:05/24。如果未指定前缀,则使用默认值 48。

源端口 number

TCP 或 UDP 源端口 字段。通常,将此匹配与 protocol 或 ip-protocol 匹配条件一起指定,以确定端口上使用的协议。对于 number,您可以指定 目标端口下列出的文本同义词之一。

源前缀列表 prefix-list

IP 源前缀列表字段。

您可以在前缀列表别名下定义 IP 地址前缀列表,以便频繁使用。您可以在层次结构级别定义 [edit policy-options] 此匹配条件。

TCP 已建立

已建立 TCP 连接的 TCP 数据包。此条件匹配连接的第一个数据包以外的数据包。 tcp-established 是位名 “(ack | rst)”的同义词。

tcp-established 不会隐式检查协议是否为 TCP。为此,请指定 下一个报头 tcp 匹配条件。

tcp 标志(flags tcp-initial)

一个或多个 TCP 标志:

  • 位名 - fin、 syn、 rst、 push、 ack、 urgent

  • 逻辑运算符 —& (逻辑 AND)、 | (逻辑 OR)、 ! (否定)

  • 数值 — 0x01 到 0x20

  • 文本同义词 — TCP-Initial

要指定多个标志,请使用逻辑运算符。

TCP 初始

匹配连接的第一个 TCP 数据包。 tcp-initial 是位名 “(syn&!ack)”的同义词。

tcp-initial 不会隐式检查协议是否为 TCP。为此,请指定 protocol tcp 或 ip 协议 tcp 匹配条件。

信息流类 number

指定数据包的 DSCP 代码点。

TTL value

TTL 类型进行匹配。值的范围从 1 到 255。

vlan (vlan-name | vlan-id)

与数据包关联的 VLAN。对于 vlan-id,您可以指定 VLAN ID 或 VLAN 范围。 VLAN 匹配条件和 dot1q-tag 匹配条件是互斥的。

learn-vlan-id (vlan-name | vlan-id)

与数据包关联的 VLAN。对于 vlan-id,您可以指定 VLAN ID 或 VLAN 范围。 VLAN 匹配条件和 user-vlan-id 匹配条件是互斥的。

防火墙过滤器的操作

您可以定义交换机在数据包符合匹配条件中定义的过滤条件时要采取的操作。 表 3 介绍了防火墙过滤器配置中支持的操作。

表 3:防火墙过滤器的操作

行动

描述

接受

接受数据包。

丢弃

以静默方式丢弃数据包,而不发送互联网控制信息协议 (ICMP) 消息。

丢弃 message-type

丢弃数据包,并发送 ICMPv4 消息(类型 3) 目标不可达。如果配置 syslog 操作修饰符,则可以记录被拒绝的数据包。

您可以指定以下消息代码之一:administratively-prohibited(默认)、bad-host-tos、bad-network-tos、host-prohibited、host-unknown、host-unreachable、network-prohibited、network-unknown、network-unreachable、port-unreachable、precedence-cutoff、precedence-violation、protocol-unreachable、source-host-isolated、source-route-failed、tcp-reset。

如果指定 tcp-reset,则如果数据包是 TCP 数据包,则返回 TCP 重置。否则,不会返回任何内容。

如果未指定消息类型,则发送 ICMP 通知 目标不可达 ,默认消息 通信已经过管理过滤。

路由实例 routing-instance-name

将匹配的数据包转发到虚拟路由实例。

VLAN vlan-name

将匹配的数据包转发到特定的 VLAN。请确保指定 VLAN 名称或 VLAN ID,而非 VLAN 范围,因为 VLAN 操作不支持该 vlan-range 选项。

注意:

如果定义了启用了 dot1q 隧道的 VLAN,则不支持将该特定 VLAN 用作入口 VLAN 防火墙过滤器的操作(使用 VLAN vlan-name 操作)。

防火墙过滤器的操作修饰符

除了 表 3 中所述的操作外,如果数据包与匹配条件中定义的过滤标准匹配,您还可以在交换机的防火墙过滤器配置中定义操作修饰符。 表 4 介绍了防火墙过滤器配置中支持的操作修饰符。

表 4:防火墙过滤器的操作修饰符

动作修饰符

描述

分析器 analyzer-name

将端口流量镜像到连接到协议分析器应用的指定目标端口或 VLAN。镜像会将一个交换机端口上看到的所有数据包复制到另一个交换机端口上的网络监控连接。分析器名称必须在 下 [edit ethernet-switching-options analyzer]配置。

注意:

分析器 不是管理接口支持的操作修饰符。

dscp number

将匹配数据包的 DSCP 值更改为此操作修饰符指定的 DSCP 值。 number 指定差异服务代码点 (DSCP)。DiffServ 协议在 IP 报头中使用服务类型 (ToS) 字节。此字节的最有效六位构成 DSCP。

您可以指定十六进制、二进制或十进制形式的 DSCP。

对于 number,可以指定以下文本同义词之一(也会列出字段值):

  • ef (46) — 如 RFC 2598 中所定义,加速 转发 PHB。

  • AF11 (10)、AF12 (12)、AF13 (14)、AF21 (18)、AF22 (20)、AF23 (22),

    AF31 (26)、AF32 (28)、AF33 (30)、AF41 (34)、AF42 (36)、AF43 (38)

    这四个类(每个类中有三个丢弃优先级)在 RFC 2597“ 保证转发 PHB 组”中为 12 个代码点定义。

计数 counter-name

计算通过此过滤器、术语或监管器的数据包数。您可以通过监管器为进入交换机上接口的流量指定速率限制。

转发类 class

将数据包分类为以下转发类之一:

  • 保证转发

  • 尽力服务

  • 加速转发

  • 网络控制

gbp-src-tag(仅限 EX4400 和 EX4650) 设置基于组的策略源标记 (0..65535),以便与 VXLAN 上的微分段一起使用,如下所述: 示例:在 VXLAN 中使用基于组的策略进行微分段和宏分段

接口 interface-name

绕过交换查找,将流量转发到指定接口。

日志

在路由引擎中记录数据包的标头信息。要查看此信息,请在 CLI 中发出 show firewall log 命令。

注意:

如果 日志 或 系统日志 操作修饰符与 VLAN 操作或 接口 操作修饰符一起配置,则可能不会记录事件。但是,重定向接口功能按预期工作。

丢失优先级(高 | 低)

设置丢包优先级 (PLP)。

监管器 policer-name

对流量应用速率限制。

您只能在防火墙过滤器中为端口、VLAN 和路由器上的入口流量指定监管器。

port-mirror

将数据包镜像到层次结构中定义的 [edit forwarding-options analyzer] 接口。

port-mirror-instance instance-name

将数据包镜像到层次结构中 [edit forwarding-options analyzer] 定义的实例。

系统日志

为此数据包记录告警。您可以指定将日志发送到服务器进行存储和分析。

注意:

如果 日志 或 系统日志 操作修饰符与 VLAN 操作或 接口 操作修饰符一起配置,则可能不会记录事件。但是,重定向接口功能按预期工作。

三色监管器

应用三色监管器。

特定于平台的行为

使用 功能资源管理器 确认平台和版本对特定功能的支持。

使用下表查看平台的特定于平台的行为:

平台

差异

EX2300

is-fragment 应用于 时 family ethernet-switching,与分段数据包的最后一个分片不匹配。

EX3400

is-fragment 应用于 时 family ethernet-switching,与分段数据包的最后一个分片不匹配。

EX4300

is-fragment 应用于 时 family ethernet-switching,与分段数据包的最后一个分片不匹配。

因为 count counter-name ,您可以配置与三态内容可寻址存储器 (TCAM) 中的术语数相同的计数器和监管器数量。

对于 policer policer-name 操作修饰符,在 EX4300 交换机上,您可以配置与 TCAM 中的术语数量相同的计数器和监管器数量。

EX4200

要采取行动, routing-instance routing-instance-name EX4200 交换机不支持基于防火墙过滤器的重定向到默认路由实例。