Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

为路由实例配置 SNMP

了解路由实例的 SNMP 支持

Junos OS 允许所有路由实例的 SNMP 管理器请求和管理与相应路由实例和逻辑系统网络相关的 SNMP 数据。

在 Junos OS 中:

  • 来自默认路由实例和/或逻辑系统以外的客户端只能访问 MIB 对象并仅在它们所属的路由实例和/或逻辑系统网络上执行 SNMP 操作。

  • 默认路由实例中的客户端可以访问与所有路由实例和逻辑系统网络相关的信息。

  • Junos 管理路由实例 () 是一个特殊实例。mgmt_junos 来自管理路由实例的客户端被视为在默认路由实例中,并且可以访问与所有路由实例和逻辑系统网络相关的信息。

在 Junos OS 8.4 版之前,只有默认路由实例 (inet.0) 中的 SNMP 管理器有权访问 MIB 对象。

随着虚拟专用网络 (VPN) 服务产品的增加,此功能对于需要获取特定路由实例的 SNMP 数据的服务提供商尤其有用(请参阅 )。图 1服务提供商可以将此信息用于自己的管理需求,也可以导出数据以供其客户使用。

图 1: 路由实例的 SNMP 数据路由实例的 SNMP 数据

如果未在请求中指定路由实例,则 SNMP 代理将像以前一样运行:

  • 对于非路由表对象,将公开所有实例。

  • 对于路由表对象,仅公开与默认路由实例关联的对象。

    注:

    实际的协议数据单元 (PDU) 仍通过默认 (inet.0) 路由实例进行交换,但返回的数据内容由请求 PDU 中指定的路由实例决定。

SNMPv3 管理路由实例

从 Junos OS 19.4R1 开始,通过在所需路由实例中配置 SNMPv3 管理接口,可以访问与所有路由实例和逻辑系统网络相关的信息,而不是特定于入口路由实例的信息。您可以在层次结构级别配置管理实例配置语句 。[edit snmp v3]

优势

SNMPv3 管理路由实例启用来自非默认路由实例的所有 SNMPv3 请求,就像这些请求来自默认路由实例一样。使用 SNMPv3 管理路由实例,您可以访问与所有路由实例和逻辑系统网络相关的信息。

启用管理路由实例

要启用 SNMPv3 管理路由实例,请执行以下操作:

  1. 配置管理实例语句。

  2. 提交配置。

删除管理路由实例

要删除 SNMPv3 管理路由实例,请执行以下操作:

  1. 删除或停用 SNMPv3 管理路由实例语句。

您无法在 [] 层次结构级别配置 Junos 管理路由实例 (),因为默认情况下 可以访问所有路由实例。mgmt_junosedit snmp v3 management-routing-instance <routing-instance>mgmt_junos

路由实例支持的 SNMP MIB

表 1 显示 Junos OS 支持的特定于企业的 MIB 对象,并提供详细说明在 SNMP 请求中指定路由实例时如何处理这些对象的说明。短划线 (–) 表示该项目不适用。

表 1: 路由实例的 MIB 支持(瞻博网络 MIB)

对象

支持类

说明/注释

jnx产品(1)

产品对象 ID

jnx服务(2)

服务

jnxMibs(3)

jnx盒子解剖学(1)

第 3 类

对象仅针对默认逻辑系统公开。

MPLS(2)

2 类

逻辑系统中的所有实例都会公开。数据不会向下隔离到路由实例级别。

ifJnx(3)

第 1 类

仅公开属于特定路由实例的逻辑接口(及其父物理接口)。

jnx报警器(4)

第 3 类

对象仅针对默认逻辑系统公开。

jnx防火墙(5)

第 4 类

数据不按路由实例隔离。公开所有实例。

jnxDCU(6)

第 1 类

仅公开属于特定路由实例的逻辑接口(及其父物理接口)。

jnxPingMIB(7)

第 3 类

对象仅针对默认逻辑系统公开。

jnxTraceRouteMIB(8)

第 3 类

对象仅针对默认逻辑系统公开。

自动取款机(10)

第 1 类

仅公开属于特定路由实例的逻辑接口(及其父物理接口)。

jnxIpv6(11)

第 4 类

数据不按路由实例隔离。公开所有实例。

jnxIpv4(12)

第 1 类

jnxIpv4AddrTable(1). 仅公开属于特定路由实例的逻辑接口(及其父物理接口)。

jnxRmon(13)

第 3 类

jnxRmonAlarmTable(1). 对象仅针对默认逻辑系统公开。

jnxLdp(14)

2 类

jnxLdpTrapVars(1). 逻辑系统中的所有实例都会公开。数据不会向下隔离到路由实例级别。

jnxCos(15)

jnxCosIfqStatsTable(1) jnxCosFcTable(2) jnxCosFcIdTable(3) jnxCosQstatTable(4)

第 3 类

对象仅针对默认逻辑系统公开。

jnxScu(16)

jnxScuStatsTable(1)

第 1 类

仅公开属于特定路由实例的逻辑接口(及其父物理接口)。

jnxRpf(17)

jnxRpfStatsTable(1)

第 1 类

仅公开属于特定路由实例的逻辑接口(及其父物理接口)。

jnxCfgMgmt(18)

第 3 类

对象仅针对默认逻辑系统公开。

jnxPMon(19)

jnxPMonFlowTable(1)

jnxPMonErrorTable(2)

jnxPMon内存表(3)

第 1 类

仅公开属于特定路由实例的逻辑接口(及其父物理接口)。

jnxSonet(20)

jnxSonetAlarmTable(1)

第 1 类

仅公开属于特定路由实例的逻辑接口(及其父物理接口)。

jnxAtmCos(21)

jnxCosAtmVcTable(1)

jnxCosAtmScTable(2)

jnxCosAtmVcQstatsTable(3)

jnxCosAtmTrunkTable(4)

第 1 类

仅公开属于特定路由实例的逻辑接口(及其父物理接口)。

ipSecFlowMonitorMIB(22)

jnxMac(23)

jnxMacStats(1)

第 1 类

仅公开属于特定路由实例的逻辑接口(及其父物理接口)。

apsMIB(24)

第 3 类

对象仅针对默认逻辑系统公开。

jnx机箱定义(25)

第 3 类

对象仅针对默认逻辑系统公开。

jnxVpnMIB(26)

2 类

逻辑系统中的所有实例都会公开。数据不会向下隔离到路由实例级别。

jnxSericesInfoMib(27)

第 1 类

仅公开属于特定路由实例的逻辑接口(及其父物理接口)。

jnxCollectorMIB(28)

第 1 类

仅公开属于特定路由实例的逻辑接口(及其父物理接口)。

jnx历史(29)

jnxSpMIB(32)

第 3 类

对象仅针对默认逻辑系统公开。

表 2 显示 Junos OS 支持的 1 类 MIB 对象(标准和企业特定的 MIB)。对于 Class 1 对象,仅公开属于特定路由实例的那些逻辑接口(及其父物理接口)。

表 2: 1 类 MIB 对象(标准和瞻博网络 MIB)

MIB

对象

第 1 类

802.3ad.mib

(dot3adAgg)MIB 对象:

dot3adAggTable

dot3adAggPortListTable

(dot3adAggPort)

dot3adAggPortTable

dot3adAggPortStatsTable

dot3adAggPortDebugTable

rfc2863a.mib

ifTable

ifXTable

ifStackTable

rfc2011a.mib

ipAddrTable

ipNetToMediaTable

rtmib.mib

ipForward (ipCidrRouteTable)

rfc2665a.mib

dot3统计表

dot3控件表

dot3暂停表

rfc2495a.mib

dsx1配置表

dsx1当前表

dsx1间隔表

dsx1总计表

dsx1FarEndCurrentTable

dsx1远端间隔表

dsx1FarEndTotalTable

dsx1FracTable ...

rfc2496a.mib

dsx3 (dsx3ConfigTable)

rfc2115a.mib

frDlcmiTable(以及相关的 MIB 对象)

RFC3592.MIB

sonetMediumTable(和相关 MIB 对象)

RFC3020.MIB

mfrMIB

mfrBundleTable

mfrMibBundleLinkObjects

mfrBundleIfIndexMappingTable

(以及相关的 MIB 对象)

ospf2mib.mib

所有对象

ospf2trap.mib

所有对象

bgpmib.mib

所有对象

rfc2819a.mib

示例:以太统计表

第 1 类

RFC2863a.mib

示例:

ifXtable

ifStackTable

RFC2665A.MIB

以太MIB

rfc2515a.mib

atmMIB 对象

示例:

atmInterfaceConfTable

atmVplTable

atmVclTable

RFC2465.MIB

IP-v6MIB

示例:

IPv6IfTable

ipv6地址前缀表

ipv6NetToMediaTable

IPv6路由表

rfc2787a.mib

VRRP MIB

RFC2932.MIB

ipMRouteMIB

ipMRouteStdMIB

mroutemib.mib

ipMRoute1MIBObjects

isismib.mib

伊西斯米布

pimmib.mib

pimMIB

msdpmib.mib

msdpmib

jnx-if-extensions.mib

示例:

ifJnxTable

if机箱表

jnx-dcu.mib

jnxDCU

jnx-atm.mib

示例:

jnxAtmIfTable

jnxAtmVCTable

jnxAtmVpTable

JNX-IPv4.miB

jnxipv4

示例:jnxIpv4AddrTable

jnx-cos.mib

示例:

jnxCosIfqStatsTable

jnxCosQstatTable

jnx-scu.mib

示例:jnxScuStatsTable

jnx-rpf.mib

示例:jnxRpfStatsTable

jnx-pmon.mib

示例:jnxPMonFlowTable

jnx-sonet.mib

示例:jnxSonetAlarmTable

第 1 类

jnx-atm-cos.mib

示例:

jnxCosAtmVcTable

jnxCosAtmVcScTable

jnxCosAtmVcQstatsTable

jnxCosAtmTrunkTable

jnx-mac.mib

示例:jnxMacStatsTable

jnx-services.mib

示例:jnxSvcFlowTableAggStatsTable

jnx-coll.mib

jnxCollectorMIB

示例:

jnxCollPicIfTable

jnxCollFileEntry

表 3 显示 Junos OS 支持的 2 类 MIB 对象(标准和企业特定的 MIB)。对于类 2 对象,将公开逻辑系统中的所有实例。数据不会向下隔离到路由实例级别。

表 3: 2 类 MIB 对象(标准和瞻博网络 MIB)

MIB

对象

2 类

RFC3813.MIB

mplsLsrStdMIB

示例:

mpls接口表

mplsInSegmentTable

mplsOutSegmentTable

mplsLabelStackTable

mplsXCTable

(以及相关的 MIB 对象)

igmpmib.mib

igmpStdMIB

注:

这是 实验树中 IGMP 标准 MIB 的草案版本。igmpmib.mib Junos OS 不支持原始 IGMP 标准 MIB。

l3vpnmib.mib

mplsVpnmib

jnx-mpls.mib

示例:mplsLspList

jnx-ldp.mib

jnxLdp

示例:jnxLdpStatsTable

jnx-vpn.mib

jnxVpnMIB

jnx-bgpmib2.mib

jnxBgpM2实验

表 4 显示 Junos OS 支持的 3 类 MIB 对象(标准和企业特定的 MIB)。对于类 3,对象仅针对默认逻辑系统公开。

表 4: 3 类 MIB 对象(标准和瞻博网络 MIB)

MIB

对象

第 3 类

RFC2819a.mib

rmon事件

报警表

日志表

事件表

代理xMIB

rfc2925a.mib

平米布

rfc2925b.mib

tracerouteMIB

jnxchassis.mib

jnxBox解剖学

jnx-chassis-alarm.mib

jnx警报

默认情况下,SRX 系列防火墙仅在冗余组 0 (RG0) 的主节点上查询 jnx警报 mib,而不在辅助节点上查询。

jnx-ping.mib

jnxPingMIB

jnx-traceroute.mib

jnxTraceRouteMIB

jnx-rmon.mib

jnxRmonAlarmTable

jnx-cos.mib

示例:jnxCosFcTable

jnx-cfgmgmt.mib

示例:jnxCfgMgmt

jnx-sonetaps.mib

apsMIBObjects

jnx-sp.mib

jnxSpMIB

ggsn.mib

ejnmobileipABmib

RFC1907.MIB

snmp模块

snmp模块

示例:

snmpMIB snmpFrameworkMIB

表 5 显示 Junos OS 支持的 4 类 MIB 对象(标准和企业特定的 MIB)。对于 Class 4 对象,数据不会按路由实例隔离。公开所有实例。

表 5: 4 类 MIB 对象(标准和瞻博网络 MIB)

MIB

对象

第 4 类

系统

示例:系统可操作

RFC2011a.mib

ip (ipDefaultTTL, ipInReceives)

Icmp

rfc2012a.mib

Tcp

tcp连接表

ipv6TcpConnTable

rfc2013a.mib

Udp

udpTable

ipv6UdpTable

rfc2790a.mib

小时系统

rfc2287a.mib

sysApplOBJ

jnx-firewall.mib

jnx防火墙

JNX-IPv6.miB

jnxIpv6

MIB 对象的支持类

指定路由实例时,所有与路由相关的 MIB 对象都将返回路由实例在请求中维护的数据。对于所有其他 MIB 对象,返回的数据将根据该路由实例进行隔离。例如,SNMP 代理仅公开分配给该路由实例的接口(例如,逻辑接口 [ifls] 及其相应的物理接口 [ifds])。同样,与接口具有明确附件的对象(例如,地址)也会被隔离。

对于附件不明确的对象(例如,sysApplMIB 中的对象),不会进行隔离,并且所有实例在所有情况下都可见。

仅当未指定逻辑系统(仅在默认逻辑系统中)时,无论默认逻辑系统中的路由实例如何,另一类对象才可见。此类别中的对象包括机箱 MIB 对象、SNMP 组中的对象、RMON 报警、事件和日志组、Ping MIB 对象、配置管理对象和 V3 对象。

总之,为了支持路由实例,MIB 对象属于以下类别之一:

  • 类 1 — 数据根据请求中的路由实例进行隔离。这是隔离类中最精细的。

  • 类 2 — 根据请求中指定的逻辑系统隔离数据。对于属于特定逻辑系统的所有路由实例,将返回相同的数据。通常,这适用于难以提取路由实例信息或不适用路由实例的路由表对象。

  • 类 3 - 仅为默认逻辑系统公开数据。对于属于默认逻辑系统的所有路由实例,将返回相同的数据集。如果指定其他逻辑系统(不是默认系统),则不会返回任何数据。通常,此类适用于在不监视逻辑系统更改并仅使用默认上下文注册其对象的子代理中实现的对象(例如,机箱 MIB 对象)。

  • 类 4 — 数据未按路由实例隔离。为所有路由实例返回相同的数据。通常,这适用于在子代理中实现的对象,这些子代理程序监视逻辑系统更改,并为每个逻辑系统更改注册或取消注册其所有对象。其值无法按路由实例隔离的对象属于此类。

有关与每个类关联的对象的列表,请参阅 路由实例支持的 SNMP MIB

路由实例支持的 SNMP 陷阱

您可以限制陷阱接收器接收与其所属的逻辑系统网络无关的陷阱。为此,请在层次结构级别包含 语句 :logical-system-trap-filter[edit snmp]

如果语句 未包含在 SNMP 配置中,则所有陷阱都将转发到配置的路由实例目标。logical-system-trap-filter 但是,即使配置了此语句,与默认路由实例关联的陷阱接收器也将接收所有 SNMP 陷阱。

在陷阱组对象下配置时,应用于路由实例(或属于路由实例的接口)的所有 v1 和 v2c 陷阱都将路由实例名称编码在社区字符串中。编码与请求 PDU 中使用的编码相同。

对于在 v3 框架下配置的陷阱,配置 v3 消息处理模型后,路由实例名称将包含在上下文字段中。对于其他消息处理模型(v1 或 v2c),路由实例名称不会在陷阱消息头中携带(也不会在社区字符串中编码)。

标识路由实例

借助此功能,路由实例由 v3 请求中的上下文字段标识,或在 v1 或 v2c 请求中的社区字符串中编码。

在社区字符串中编码时,路由实例名称首先出现,并用字符与 实际的社区字符串分隔。@

为了避免与包含该字符的有效 社区字符串发生冲突,仅当典型的社区字符串处理失败时,才会解析社区。@ 例如,如果配置了名为的路由实例,则会在该路由实例的上下文中处理 的 SNMP 请求。RIRI@publicRI 访问控制(视图、源地址限制、访问权限等)是根据实际的社区字符串(在本例中为字符后的数据集)应用的。@public 但是,如果配置了社区字符串 ,则会根据该社区处理协议数据单元 (PDU),并忽略嵌入的路由实例名称。RI@public

逻辑系统执行物理路由器操作的子集,并具有自己唯一的路由表、接口、策略和路由实例。在逻辑系统中定义路由实例时,必须使用斜杠 ( ) 对逻辑系统名称与路由实例一起进行编码,以分隔两者。/ 例如,如果在逻辑系统中配置了路由实例,则该路由实例必须在社区字符串中编码为 。RILSLS/RI@public 在逻辑系统外部(默认逻辑系统内)配置路由实例时,不需要逻辑系统名称(或 字符)。/

此外,创建逻辑系统时,始终会在逻辑系统中创建默认路由实例(名为 )。default 查询该路由实例的数据时,应使用此名称(例如 )。LS/default@public 对于 v3 请求,应直接在上下文字段中标识名称 。logical system/routing instance

注:

要识别虚拟 LAN (VLAN) 生成树实例(MX 系列 5G 通用路由平台上的 VSTP),请指定路由实例名称,后跟双冒号 () 和 VLAN ID。:: 例如,要在全局默认路由实例中标识 VLAN 10 的 VSTP 实例,请包含在 (SNMPv3) 或 (SNMPv1 或 v2) 字符串中。default::10@publiccontextcommunity

通过路由实例启用 SNMP 访问

要使默认路由实例以外的路由实例中的 SNMP 管理器能够访问 SNMP 信息,请在层次结构级别包含 语句 。routing-instance-access[edit snmp]

如果此语句未包含在 SNMP 配置中,则来自默认路由实例以外的路由实例的 SNMP 管理器无法访问 SNMP 信息。此设置适用于对任何版本的 SNMP(SNMP v1、v2 或 v3)的请求。

在 SNMPv1 或 SNMPv2c 社区中指定路由实例

将客户端添加到 SNMP 社区时,可以指定路由实例以及客户端信息。要指定客户端所属的路由实例,请在 SNMP 配置中包含语句,后跟路由实例名称和客户端信息。routing-instance

以下示例显示了将路由实例 test-ri 添加到 SNMP 社区 community1 的配置语句。

注:

在层次结构级别指定的 路由实例将添加到社区中的默认逻辑系统中。[edit snmp community community-name]

如果路由实例是在逻辑系统中定义的,请在 [] 层次结构级别包含该语句,如以下示例所示:routing-instanceedit snmp community community-name logical-system logical-system-name

示例:配置路由实例的接口设置

此示例显示了分配给名为 INFrtd 的路由实例的 802.3ad ae0 接口配置:

以下命令 显示如何从路由器 1 和属于具有 SNMP 社区的路由实例 INFrtd 的 802.3ae 捆绑接口检索 SNMP 相关信息 :snmpwalkpublic

为通过路由实例进行的 SNMP 访问配置访问列表

您可以创建和维护访问列表以管理对 SNMP 信息的访问。访问列表配置允许您允许或拒绝对特定路由实例的客户端的 SNMP 访问,并适用于任何版本 SNMP 的请求。

以下示例演示如何创建访问列表:

示例中给出的配置:

  • 限制 中的 客户端访问 SNMP 信息。ri1

  • 允许 、 以及名称以 开头的所有其他路由实例中的客户端访问 SNMP 信息。ls1/defaultls1/ri2ls1

您可以使用通配符 (*) 来表示路由实例名称中的字符串。

注:

不能限制默认路由实例的 SNMP 管理器访问 SNMP 信息。