在 MX、M 和 T 系列路由器和 NFX250 上配置流聚合,以使用版本 5 或版本 8 cflowd
要启用 cflowd 版本 5 或版本 8 流格式的集合,请包括以下 flow-server
语句:
flow-server hostname { aggregation { autonomous-system; destination-prefix; protocol-port; source-destination-prefix { caida-compliant; } source-prefix; } autonomous-system-type (origin | peer); (local-dump | no-local-dump); port port-number; version format; }
您可以在以下层级包含此语句:
[edit forwarding-options sampling family (inet | inet6 | mpls) output]
[edit forwarding-options sampling instance instance-name output]
[edit forwarding-options accounting name output cflowd hostname]
您必须在 family inet
监控接口上的逻辑接口 unit 0
上配置语句,如以下示例所示:
[edit interfaces] sp-3/0/0 { unit 0 { family inet { ... } } }
在层次结构级别指定用于监控服务接口的 [edit chassis images pic]
启动映像。您必须通过包括以下配置,启用 NTP 客户端以使 cflowd 功能可操作:
[edit system] ntp { boot-server ntp.example.com; server 172.17.28.5; } processes { ntp enable; }
您还可以通过在层次结构级别添加 cflowd
语句 [edit forwarding-options monitoring name family inet output]
,为流监控应用程序配置 cflowd 版本 5:
cflowd hostname { port port-number; }
以下限制适用于 cflowd 流格式:
您可以在层级配置最多一个版本 5 和一个版本 8 流格式
[edit forwarding-options accounting name output]
。您可以通过包含
flow-server
语句在层次结构级别上为基于路由引擎的采样配置多达 8 个版本 5 或一个版本 8 流格式[edit forwarding-options sampling family (inet | inet6 | mpls) output]
。相比之下,基于 PIC 的采样允许您同时指定一个 cflowd 版本 5 服务器和一个版本 8 服务器。但是,这两个 cflowd 服务器必须具有不同的 IP 地址。您可以在层级配置最多八个版本 5 流格式
[edit forwarding-options monitoring name output]
。流监控应用程序不支持版本 8 流格式和聚合。不采样出站路由引擎流量。防火墙过滤器作为出口接口上的输出应用,用于对数据包进行采样并导出数据。对于传输流量,出口采样工作正常。对于内部流量,下一跃点安装在数据包转发引擎中,但不导出取样数据包。
只有在路由记录重新同步操作完成后(即 PIC 出现后 60 秒)才会在监控 PIC 上创建流。发送到 PIC 的任何数据包都一直被丢弃,直到同步过程完成。
该配置包括一个专有 v5 扩展模板,用于在流记录中支持 4 字节 AS 信息。其模板版本设置为 500,表示它是专有的。所有其他字段保持不变;源 AS 和目标 AS 各长 4 个字节,而不是像传统 v5 模板中那样为 2 个字节。在层次结构级别提供
[edit forwarding-options sampling family inet output flow-server server-name version]
此选项。
在语句中 cflowd
,指定收集流聚合的主机的名称或标识符。您还必须在主机上包括用户数据报协议 (UDP) 端口号和版本,从而提供导出的 cflowd 聚合的格式。要导出之前收集日志文件中的 cflowd 记录,请包含语句 local-dump
。
您可以在同一配置中同时指定主机 (cflowd) 采样和端口镜像;但是,任何时候只有一个操作才会生效。端口镜像优先。有关更多信息,请参阅 在 M、T MX、ACX 和 PTX 系列路由器上配置端口镜像。
只有 cflowd 版本 8,您可以通过包含 aggregation
语句来指定特定类型的流量聚合。这可以通过使 cflowd 导出目标流(而非所有聚合流量)来节省内存和带宽。要指定流类型,请 aggregation
添加语句:
aggregation { autonomous-system; destination-prefix; protocol-port; source-destination-prefix { caida-compliant; } source-prefix; }
您可以在以下层级包含此语句:
[edit forwarding-options sampling family (inet | inet6 | mpls) output flow-server hostname]
[edit forwarding-options accounting name output cflowd hostname]
该 autonomous-system
语句按 AS 编号配置聚合;此语句可能需要将单独的 cflowd autonomous-system-type
语句设置为包含 AS origin
编号。 peer
选项 origin
指定在源自治系统 cflowd 字段中使用数据包源地址的源 AS。选项 peer
指定使用在源自治系统 cflowd 字段中传递的数据包通过的对等 AS。默认情况下,cflowd 导出源 AS 编号。
该 destination-prefix
语句仅配置目标前缀的聚合。
该 protocol-port
语句按协议和端口号配置聚合;需要设置单独 cflowd port
语句。
该 source-destination-prefix
语句按源前缀和目标前缀配置聚合。CAIDA 的 cflowd 应用程序版本 2.1b1 不会根据 1999 年 8 月 30 日的 CAIDA cflowd 配置指南记录源和目标掩码长度值。如果配置该 caida-compliant
语句,则 Junos OS 将遵守 cflowd 的版本 2.1b1。如果未在 caida-compliant
配置中包含语句,Junos OS 将按照 cflowd 配置指南记录源和目标掩码长度值。
该 source-prefix
语句仅配置源前缀的聚合。
本地 ASCII 文件中的取样数据包集合不受语句 cflowd
的影响。
以下命令在层次结构级别启用基于路由引擎和 PIC 的 set forwarding options sampling
采样:
set input rate rate
set input run-length length
set family inet output flow-server flowcollector port udp port
set family inet output flow-server flowcollector no-local-dump
set family inet output flow-server flowcollector version <5/8>
以下命令在层次结构级别启用基于路由引擎和 PIC 的 set interfaces
采样:
interface to be sampled 单元 unit 系列 inet 过滤器 input/output filtername
以下命令在层次结构级别启用基于路由引擎和 PIC 的 set firewall family
采样:
set inet filter filtername term 1 then count filternameing
set inet filter filtername term 1 then sample
set inet filter filtername term 1 then accept
以下命令可在层级启用基于 PIC 的 set forwarding options sampling
采样:
set family inet output interface sp-*/*/* source address source address
以下示例显示了使用版本 5 的基于 PIC 的流聚合配置:
family inet { output { flow-inactive-timeout 15; flow-active-timeout 60; flow-server 203.0.113.165 { port 9996; version 5; } interface sp-2/2/0 { engine-id 4; source-address 203.0.113.126; } }
以下示例显示了使用版本 5 的基于路由引擎的流聚合配置:
family inet { output { flow-inactive-timeout 15; flow-active-timeout 60; flow-server 203.0.113.165 { port 9996; source-address 203.0.113.126; version 5; } }