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除管理接口和内部以太网接口(或em0)、环路接口 (fxp) 和 USB 调制解调器接口 (lo0umd) 之外,所有接口均支持协议系列防火墙过滤器mpls的和output-list filter-names语句

  • 如果数据包有多个 MPLS 标签,则过滤器只会将匹配条件应用于标签堆栈中的底部标签。

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

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

表 1 介绍了 match-conditions 可以在层级配置 [edit firewall family mpls filter filter-name term term-name from] 的问题。

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

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)、(21) eklogin 05)、 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)、(44) snpp 4)、 socks (1080)、 ssh (22)、 sunrpc (111)、 syslog (514)、 tacacs (49)、 tacacs-ds (65)、 talk (517)、 telnet (23)、 tftp (69)、 timed (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,可以指定一个或多个值,从07

注:

此匹配条件在 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

TOS(堆栈顶部)MPLS 报头旁边的 MPLS 报头中的实验 (EXP) 位数或位数范围。

对于 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-effort、 、 expedited-forwardingnetwork-control

注:

在 PTX10001-36MR、PTX10003、PTX10004、PTX10008、PTX10016 路由器上exp1exp0或比特用于获取转发类。

forwarding-class-except class

转发类不匹配。指定 assured-forwardingbest-effort、 、 expedited-forwardingnetwork-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 报头的 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 源端口字段。

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

如果为 IPv4 流量配置此匹配条件,我们建议也在同一术语中配置 protocol udpprotocol 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-exceptexp1、 、 exp1-except、 、 label0-exceptlabel1ttl0label1-exceptip-versionlabel0ttl0-except、 和,ttl1ttl1-except并且仅在 PTX10001-36MR、PTX10003、PTX10004、PTX10008、PTX10016 上受支持。

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

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

行动

说明

accept

接受数据包

count counter-name

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

注:

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

discard

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

policer

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

three-color-policer

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