Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 

防火墙过滤器匹配条件和操作(QFX10000 交换机)

 

防火墙过滤器中的每个术语都包含匹配条件操作。匹配条件是数据包必须包含的字段和值,可视为匹配。您可以在match 语句中定义单个或多个匹配条件。您也可以不包含 match 语句,在这种情况下,术语与所有数据包匹配。

当数据包与过滤器匹配时,交换机将采取术语中指定的操作。此外,您可以指定操作修饰符来计数、镜像、速率限制和对数据包进行分类。如果没有为术语指定匹配条件,默认情况下,交换机将接受数据包。

本主题介绍可在 QFX10000 交换机上的防火墙过滤器中定义的各种匹配条件、操作和操作修饰符。有关其他 QFX 交换机的类似信息,请参阅防火墙过滤器匹配条件和操作(QFX 系列、EX4600、EX4650 交换机)

  • 表 1介绍了配置防火墙过滤器时可指定的匹配条件。部分数字范围和位字段匹配条件允许您指定文本同义词。要查看匹配条件的所有同义词的列表,请在语句中?的适当位置键入。

  • 表 2显示了您可以在术语中指定的操作。

  • 表 3显示可用于对数据包进行计数、镜像、速率和分类的操作修饰符。

表 1: 支持的匹配条件(QFX10000 交换机)

匹配条件

Description

方向和接口

destination-address

ip-address

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

入口 IPv4 (inet)接口和 IPv6 (inet6)接口。

出口 IPv4 (inet)接口和 IPv6 (inet6)接口。

入口 IRB 接口,用于 EVPN/VXLAN 结构(如果适用)

destination-mac-address mac-address

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

入口端口和 Vlan。

出口端口和 Vlan。

destination-port value

TCP 或 UDP 目标端口字段。通常,应将此匹配与protocol match 语句一起指定。对于以下已知端口,您可以指定文本同义词(也列出了这些端口号):

afs (1483), bgp (179), biff (512), bootpc (68), bootps (67),

cmd (514), cvspserver (2401),

dhcp (67), domain (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), printer (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)

入口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

出口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

入口 IRB 接口,用于 EVPN/VXLAN 结构(如果适用)

destination-prefix-list prefix-list

IP 目标前缀列表字段。您可以在前缀列表别名下定义 IP 地址前缀列表,以便经常使用。在[edit policy-options]层次结构级别定义此列表。

入口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

出口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

dscp value

差异化服务代码点(DSCP)。DiffServ 协议使用 IP 标头中的服务类型(ToS)字节。此字节的最大6位形成 DSCP。

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

为了代替数值,您可以指定以下文本同义词之一(也列出了这些字段值):

  • be—最大努力(默认)

  • ef (46)—如RFC 3246中所定义 加速转发 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中定义了这四个类,每个类有三个丢弃优先级(共12个代码点), 确保转发 PHB.

  • cs0, cs1, cs2, cs3, cs4, cs5, cs6, cs7, cs5

入口端口、Vlan 和 IPv4 (inet)接口。

出口端口、Vlan 和 IPv4 (inet)接口。

ether-type value

数据包的以太网类型字段。EtherType 值指定要在以太网帧中传输的协议。为了代替数值,您可以指定以下文本同义词之一(也列出了这些字段值):

  • aarp (0x80F3)—EtherType value AARP

  • appletalk (0x809B)—EtherType 价值 AppleTalk

  • arp (0x0806)—EtherType 价值 ARP

  • fcoe (0x8906)—EtherType 值 FCoE

  • fip (0x8914)—EtherType value FIP

  • ipv4 (0x0800)—EtherType 价值 IPv4

  • ipv6 (0x08DD)—EtherType 价值 IPv6

  • mpls-multicast (0x8848)—EtherType 值 MPLS 多播

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

  • oam (0x88A8)—EtherType value OAM

  • ppp (0x880B)—EtherType 价值 PPP

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

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

  • sna (0x80D5)—EtherType 价值 SNA

入口端口和 Vlan。

出口端口和 Vlan。

forwarding-class class

将数据包分类为以下某个默认转发类或用户定义的转发类中的内容:

  • best-effort

  • fcoe

  • network-control

  • no-loss

出口 IPv4 (inet)和 IPv6 (inet6)接口。

fragment-flags value

IP 分段标志。为了代替数值,您可以指定以下文本同义词之一(十六进制值也会列出):

  • is-fragment

  • dont-fragment (0x4000)

  • more-fragments (0x2000)

  • reserved (0x8000)

入口端口、Vlan 和 IPv4 (inet)接口。

hop-limit value

匹配指定的跳跃限制或跳跃限制集。指定单个值或从0到255的值范围。

入口和出口 IPv6 (inet6)接口。

icmp-code value

ICMP 代码字段。由于值的含义取决于关联icmp-type的,因此您必须指定与值icmp-type一起使用的值。 icmp-code 为了代替数值,您可以指定以下文本同义词之一(也列出了这些字段值)。关键字按与其关联的 ICMP 类型分组:

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

  • IPv6:参数-问题—ip6-header-bad (0)unrecognized-next-header (1)unrecognized-option (2)

  • redirectredirect-for-network (0), redirect-for-host (1), redirect-for-tos-and-net (2),redirect-for-tos-and-host (3)

  • time-exceededttl-eq-zero-

    during-reassembly (1)
    ttl-eq-zero-during-transit (0)

  • IPv4:无法—network-unreachable (0)访问host-unreachable (1)protocol-unreachable (2)port-unreachable (3)source-route-failed (5)destination-network-unknown (6)destination-host-unknown (7)source-host-isolated (8)destination-network-prohibited (9)、、、、、 destination-host-prohibited (10)network-unreachable-for-TOS (11)、、 host-unreachable-for-TOS (12)、、、、、、 communication-prohibited-by-filtering (13)host-precedence-violation (14)fragmentation-needed (4)precedence-cutoff-in-effect (15)

  • IPv6: 不可—address-unreachable (3)administratively-prohibited (1)no-route-to-destination (0)、、port-unreachable (4)

入口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

出口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口

icmp-type value

ICMP 消息类型字段。通常,可将此匹配与protocol match 语句一起指定,以确定端口上使用的协议。为了代替数值,您可以指定以下文本同义词之一(也列出了这些字段值):

IPv4: echo-reply (0), destination unreachable (3), source-quench (4), redirect (5), echo-request (8), IPv4 (inet)-advertisement (9), IPv4 (inet)-solicit (10), time-exceeded (11), parameter-problem (12), timestamp (13), timestamp-reply (14), info-request (15), info-reply (16), mask-request (17),mask-reply (18)

IPv6: destination-unreachable (1), packet-too-big (2), time-exceeded (3), parameter-problem (4), echo-request (128), echo-reply (129), membership-query (130), membership-report (131), membership-termination (132), router-solicit (133), router-advertisement (134), neighbor-solicit (135), neighbor-advertisement (136), redirect (137), router-renumbering (138), node-information-request (139),node-information-reply (140)

另请icmp-code variable参阅。

入口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

出口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

interface interface-name

接收数据包的接口,包括逻辑单元。您可将通配符(*)包含在接口名称或逻辑单元中。

注意: 发送数据包的接口不能用作匹配条件。

入口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

出口 IPv4 (inet)接口和 IPv6 (inet6)接口。

ip-destination-address address

作为数据包最终目标节点地址的 IPv4 地址。

入口端口、出口端口和 Vlan。

入口 IRB 接口,用于 EVPN/VXLAN 结构(如果适用)

ip-options

如果any在 IP 标头的 options 字段中指定了任何内容,请指定创建匹配项。

入口端口、Vlan 和 IPv4 (inet)接口。

ip-precedence ip-precedence-field

IP 优先级字段。在数字字段值的位置,您可以指定以下文本同义词之一(也列出了这些字段值):critical-ecp(0xa0)、 flash (0x60)、 flash-override (0x80)、 immediate (0x40) internet-control 、(0xc0)、 net-control (0xe0)、 priority (0x20)或routine (0x00)。

入口端口和 Vlan。

出口端口和 Vlan。

ip-protocol number

IP 协议字段。

入口端口和 Vlan。

出口端口和 Vlan。

入口 IRB 接口,用于 EVPN/VXLAN 结构(如果适用)

ip-source-address address

发送数据包的源节点的 IPv4 地址。

入口端口和 Vlan。

出口端口和 Vlan。

入口 IRB 接口,用于 EVPN/VXLAN 结构(如果适用)

ip-version address

数据包的 IP 版本。使用此条件可以匹配流量中到达第2层端口或 VLAN 接口的 IPv4 或 IPv6 标头字段。

入口端口和 Vlan。

出口端口和 Vlan。

is-fragment

如果在 IP 标头中启用了更多片段标志或片段偏移量不为零,则使用此条件会导致匹配。

入口端口、Vlan 和 IPv4 (inet)接口。

出口 IPv4 (inet)接口。

learn-1p-priority number

匹配范围0-7中指定 IEEE 802.1 p VLAN 优先级位。

入口端口和 Vlan。

出口端口和 Vlan。

learn-vlan-id number

匹配正常 VLAN 的 ID 或外部(服务) VLAN 的 ID (对于 Q 入 Q Vlan)。要最有效地使用过滤器内存并最大限度地增加可能的过滤器数,除了需要user-id在内部(客户)的 VLAN ID 上匹配时,还应使用此条件。可接受的值为1-4095。

入口端口和 Vlan。

出口端口和 Vlan。

入口 IRB 接口,用于 EVPN/VXLAN 结构(如果适用)

loss-priority (low | medium-low | medium-high | high)

设置数据包丢失优先级(PLP)。

注意: loss-priority操作修饰符与policer操作组合不受支持。

出口 IPv4 (inet)和 IPv6 (inet6)接口。

next-header value

IPv4 或 IPv6 协议值。为了代替数值,您可以指定以下文本同义词之一(数字值也将列出):

hop-by-hop (0),icmp (1), icmp6 (58), igmp (2), ipip (4), tcp (6), egp (8), udp (17), ipv6 (41), routing (43), fragment (44),rsvp (46), gre (47), esp (50), ah (51), icmp6 (58), no-next-header (59), dstopts (60), ospf (89), pim (103), vrrp (112),sctp (132)

入口 IPv6 (inet6)接口。

出口 IPv6 (inet6)接口。

packet-length number

数据包长度(以字节为单位)。您必须输入一个介于0和65535之间的数字。

入口端口、Vlan、IPv4 (inet)和 IPv6 (inet6)接口。

出口 IPv4 (inet)接口。

precedence value

IP 标头中的服务类型(ToS)字节中的 IP 优先级位。(此字节也可用于 DiffServ DSCP。)为了代替数值,您可以指定以下文本同义词之一(数字值也将列出):

  • routine (0)

  • priority (1)

  • immediate (2)

  • flash (3)

  • flash-override (4)

  • critical-ecp (5)

  • internet-control (6)

  • net-control (7)

入口 IPv4 (inet)接口。

出口 IPv4 (inet)接口。

protocol type

IPv4 或 IPv6 协议值。为了代替数值,您可以指定以下文本同义词之一(数字值也将列出):

hop-by-hop (0),icmp (1), icmp6, igmp (2), ipip (4), tcp (6), egp (8), udp (17), ipv6 (41), routing (43), fragment (44),rsvp (46), gre (47), esp (50), ah (51), icmp6 (58), no-next-header (59), dstopts (60), ospf (89), pim (103), vrrp (112),sctp (132)

入口 IPv4 (inet)接口。

出口 IPv4 (inet)接口。

source-address

ip-address

IP 源地址字段,它是发送数据包的节点的地址。

入口 IPv4 (inet)接口和 IPv6 (inet6)接口。

出口 IPv4 (inet)接口和 IPv6 (inet6)接口。

入口 IRB 接口,用于 EVPN/VXLAN 结构(如果适用)

source-mac-address mac-address

数据包的源媒体访问控制(地址)(MAC)地址。

入口端口和 Vlan。

出口端口和 Vlan。

source-port value

TCP 或 UDP 源端口。通常,应将此匹配与protocol match 语句一起指定。在 "" 下destination-port列出的其中一个文本同义词就是 "数字" 字段。

入口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

出口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

入口 IRB 接口,用于 EVPN/VXLAN 结构(如果适用)

source-prefix-list prefix-list

IP 源前缀列表。您可以在前缀列表别名下定义 IP 地址前缀列表,以便经常使用。在[edit policy-options]层次结构级别定义此列表。

入口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

出口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

tcp-established

匹配已建立的 TCP 连接的数据包。此条件与用于设置 TCP 连接—的其他数据包(即三向握手数据包不匹配)相匹配。

指定tcp-established时,交换机不会隐式验证协议是否为 TCP。您还必须指定protocol tcp匹配条件。

入口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

出口 IPv4 (inet)接口。

tcp-flags value

一个或多个 TCP 标记:

  • ack (0x10)

  • fin (0x01)

  • push (0x08)

  • rst (0x04)

  • syn (0x02)

  • urgent (0x20)

入口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

出口 IPv4 (inet)接口。

tcp-initial

匹配连接的第一个 TCP 数据包。设置 TCP 标志SYN且未设置 tcp 标志ACK时,会发生匹配。

指定tcp-initial时,交换机不会隐式验证协议是否为 TCP。您还必须指定protocol tcp匹配条件。

入口端口、Vlan、IPv4 (inet)接口和 IPv6 (inet6)接口。

出口 IPv4 (inet)接口。

traffic-class value

8位字段,用于指定数据包的服务等级(CoS)优先级。信息流类字段用于指定 DiffServ 代码点(DSCP)值。此字段以前曾用作 IPv4 中的服务类型(ToS)字段,而此字段的语义(例如 DSCP)与 IPv4 相同。

您可以指定以下文本同义词之一(也列出了这些字段值):

af11 (10), af12 (12), af13 (14), af21 (18), af22 (20), af23 (22), af31 (26), af32 (28), af33 (30), af41 (34), af42 (36), af43 (38), cs0 (0), cs1 (8), cs2 (16), cs3 (24), cs4 (32), cs5 (40), cs6 (48), cs7 (56),ef (46)

入口 IPv6 (inet6)接口。

出口 IPv6 (inet6)接口。

ttl value

十进制中的 IP 生存时间(TTL)字段。该值可以为1-255。

入口 IPv4 (inet)接口。

出口 IPv4 (inet)接口。

入口 IRB 接口,用于 EVPN/VXLAN 结构(如果适用)

user-vlan-id number

与内部(客户) VLAN 在 q-Q VLAN 中的 ID 匹配。要最有效地使用过滤器内存并最大化可能的过滤器数,请结合使用learn-vlan-id以匹配外部(服务) VLAN ID。可接受的值为1-4095。

入口端口和 Vlan。

出口端口和 Vlan。

使用then语句定义当数据包与语句中的from所有条件匹配时应发生的操作。表 2显示了您可以在术语中指定的操作。(如果不包含then语句,系统将接受与过滤器匹配的数据包。)

表 2: 操作

操作

Description

accept

接受数据包。这是与某一术语相匹配的数据包的默认操作。

discard

无需发送互联网控制消息协议(ICMP)消息就能静默丢弃数据包。

reject message-type

丢弃数据包并发送“目标不可达”的 ICMPv4 消息(3类)。要记录被拒绝的数据包, syslog请配置 action 修饰符。

您可以指定以下消息类型之一:administratively-prohibited (default), 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 通知目标将与以管理方式筛选的“默认消息通信一起发送。”

注意: reject在入口接口上支持该操作。

routing-instance instance-name

向虚拟路由实例转发匹配的数据包。(唯一支持的实例类型为virtual-router。)数据包可转发至默认实例。

vlan VLAN-name

向特定 VLAN 转发匹配的数据包。

注意: vlan在入口接口上支持该操作。

注意: OCX 系列交换机不支持此操作。

您还可以指定中表 3列出的操作修饰符来计数、镜像、速率限制和对数据包进行分类。

表 3: 操作修饰符

操作修饰符

Description

count counter-name

计算与搜索项匹配的数据包数量。

forwarding-class class

将数据包分类为以下某个默认转发类或用户定义的转发类中的内容:

  • best-effort

  • fcoe

  • mcast

  • network-control

  • no-loss

注意: 要配置转发类,还必须配置丢失优先级。

log

在路由引擎中记录数据包的标头信息。要查看此信息,请输入show firewall log操作模式命令。

注意: log入口接口支持操作修饰符。

loss-priority (low | medium-low | medium-high | high)

设置数据包丢失优先级(PLP)。

注意: loss-priority入口接口支持操作修饰符。

注意: loss-priority操作修饰符与policer操作组合不受支持。

policer policer-name

将数据包发送至监管器(出于应用速率限制的目的)。

您可以为入口和出口端口、VLAN、IPv4 (inet)和 IPv6 (inet6)防火墙过滤器指定监管器。

注意: policer操作修饰符与loss-priority操作组合不受支持。

port-mirror

(ELS 平台)将流量(复制数据包)镜像到在[edit forwarding-options port-mirroring]层次结构级别的端口镜像实例中配置的输出接口。

您可以为入口和出口端口、VLAN、IPv4 (inet)和 IPv6 (inet6)防火墙过滤器指定端口镜像。

port-mirror-instance port-mirror-instance-name

(ELS 平台)将信息流镜像到在[edit forwarding-options port-mirroring]层次结构上配置的端口镜像实例。

您可以为入口和出口端口、VLAN、IPv4 (inet)和 IPv6 (inet6)防火墙过滤器指定端口镜像。

注意:

syslog

为此数据包记录警报。

注意: syslog入口接口支持操作修饰符。

three-color-policer three-color-policer-name

将数据包发送至三色监管器(用于应用速率限制)。

您可以为入口和出口端口、VLAN、IPv4 (inet)和 IPv6 (inet6)过滤器指定三色监管器。

注意: policer操作修饰符与loss-priority操作组合不受支持。