在 ACX 和 PTX 系列路由器上配置内联主动流监控
本主题介绍如何在支持 IPv4 和 IPv6 流量此功能的 ACX 和 PTX 系列路由器上配置内联主动流监控。
概述
使用 功能浏览器:JFlow 和 功能浏览器:流量采样 来确认平台和版本对特定功能的支持。请参阅 flow-monitoring 了解配置语句语法,因为支持的语句因平台而异。
VRF 支持: 从 Junos OS 演化版 24.2R1 版开始,我们支持将内联主动流监控取样数据包的 IPFIX 或版本 9 记录导出到可通过以下方式访问的收集器:
-
属于 mgmt_junos VRF 实例的接口。
-
属于非默认 VRF 实例的 WAN 端口。
您可以在层次结构级别使用 [edit forwarding-options sampling instance name family type output flow-server IP-address] configuration 语routing-instance句配置此功能。您必须确保可通过管理接口访问收集器。对于每种类型的 VRF 实例,我们最多支持四个收集器。您可以在同一采样配置中为这两种类型的 VRF 实例配置收集器。但是,通过 mgmt_junos VRF 实例可访问的收集器和可通过WAN端口访问的收集器不能在同一家族中共存,因为每个家族只能指定一个源 IP 地址。您可以指定inet收集器、inet6收集器或这两种类型的混合。物理接口、AE 接口和 IRB 接口支持默认和非默认 VRF 中的入口和出口采样。要配置 mgmt_junos VRF 实例,请参阅专用实例中的管理接口。
支持 MPLS-over-UDP: 要为 PTX 系列路由器上的 MPLS-over UDP 流量配置内联流监控,请参阅 PTX 系列路由器上 MPLS-over-UDP 流量的内联主动流监控。PTX10001-36MR、PTX10003、PTX10004 和 PTX10008(使用 JNP10008-SF3)路由器不支持对 MPLS-over-UDP 流量进行内联主动流监控。
收集器:从 Junos OS 18.2R1 版开始,您最多可以在一个系列下配置四个收集器,以进行内联主动流监控。在早期版本的 Junos OS 中,一个家族下只能配置一个收集器用于内联主动流监控。从 Junos OS 演化版 20.3R1 开始,您最多可以配置四个收集器用于内联主动流监控。要在家族下配置收集器以进行内联主动流监控,请在层次结构级别配置edit forwarding-options sampling-instance instance-name family (inet | inet6) output该flow-server语句。要指定最多四个收集器,最多包含四个flow-server语句。
线卡 CPU: 内联主动流监控在线卡 CPU (LCPU) 上实施,运行 Junos OS 演化版的 ACX 系列路由器除外,其中所有功能均基于软件而非硬件。对于所有其他受支持的平台,所有功能(如流创建、流更新和流记录导出)均由 LCPU 完成。流记录以 IPFIX 格式或版本 9 格式发送。
流量:从 Junos OS 演化版 21.2R1 和 Junos OS 21.3R1 版开始,不会维护任何流量。每个取样的数据包都被视为一个流。收到采样数据包后,将创建流并立即超时为非活动状态,并且软件会将记录导出到收集器。因此,发送到收集器的记录数比以前多。IPFIX 和版本 9 选项模板数据记录现在的 (元素 ID 36) 和 Flow Inactive Timeout (元素 ID 37) 字段中Flow Active Timeout包含 0。因此,选项模板数据记录不符合 IPFIX RFC 7011。show services accounting flow inline-jflow fpc-slot slot作模式命令现在为所有 Active Flows 和 Timed Out 字段显示 0。各个Total Flows字段的值现在等于它们各自的Flow Packets字段值。各个Flows Inactive Timed Out字段的值现在等于它们各自的Flow Packets字段值。该语句在层次结构级别上[edit services flow-monitoring version version template template-name]对nexthop-learning此无流行为的影响因作系统而异。对于 Junos OS 演化版,不建议配置该nexthop-learning语句,因为它会减少可处理的数据包数。对于 Junos OS,您可以配置该nexthop-learning语句来更改此默认无流行为,并再次创建和维护流,然后将模板附加到与需要先前行为的 FPC 关联的所有采样实例。
限制和限制
以下限制和限制适用于 Junos OS 和 Junos OS 演化版中的内联主动流监控功能:
-
PTX10001-36MR、PTX10003、PTX10004 和 PTX10008(使用 JNP10008-SF3)路由器不支持出口MPLS过滤器。
-
PTX10001-36MR 路由器不支持多 FPC 采样收集,因为它只有 1 个路由引擎。
-
出口抽样不支持真正的传出接口 (OIF) 报告。在 Junos OS 演化版中,GRE 解封装数据包不支持真正的传出接口 (OIF) 报告。
-
真正传入接口的接口类型字段不属于版本 9 模板,因为版本 9 导出版本中没有此元素。
-
对于 PTX10003 路由器上的 GRE 隧道流量,物理接口将在第 2 层标头中报告,并在流创建过程中被视为密钥之一。因此,当物理接口移入或移出聚合以太网捆绑包时,将创建新流量,而旧流量将在一段时间不活动后超时。物理接口、逻辑接口或聚合逻辑接口(基于配置)在基于配置的导出记录中报告为传入接口。
对于 PTX10008(使用 JNP10008-SF3)路由器上的 GRE 隧道流量,FTI 接口配置为终止 GRE 隧道。在流创建过程中,此接口用作密钥之一,而非物理接口。因此,当物理接口移入或移出聚合以太网捆绑包时,不会创建新流量,因为密钥保持不变。物理接口、逻辑接口或聚合逻辑接口(基于配置)在导出的记录中报告为传入接口。
-
ACX 系列路由器不支持 MPLS 模板。
-
对于 ACX 路由器,您不能直接在逻辑接口上配置采样。相反,您必须在接口上配置防火墙过滤器才能启用采样。
如何在 ACX 或 PTX 系列路由器上配置内联主动流监控
在此示例中,我们配置了一个 version-ipfix 模板来记录 IPv4 和 IPv6 流量。
配置模板以指定输出属性
-
定义模板并配置模板应记录的流类型。(ACX 系列路由器不支持 MPLS 模板。)
[edit services flow-monitoring] user@host# set version-ipfix template template-name ipv4-template user@host# set version-ipfix template template-name ipv6-template user@host# set version-ipfix template template-name mpls-template
-
(可选,仅适用于支持这些功能的 PTX 系列路由器)为模板配置其他输出属性,例如流超时间隔和模板/选项刷新率,以控制流记录。
您可以使用该
template-refresh-rate选项来配置流量生成器使用数据包数或秒数向流收集器发送有关模板定义的更新的频率。[edit services flow-monitoring] user@host# set version-ipfix template template-name flow-active-timeout seconds user@host# set version-ipfix template template-name flow-inactive-timeout seconds user@host# set version-ipfix template template-name template-refresh-rate (packets packets | seconds seconds) user@host# set version-ipfix template template-name option-refresh-rate (packets packets | seconds seconds)
- (可选,仅适用于支持这些功能的 PTX 系列路由器)
如果您正在监控 MPLS 流,即如果正在使用的模板是为 MPLS 协议家族配置的,请使用该
tunnel-observation选项识别 MPLS 流的类型。[edit services flow-monitoring] user@host# set version-ipfix template template-name tunnel-observation (ipv4 | ipv6 | mpls-over-udp)
-
(选答)启用下一跃点地址的学习,以便报告真正的传出接口。
注意:从 Junos OS 演化版 21.2R1 开始,我们不建议启用下一跃点地址学习,因为它会减少可处理的数据包数。但是,从 Junos OS 21.3R1 版开始,您可以将该
nexthop-learning语句配置为更改默认的无流行为,并再次创建和维护流,然后将模板附加到与需要先前行为的 FPC 关联的所有采样实例。[edit services flow-monitoring] user@host# set version-ipfix template template-name nexthop-learning enable
配置采样实例以指定输入属性
-
定义采样实例并配置要采样的数据包数比率。例如,如果指定速率 10,则每十分之一数据包(10 个数据包中的 1 个)进行采样。
[edit forwarding-options sampling] user@host# set instance instance-name input rate number
最佳实践:建议对 MPLS 流使用 1000 或更高的值。
-
为采样实例配置协议家族,并指定用于发送流量聚合的流量收集器。(ACX 系列路由器仅
family inet支持或family inet6配置。)[edit forwarding-options sampling] user@host# set instance instance-name family (inet | inet6 | mpls) output flow-server hostname
-
(选答)指定流收集器的 UDP 端口以及要与采样实例一起使用的模板。(ACX 系列路由器不支持 MPLS 模板。)
[edit forwarding-options sampling] user@host# set instance instance-name family (inet | inet6 | mpls) output flow-server hostname port port-number user@host# set instance instance-name family (inet | inet6 | mpls) output flow-server hostname version-ipfix template template-name
-
配置采样数据包的内联处理。
(ACX 系列路由器仅
family inet支持或family inet6配置。)[edit forwarding-options sampling] user@host# set instance instance-name family (inet | inet6 | mpls) output inline-jflow source-address address
将采样实例分配给 FPC
-
将采样实例分配给要在其上实施流监控的 FPC。
[edit chassis] user@host# set fpc slot-number sampling-instance instance-name
配置防火墙过滤器以接受流和对流进行采样
-
为协议家族配置防火墙过滤器,并启用流量采样。(ACX 系列路由器仅
family inet支持内联主动流监控功能或family inet6对其进行配置。)[edit firewall] user@host# set family (inet | inet6 | mpls) filter filter-name user@host# set family (inet | inet6 | mpls) filter filter-name term term-name then accept user@host# set family (inet | inet6 | mpls) filter filter-name term term-name then sample
将防火墙过滤器分配给接口
-
将输入防火墙过滤器分配给要监控的接口。(ACX 系列路由器仅
family inet支持内联主动流监控功能或family inet6对其进行配置。)[edit interfaces] user@host# set interface-name unit unit-number family (inet |inet6 | mpls) filter input filter-name
示例配置的结果
以下是 PTX 系列路由器上支持内联主动流监控family inetfamily inet6的实例的采样配置示例:
[edit chassis]
fpc 0 {
sampling-instance sample-1;
}
[edit services]
flow-monitoring {
version-ipfix {
template test-template {
flow-active-timeout 30;
flow-inactive-timeout 60;
nexthop-learning {
enable;
}
template-refresh-rate {
seconds 10;
}
ipv4-template;
}
template v6 {
ipv6-template;
}
}
}
[edit interfaces]
et-1/0/0 {
unit 0 {
family inet {
filter {
input ipv4-filter;
output ipv4-filter;
}
address 192.168.100.10/24;
}
}
}
et-1/0/2 {
unit 0 {
family inet6 {
filter {
input ipv6-filter;
output ipv6-filter;
}
address 2001:db8:0:2::1/64;
}
}
}
lo0 {
unit 0 {
family inet {
address 192.168.100.1/32;
}
}
}
[edit forwarding-options]
sampling {
instance {
sample-1 {
input {
rate 10;
}
family inet {
output {
flow-server 10.208.174.127 {
port 2055;
version-ipfix {
template {
test-template;
}
}
}
inline-jflow {
source-address 192.168.100.1;
}
}
}
family inet6 {
output {
flow-server 10.208.174.127 {
port 2055;
version-ipfix {
template {
v6;
}
}
}
inline-jflow {
source-address 192.168.100.1;
}
}
}
}
}
}
[edit firewall]
family inet {
filter ipv4-filter {
term ipv4-accept {
then {
accept;
sample;
}
}
}
}
family inet6 {
filter ipv6-filter {
term ipv6-accept {
then {
accept;
sample;
}
}
}
}
您可以使用 show services accounting flow 命令验证活动流量统计信息。
变更历史表
是否支持某项功能取决于您使用的平台和版本。使用 功能资源管理器 确定您的平台是否支持某个功能。