示例:MX 系列路由器上的被动流监控配置

图 1:被动流监控 — 拓扑图 Network diagram illustrating traffic flow and monitoring setup. Key components: Flow Server, Packet Monitoring Station with routers, VRF, VT, ES, Packet Analyzers, traffic flow types, and IP addresses. Traffic is mirrored, encrypted, and analyzed.

在 图 1 中,流量通过接口 so-0/0/0 和 so-0/1/0 进入监控站。防火墙过滤器接受要监控的流量后,数据包将进入 VRF 实例。

原始数据包在 VRF 实例内传输到监控服务 PIC 进行流处理。最终流数据包从监控服务接口通过 fe-3/0/0 接口发送到流服务器。

已接受流量的副本将端口镜像到隧道 PIC。复制的数据包进入隧道接口时,第二个防火墙过滤器会将 TCP 和 UDP 数据包分离,并将它们放入两个基于过滤器的转发实例中。UDP 实例将 UDP 数据包定向到连接到 fe-3/2/0 的数据包分析器。TCP 实例将 TCP 数据包发送到 ES PIC 进行加密,ES PIC 将数据包发送到连接到 fe-3/2/1 的第二个数据包分析器。

第一步是定义防火墙过滤器以选择要监控的数据包。必须接受所有过滤后的流量,并且 port-mirror 层次结构级别的 [edit firewall family inet filter filter-name term term-name then] 语句有助于端口镜像。

接下来,配置输入 SONET/SDH 接口并应用刚才定义的防火墙过滤器。该 passive-monitor-mode 语句会禁用 SONET/SDH 接口上的 SONET 激活功能,并启用被动流量监控。

配置将用于监控应用程序的所有其他接口,包括监控服务接口、导出接口、隧道接口和 ES 接口。接口就位后,配置 VRF 实例和监控组,以将原始数据包从输入接口定向到监控服务接口进行处理。生成的流描述数据包退出 fe-3/0/0 以到达流服务器。

接下来,配置语句以将受监控的流量端口镜像到隧道接口。设计一个防火墙过滤器,用于选择其中部分复制的流量进行进一步分析,以及部分流量进行丢弃。在这种情况下,隔离 TCP 和 UDP 流量,并将这两个流量引导至基于过滤器的单独转发路由实例。请记住将过滤器应用于隧道接口,以便将 TCP 流量与 UDP 流量分离。此外,还可以使用路由表组将接口路由导入转发实例。

在基于过滤器的转发实例中,定义静态路由下一跃点。TCP 实例的下一跃点是 ES 接口,UDP 实例的下一跃点是连接到 fe-3/2/0 的数据数据包分析器。最后,配置 IPSec,使 TCP 流量的下一跃点是连接到 fe-3/2/1 的第二个数据包分析器。

验证您的工作

要验证配置是否正确,请在配置为被动流监控的监控站上使用以下命令:

  • show route 0/0

  • show passive-monitoring error

  • show passive-monitoring flow

  • show passive-monitoring memory

  • show passive-monitoring status

  • show passive-monitoring usage

要清除 和 show passive-monitoring error show passive-monitoring flow 命令的统计信息,请发出命令 clear passive-monitoring (all | interface-name) 。

您还可以使用简单网络管理协议 (SNMP) 查看被动流监控状态。支持以下管理信息库 (MIB) 表:

  • jnxPMonErrorTable — 与show passive-monitoring error命令相对应。

  • jnxPMonFlowTable — 与show passive-monitoring flow命令相对应。

  • jnxPMonMemoryTable — 对应于show passive-monitoring memory命令。

以下部分显示了配置示例中使用的命令的 show 输出:

# 我们只关注路由实例路由。

注意:

对于所有 show passive-monitoring 命令,使用通配符(如 *)或 all 选项时获得的输出基于层次结构级别上 [edit forwarding-options monitoring group-name] 列出的配置接口。在配置示例的输出中,您只能看到已配置接口 mo-4/0/0、 mo-4/1/0、 mo-4/2/0 和 mo-4/3/0的信息。

您可以在监控组中配置的许多语句(如 engine-id 和 engine-type)在命令的 show passive-monitoring 输出中可见。

表 1: show passive-monitoring error 命令的输出字段

字段

解释

丢 包数(无内存)

因内存原因丢弃的数据包数。

丢弃的数据包(非 IP)

丢弃的非 IP 数据包数。

丢 弃的数据包(非 IPv4)

由于未通过 IPv4 检查而丢弃的数据包数。

丢包数(标头太小)

由于数据包长度或 IP 报头长度太短而丢弃的数据包数。

内存分配失败

流记录内存分配失败的次数。一小部分反映了无法补充可用列表。数字较大表示监控站的内存空间几乎不足。

内存可用故障

释放的流记录内存数。

内存可用列表故障

从空闲列表中接收的失败的流记录数。内存即将耗尽,或者一秒钟内创建太多大于 128K 的新流量。

内存警告

监控服务 PIC 上的流量已超过 100 万个数据包/秒 (Mpps),或监控服务 II PIC 上的流量已超过 2 Mpps。回答可以是或否。

内存过载

内存已过载。回答是 “是” 或 “否”。

PPS 过载

以每秒数据包数为单位,确定 PIC 接收的流量是否超过配置的阈值。回答可以是或否。

BPS 过载

以字节数/秒为单位,用于 PIC 接收的流量是否超过配置的阈值。回答可以是或否。

表 2: show passive-monitoring flow 命令的输出字段

字段

解释

流数据包

作 PIC 接收的数据包数。

流字节

作 PIC 接收的字节数。

流数据包 10 秒速率

PIC 每秒处理的数据包数,显示为 10 秒平均值。

流字节 10 秒速率

PIC 处理的每秒字节数,显示为 10 秒平均值。

活动流

PIC 跟踪的当前活动流量数。

总流量

作 PIC 接收的流总数。

导出的流

作 PIC 导出的流量总数。

流 导出的数据包

作 PIC 导出的流数据包总数。

非活动流超时

由于不活动而导出的流总数。

活动流量超时

由于活动超时而导出的长期流总数。

表 3: show passive-monitoring memory 命令的输出字段

字段

解释

分配计数

分配的流记录数。

空闲计数

释放的流记录数。

最大分配数

自监控站启动以来分配的最大流记录数。此数字表示一次分配的流记录的峰值数。

每秒分配

在 PIC 上的最后一个统计信息间隔内每秒分配的流记录。

每秒释放数

在 PIC 上的最后一个统计时间间隔内每秒释放的流记录。

已用总内存

当前使用的内存总量(以字节为单位)。

可用 内存总数

当前可用内存总量(以字节为单位)。

表 4: show passive-monitoring status 命令的输出字段

字段

解释

接口状态

指示接口是否正在监控(运行正常)、禁用(管理禁用)或未监控(未配置)。

组索引

整数,表示 PIC 所属的监控组。(这并不表示监控组的数量。

导出间隔

为流记录配置的导出间隔(以秒为单位)。

导出格式

配置的导出格式(目前仅支持 v5)。

协议

PIC 配置为监控的协议(当前仅支持 IPv4)。

发动机类型

插入输出流数据包中的已配置引擎类型。

引擎 ID

插入输出流数据包中的配置引擎 ID。

路由记录计数

记录的路由数。

IFL 到 SNMP 索引计数

映射到 SNMP 索引的逻辑接口数。

AS 计数

流量已穿过的 AS 边界数。

时间设置

指示时间戳是否就位。

配置集

指示是否设置了监控配置。

路由记录集

指示是否正在记录路由。

IFL SNMP 映射集

指示逻辑接口是否映射到 SNMP 索引。

表 5: show passive-monitoring usage 命令的输出字段

字段

解释

正常运行时间

PIC 开始运行的时间(以毫秒为单位)。

中断时间

自上次 PIC 重置以来,PIC 处理数据包所花费的累计时间。

负载(5 秒)

PIC 上的 CPU 负载平均超过 5 秒。该数字是将活动任务所花费的时间除以总经过时间得出的百分比。

加载(1 分钟)

PIC 上的 CPU 负载平均超过 1 分钟。该数字是将活动任务所花费的时间除以总经过时间得出的百分比。