Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

MPLS 流量的防火墙过滤器匹配条件

您可以使用 MPLS 流量匹配条件配置防火墙过滤器 (family mpls)。

  • input-list filter-names除管理接口和内部以太网接口 (fxpem0)、环路接口 (lo0) 和 USB 调制解调器接口 (umd) 之外,所有接口都支持协议系列防火墙mpls过滤器的 and output-list filter-names 语句

  • (QFX5100、QFX5110、QFX5200、QFX5210)如果要在环路接口上应用 MPLS 过滤器,则只能对 、 expttl=1、 第 4 tcp 层和udp端口号字段进行label过滤。对于 TTL,您必须显式指定 ttl=1 under family mpls 才能匹配 TTL=1 数据包。唯一可以配置的操作包括 acceptdiscardcount。您只能在入口方向应用过滤器。

  • 对于具有 MPC 和 MIC 的 MX 系列路由器,您可以使用内部有效负载匹配条件,根据 MPLS 标记的 IPv4 和 IPv6 参数为 MPLS 系列应用入站和出站过滤器,并启用 MPLS 流量到监控设备的选择性端口镜像(从 Junos OS 版本 18.4R1 开始)。对于基于 IP 的过滤,MPLS 过滤术语 from 参数下提供了其他匹配条件,为了支持端口镜像,可以在过滤器术语 then参数下执行其他操作(例如端口镜像和端口镜像实例)。

表 1介绍了可以在层次结构级别配置[edit firewall family mpls filter filter-name term term-name from]match-conditions

表 1: MPLS 流量的防火墙过滤器匹配条件
匹配条件 Description

apply-groups

指定要从中继承配置数据的组。可以指定多个组名。必须按继承优先级顺序列出它们。第一组中的配置数据优先于后续组中的数据。

apply-groups-except

指定不从中继承配置数据的组。可以指定多个组名。

destination-port number

在 UDP 或 TCP 目标端口字段上进行匹配。

要代替数值,可以指定以下文本同义词之一(还会列出端口号):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), ldp (646), 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 (49), (65), talk (517), telnet (23), tftp (69), timedtacacs-ds (525), who (513) 或 xdmcp (177)。

exp number

数据包的 MPLS 标头中的实验 (EXP) 位号或位号范围。

对于 number,可以二进制、十进制或十六进制格式指定一个或多个从 0 到 7 的值,如下所示:

  • 单个 EXP 位,例如 exp 3

  • 几个 EXP 位,例如 exp 0,4

  • EXP 位的范围,例如 exp [0-5]. 应用于环路接口的过滤器不支持这些值。

注:

此匹配条件在 PTX10001-36MR、PTX10003、PTX10004、PTX10008 和 PTX10016 设备上已弃用,取而代之 exp0 number的是 。

exp-except number

与 MPLS 标头中的 EXP 位号或位号范围不匹配。对于 number,可以从 中7指定一个或多个值0

注:

此匹配条件在 PTX10001-36MR、PTX10003、PTX10004、PTX10008 和 PTX10016 设备上已弃用,取而代之 exp0-except的是 。

exp0 number

数据包的 TOS MPLS 标头中的实验 (EXP) 位号或位号范围。

对于 number,可以二进制、十进制或十六进制格式指定一个或多个从 0 到 7 的值,如下所示:

  • 单个 EXP 位,例如 exp0 3

  • 几个 EXP 位,例如 exp0 0,4

  • EXP 位的范围,例如 exp0 [0-5]. 应用于环路接口的过滤器不支持这些值。

exp0-except number

不要匹配数据包的 TOS MPLS 标头中的 EXP 位号或位号范围。

对于 number,可以二进制、十进制或十六进制格式指定一个或多个从 0 到 7 的值,如下所示:

  • 单个 EXP 位,例如 exp0-except 3

  • 几个 EXP 位,例如 exp0-except 0,4

  • EXP 位的范围,例如 exp0-except [0-5]. 应用于环路接口的过滤器不支持这些值。

exp1 number

实验性 (EXP) 位号或 MPLS 标头中位于 TOS(堆栈顶部)MPLS 标头旁边的位号范围。

对于 number,可以二进制、十进制或十六进制格式指定一个或多个从 0 到 7 的值,如下所示:

  • 单个 EXP 位,例如 exp1 3

  • 几个 EXP 位,例如 exp1 0,4

  • EXP 位的范围,例如 exp1 [0-5]. 应用于环路接口的过滤器不支持这些值。

exp1-except number

在 TOS MPLS 标头旁边的 MPLS 标头中的 EXP 位号或位号范围上不匹配。

对于 number,可以二进制、十进制或十六进制格式指定一个或多个从 0 到 7 的值,如下所示:

  • 单个 EXP 位,例如 exp1-except 3

  • 几个 EXP 位,例如 exp1-except 0,4

  • EXP 位的范围,例如 exp1-except [0-5]. 应用于环路接口的过滤器不支持这些值。

forwarding-class class

转发类。指定 assured-forwardingbest-effortexpedited-forwarding、 或 network-control

注:

在 PTX10001-36MR 上,使用PTX10003、PTX10004、PTX10008、PTX10016 路由器 exp0exp1 位来获取转发类。

forwarding-class-except class

在转发类上不匹配。指定 assured-forwardingbest-effortexpedited-forwarding、 或 network-control

interface interface-name

接收数据包的接口。您可以配置匹配条件,根据接收数据包的接口匹配数据包。

注:

如果使用不存在的接口配置此匹配条件,则该术语与任何数据包都不匹配。

interface-set interface-set-name

将接收数据包的接口与指定的接口集匹配。

要定义接口集,请在层次结构级别包含 interface-set 语句 [edit firewall]

注:

PTX 系列数据包传输路由器不支持此匹配条件。

有关更多详细信息,请参阅过滤接口集上接收的数据包概述

ip-version number

匹配内部 IP 版本。例如,要匹配带有 MPLS 标记的 IPv4 数据包,请匹配文本同义词 ipv4。您可以 ip-version number 根据源地址和目标地址及端口进一步匹配数据包。请参阅 表 1表 2

label number

数据包的 MPLS 标头中的 MPLS 标签值或标签值范围。

对于 number,可以十进制或十六进制格式指定一个或多个从 0 到 1048575 的值,如下所示:

  • 单个标签,例如 label 3

  • 多个标签,例如 label 0,4

  • 一系列标签,例如 label [0-5]. 应用于环路接口的过滤器不支持这些值。

注:

此选项在 PTX10001-36MR、PTX10003、PTX10004、PTX10008 和 PTX10016 设备上已弃用,并替换为 label0

label0 number

数据包的 TOS MPLS 标头中的 MPLS 标签值或标签值范围。

对于 number,可以十进制或十六进制格式指定一个或多个从 0 到 1048575 的值,如下所示:

  • 单个标签,例如 label0 3

  • 多个标签,例如 label0 0,4

  • 一系列标签,例如 label0 [0-5]. 应用于环路接口的过滤器不支持这些值。

label0-except number

不匹配数据包的 TOS MPLS 标头中的 MPLS 标签值或标签值范围。

对于 number,可以十进制或十六进制格式指定一个或多个从 0 到 1048575 的值,如下所示:

  • 单个标签,例如 label0-except 3

  • 多个标签,例如 label0-except 0,4

  • 一系列标签,例如 label0-except [0-5]. 应用于环路接口的过滤器不支持这些值。

label1 number

匹配 TOS MPLS 标头旁边的 MPLS 标头的 MPLS 标头标签中的 MPLS 标签值或标签值范围。

对于 number,可以十进制或十六进制格式指定一个或多个从 0 到 1048575 的值,如下所示:

  • 单个标签,例如 label1 3

  • 多个标签,例如 label1 0,4

  • 一系列标签,例如 label1 [0-5]. 应用于环路接口的过滤器不支持这些值。

label1-except number

与 TOS MPLS 标头旁边的 MPLS 标头标签中的 MPLS 标签值或标签值范围不匹配。

对于 number,可以十进制或十六进制格式指定一个或多个从 0 到 1048575 的值,如下所示:

  • 单个标签,例如 label1-except 3

  • 多个标签,例如 label1-except 0,4

  • 一系列标签,例如 label1-except [0-5]. 应用于环路接口的过滤器不支持这些值。

label number top | bottom | offset offset-value

匹配传入 MPLS 数据包的顶部标签、底部标签或指定偏移量(从标签堆栈的顶部或底部)的标签。

  • top - 参考堆栈顶部与堆栈底部匹配。

  • bottom - 参考堆栈底部与堆栈顶部匹配。

  • offset<offset-value> - 参考 MPLS 堆栈深度相对于堆栈顶部或底部进行匹配,其中 offset-value = (0..15)。

    • label number top offset offset-value - MPLS 顶部标签过滤器匹配,与堆叠砂光的偏移量从 0 到 15。0 是隐式和 CLI 过滤器从堆栈顶部开始的第一个标签位置。

    • label number bottom offset offset-value - MPLS 底部标签过滤器匹配,与堆叠打磨的偏移量从 0 到 15。0 是隐式和 CLI 过滤器从堆栈底部开始的第一个标签位置。

    • label number offset offset-value - 如果旁边 label number 没有提供顶部或底部选项,则默认匹配从具有给定偏移量的堆栈顶部开始。换句话说,标签编号偏移量 [n = 0..15] 等效于标签编号顶部偏移量 [n = 0..15]。

  • label number - 如果旁边 label number 没有提供任何选项,则默认匹配将在顶部标签上完成(隐式偏移量 0,锚点位于堆栈顶部)。

注:
  • 标签上的过滤器匹配如果偏移超出 MPLS 堆栈深度,则可能无法提供预期行为。

    • 对于位置为底部的过滤器标签匹配,如果偏移量超出 MPLS 堆栈深度,则过滤器将始终在堆栈末尾标签上匹配。

    • 对于位置为顶部的过滤器匹配,如果偏移量超出 MPLS 堆栈深度,则将指向付费负载以匹配配置的标签。

注:

配置命令选项在 Junos 22.3R1 版中引入。

loss-priority level

匹配数据包丢失优先级 (PLP) 级别。

指定单个级别或多个级别:lowmedium-lowmedium-highhigh

在 M120 和 M320 路由器上受支持;采用增强型 CFEB (CFEB-E) 的 M7i 和 M10i 路由器;以及 MX 系列路由器和 EX 系列交换机。

对于配备增强型 II 灵活 PIC 集中器 (FPC) 和 EX 系列交换机的 M320、MX 系列和 T 系列路由器上的 IP 流量,必须在层次结构级别包含[edit class-of-service]语句 tri-color ,才能提交具有指定四个级别中的任何一个的 PLP 配置。如果未启用该 tri-color 语句,则只能配置 和 highlow 级别。这适用于所有协议家族。

有关该 tri-color 语句的信息,请参阅 配置和应用 Tricolor 标记监管器。有关使用行为聚合 (BA) 分类器设置传入数据包的 PLP 级别的信息,请参阅 了解转发类如何将类分配给输出队列

注:

在 PTX10001-36MR 上,使用PTX10003、PTX10004、PTX10008、PTX10016 路由器 exp0exp1 位来获取丢失优先级。

loss-priority-except level

与 PLP 级别不匹配。有关详细信息,请参阅 loss-priority 匹配条件。

注:

PTX 系列数据包传输路由器不支持此匹配条件。

source-port number

在 TCP 或 UDP 源端口字段上进行匹配。

不能在同一术语中指定 portsource-port 匹配条件。

如果为 IPv4 流量配置此匹配条件,我们建议您还在同一术语中配置 protocol udp or protocol tcp match 语句,以指定端口上使用的协议。

您可以指定 下 destination-port列出的文本同义词之一,以代替数值字段。

ttl0 number

匹配数据包的 TOS MPLS 标头中的 TTL 编号或数字范围。生存时间 (TTL) 是 MPLS 标签中的一个 8 位字段,表示数据包在其生命结束和丢弃之前剩余的时间。

对于 number,可以指定一个介于 0 到 255 之间的值。

ttl0-except number

不要匹配数据包的 TOS MPLS 标头中的 TTL 编号或数字范围。生存时间 (TTL) 是 MPLS 标签中的一个 8 位字段,表示数据包在其生命结束和丢弃之前剩余的时间。

对于 number,可以指定一个介于 0 到 255 之间的值。

ttl1 number

匹配数据包的 TOS MPLS 标头旁边的 MPLS 标头中的 TTL 编号或编号范围。生存时间 (TTL) 是 MPLS 标签中的一个 8 位字段,表示数据包在其生命结束和丢弃之前剩余的时间。

对于 number,可以指定一个介于 0 到 255 之间的值。

ttl1-except number

不要匹配数据包的 TOS MPLS 标头旁边的 MPLS 标头中的 TTL 编号或数字范围。生存时间 (TTL) 是 MPLS 标签中的一个 8 位字段,表示数据包在其生命结束和丢弃之前剩余的时间。

对于 number,可以指定一个介于 0 到 255 之间的值。

注:

exp0exp0-exceptexp1exp1-exceptlabel0ttl1ip-versionlabel1ttl1-exceptlabel0-exceptlabel1-exceptttl0ttl0-except仅在 PTX10001-36MR、PTX10003、PTX10004、PTX10008 PTX10016 上受支持。

表 2 介绍了可在层次结构级别为 [edit firewall family mpls filter filter-name term term-name then] MPLS 防火墙过滤器配置的操作。

表 2: MPLS 防火墙过滤器支持的操作

操作

Description

accept

接受数据包

count counter-name

计算通过此过滤器或术语的数据包数。

注:

我们建议您为防火墙过滤器中的每个术语配置一个计数器,以便可以监控与每个过滤器术语中指定的条件匹配的数据包数。

discard

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

policer

从 Junos OS 13.2X51-D15 开始,您可以将 MPLS 过滤器匹配的流量发送到双色监管器。

three-color-policer

从 Junos OS 13.2X51-D15 开始,您可以将 MPLS 过滤器匹配的流量发送到三色监管器。