Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

了解 Junos OS 中的 SNMP 实施

Junos OS 上的 SNMP

使用 功能资源管理器 确认平台和版本对特定功能的支持。

查看 特定于平台的 SNMP 陷阱队列行为 部分,了解与您的平台相关的说明。

在 Junos OS 上,SNMP 使用标准(由 IETF 制定并在 RFC 中记录)和瞻博网络企业特定的 MIB。

注意:

默认情况下,运行 Junos OS 的设备上不会启用 SNMP。

在 Junos OS 中,维护 SNMP 管理数据的进程包括:

  • 主 SNMP 代理驻留在受管理设备上,并由 NMS 或主机管理。

    Junos OS SNMP 代理软件由一个 SNMP 主代理(称为 SNMP 进程或 snmpd)组成。它驻留在受管理设备上,并由 NMS 或主机管理。

  • 驻留在 Junos OS 不同模块(如路由引擎)上的各种子代理。主 SNMP 代理将所有 SNMP 请求委托给子代理。每个子代理负责支持一组特定的 MIB。

  • Junos OS 处理在轮询 SNMP 数据时与子代理共享数据(例如,与接口相关的 MIB)。

社区字符串是由 SNMP 代理在 Junos OS 中实施的第一级管理身份验证。

有关更多信息,请参阅以下部分。

Junos OS 对 SNMP 版本的支持

Junos OS 支持以下版本的 SNMP。有关详细信息,请参阅 表 1

表 1:Junos OS 对 SNMP 版本的支持
SNMP 版本 描述
SNMPv1 定义 SNMP 的架构和框架的 SNMP 初始实施。
SNMPv2c

修订后的协议,改进了绩效和经理与经理之间的沟通。具体而言,SNMPv2c 实施社区字符串,在确定 SNMP 客户端访问 SNMP 代理中的数据的人员、内容以及方式时,这些字符串可充当密码。社区字符串包含在 SNMP GetGetBulkGetNextSet requests 中。代理可能需要与请求 (read-write access) 不同的SetGet社区字符串来表示 、 GetBulkGetNext requests (read-only access)。

SNMPv3

SNMPv3 — 最新的协议侧重于安全性。SNMPv3 定义了安全模型、基于用户的安全模型 (USM) 和基于视图的访问控制模型 (VACM)。SNMPv3 USM 提供数据完整性、数据源身份验证、消息重放保护以及防止消息有效负载泄露。SNMPv3 VACM 提供访问控制,以确定是否允许对管理信息进行特定类型的访问(读取或写入)。

此外,Junos OS SNMP 代理软件接受 IPv4 和 IPv6 地址进行 IPv4 和 IPv6 传输。对于 IPv6,Junos OS 支持以下功能:

  • IPv6 网络上的 SNMP 数据

  • 特定于 IPv6 的 MIB 数据

  • IPv6 的 SNMP 代理

SNMP 陷阱的系统日志记录严重性级别

对于某些陷阱,当发生陷阱情况时,无论 SNMP 代理是否向 NMS 发送陷阱,如果系统日志记录配置为记录具有该系统日志记录严重性级别的事件,则都会记录陷阱。

有关标准陷阱的系统日志记录严重性级别的更多信息,请参阅 Junos OS 支持的标准 SNMP 陷阱 。有关企业特定陷阱的系统日志记录严重性级别的更多信息,请参阅 Junos OS 支持的企业特定 SNMP 陷阱

SNMP 通信流

当 NMS 轮询主代理以获取数据时,如果请求的数据可从主代理或其中一个子代理获得,则主代理会立即与 NMS 共享数据。但是,如果请求的数据不属于由主代理或子代理维护的类别,则子代理将轮询 Junos OS 内核或维护该数据的进程。收到所需数据后,子代理将响应传递回主代理,主代理又将其传递给 NMS。

图 1 显示了 NMS、SNMP 主代理 (snmpd)、SNMP 子代理、Junos OS 内核和数据包转发引擎之间的通信流。

图 1:SNMP 通信流 SNMP system architecture: NMS sends queries to snmpd, communicates with sub-agents, kernel, and Packet Forwarding Engine. Arrows show query and response flow.

当网络设备上发生重大事件(通常是错误或故障)时,SNMP 代理会向 SNMP 管理器发送通知。Junos OS 中的 SNMP 实施支持两种类型的通知:陷阱和通知。 陷阱 是未确认的通知,而 通知 是已确认的通知。只有支持 SNMP 版本 3 (SNMPv3) 配置的设备才支持通知。

陷阱队列

Junos OS 支持陷阱队列,以确保陷阱不会因为路由暂时不可用而丢失。形成两种类型的队列, 目标队列限制队列,以确保陷阱的传递并控制陷阱流量。

注意:

无法在 Junos OS 中配置陷阱队列。除了系统日志中提供的信息外,您无法查看有关陷阱队列的信息。

当由于主机无法访问而返回特定目标的陷阱时,Junos OS 会形成目标队列,并将指向同一目标的后续陷阱添加到队列中。Junos OS 每 30 秒检查一次路由的可用性,并以轮询方式从目标队列发送陷阱。

如果陷阱传递失败,则陷阱将重新添加到队列中,并重置队列的传递尝试计数器和下一个传递尝试计时器。后续尝试以 1 分钟、2 分钟、4 分钟和 8 分钟的渐进间隔进行。两次尝试之间的最大延迟为 8 分钟,最大尝试次数为 10 次。尝试 10 次失败后,目标队列和队列中的所有陷阱都将被删除。

Junos OS 还具有节流机制,用于控制在特定时间段内(节流间隔;默认值为 500 个陷阱)发送的陷阱数量(节流阈值;默认值为 500 个陷阱),并确保陷阱流量的一致性,特别是在由于接口状态变化而生成大量陷阱时。油门间隔期从第一个陷阱到达油门时开始。将处理陷阱阈值内的所有陷阱,超出阈值限制的陷阱将排队。

所有陷阱队列(限制队列和目标队列)的最大大小为 40,000 个陷阱。任何一个队列的最大大小为 20,000 个陷阱。将陷阱添加到限制队列时,或者如果限制队列超过最大大小,则陷阱将重新添加到目标队列的顶部,目标队列的所有后续尝试都将停止 30 秒,之后目标队列重新开始发送陷阱。

将 MIB 文件加载到网络管理系统

若要使网络管理系统 (NMS) 识别并了解 Junos OS 使用的 MIB 对象,必须先使用 MIB 编译器将 MIB 文件加载到 NMS。MIB 编译器是一种实用程序,用于解析 MIB 信息,例如 NMS 的 MIB 对象名称、ID 和数据类型。

您可以从 https://www.juniper.net/documentation/en_US/release-independent/junos/mibs/mibs.html 的 Junos OS Enterprise MIB 索引下载 Junos MIB 包。Junos MIB 包有 .zip.tar 两种封装。您可以根据需要下载适当的格式。

Junos MIB 软件包包含两个文件夹: StandardMibsJuniperMibsStandardMibs 文件夹包含运行 Junos OS 的设备上支持的标准 MIB 和 RFC,而 JuniperMibs 文件夹包含瞻博网络企业特定的 MIB。

要加载管理和监控运行 Junos OS 的设备所需的 MIB 文件:

  1. 转至 SNMP MIB资源管理器下载页面,了解瞻博网络 SNMP MIB软件包(SNMP MIB资源管理器)。
  2. 单击相应版本标题下的 TARZIP 链接,下载适用于该版本的 Junos MIB 软件包。
  3. 使用适当的实用程序解压缩文件(.tar.zip)。
  4. 以下顺序加载标准 MIB 文件(从 StandardMibs 文件夹):
    注意:

    一些常用的 MIB 编译器上预装了标准 MIB。如果标准 MIB 已加载到您正在使用的 MIB 编译器上,请跳过此步骤并继续执行步骤 7。

    1. mib-SNMPv2-SMI.txt

    2. mib-SNMPv2-TC.txt

    3. mib-IANAifType-MIB.txt

    4. mib-IANA-RTPROTO-MIB.txt

    5. mib-rfc1907.txt

    6. mib-rfc4293.txt

    7. mib-rfc2012a.txt

    8. mib-rfc2013a.txt

    9. mib-rfc2571.txt

    10. mib-rfc2863a.txt

    11. mib-rfc4001.txt

  5. 加载剩余的标准 MIB 文件。
    注意:

    您必须遵循此过程中指定的顺序。这是为了确保在企业特定的 MIB 之前加载标准 MIB。在加载其他一些 MIB 之前,可能存在需要编译器上存在特定 MIB 的依赖项。您可以在 MIB 文件的 IMPORT 部分中找到列出的此类依赖项。

  6. 根据您的要求加载瞻博网络企业特定的 SMI MIB、mib-jnx-smi.txt 和以下可选 SMI MIB:
    • mib-jnx-js-smi.txt - (可选)用于瞻博网络安全性MIB树对象

    • mib-jnx-ex-smi.txt—(可选)用于EX 系列以太网交换机

    • mib-jnx-exp.txt—(推荐)用于瞻博网络实验MIB对象

    • mib-jnx-cos.txt

    • mib-jnx-mimstp.txt

    • mib-jnx-l2cp-features.txt

    • mib-jnx-mpls-ldp.txt

    • mib-jnx-sp.txt

    • mib-jnx-ipforward.txt

    • mib-jnx-jsysmon.txt

    • mib-jnx-vpn.txt

    • mib-jnx-pwtdm.txt

    • mib-jnx-pwatm.txt

    • mib-jnx-mbg-smi.txt

    • mib-jnx-vpls-generic.txt

    • mib-jnx-vpls-ldp.txt

    • mib-jnx-vpls-bgp.txt

    • mib-jnx-mobile-gateways.txt

    • mib-jnx-optif.txt

    • mib-jnx-bl.txt

    • mib-jnx-gen-set.txt

    • mib-jnx-if-extensions.txt

    • mib-jnx-if-accounting.txt

    • mib-jnx-alarm.txt

    • mib-jnx-dot3oam-capability.txt

    • mib-jnx-ipmcast-capability.txt

  7. JuniperMibs 文件夹加载剩余的企业特定 MIB。
提示:

加载 MIB 文件时,如果编译器返回一条错误消息,指出任何对象未定义,请使用文本编辑器打开 MIB 文件,并确保编译器上加载了 IMPORT 部分中列出的所有 MIB 文件。如果编译器上未加载 IMPORT 部分中列出的任何 MIB 文件,请加载该 MIB 文件,然后尝试加载加载失败的 MIB 文件。

例如,特定于企业的 PING MIB mib-jnx-ping.txt 依赖于 RFC 2925、DiSMAN-PING-MIB mib-rfc2925a.txt。如果在加载mib-rfc2925a.txt之前尝试加载mib-jnx-ping.txt,编译器将返回一条错误消息,指出mib-jnx-ping.txt中的某些对象未定义。加载mib-rfc2925a.txt,然后尝试加载mib-jnx-ping.txt。企业特定的 PING MIB,mib-jnx-ping.txt,然后可以正常加载。

了解集成本地管理接口

集成本地管理接口 (ILMI) 为连接异步传输模式 (ATM) 的设备(例如主机、路由器和 ATM 交换机)提供一种传输管理信息的机制。ILMI 通过物理连接在两个 ATM 接口之间提供管理信息的双向交换。ILMI 信息使用虚拟路径标识符/虚拟通道标识符 (VPI/VCI) 值(VPI=0,VCI=16)通过 ATM 适配层 5 (AAL5) 的 SNMP 版本 1(RFC 1157, 简单网络管理协议)的直接封装进行交换。

Junos OS 仅支持两个 ILMI MIB 变量:

  • atmfMYIPNmAddress

  • atmfPortMyIfname

对于 ATM1 和 ATM2 智能排队 (IQ) 接口,您可以将 ILMI 配置为直接与连接的 ATM 交换机通信,以便查询交换机的 IP 地址和端口号。

有关 ILMI MIB 的更多信息,请参阅 atmfMYIPNmAddress “SNMP MIB 资源管理器中的 ”或atmfPortMyIfname“。

特定于平台的 SNMP 陷阱队列行为

使用 功能资源管理器 确认平台和版本对特定功能的支持。

使用下表查看平台的特定于平台的行为。

平台 差异

EX 系列

  • 在支持 SNMP 陷阱队列的 EX 系列交换机上,所有陷阱队列(节流队列和目标队列)的最大大小为 1,000 个陷阱,任何一个队列的最大大小为 500 个陷阱。