22-SNMP命令
本章節下載: 22-SNMP命令 (505.92 KB)
目 錄
1.1.1 display snmp-agent community
1.1.2 display snmp-agent context
1.1.3 display snmp-agent group
1.1.4 display snmp-agent local-engineid
1.1.5 display snmp-agent mib-node
1.1.6 display snmp-agent mib-view
1.1.7 display snmp-agent remote
1.1.8 display snmp-agent statistics
1.1.9 display snmp-agent sys-info
1.1.10 display snmp-agent trap queue
1.1.11 display snmp-agent trapbuffer drop
1.1.12 display snmp-agent trapbuffer send
1.1.13 display snmp-agent trap-list
1.1.14 display snmp-agent usm-user
1.1.15 enable snmp trap updown
1.1.16 reset snmp-agent trapbuffer
1.1.17 snmp virtual-access visible
1.1.19 snmp-agent { inform | trap } source
1.1.20 snmp-agent calculate-password
1.1.22 snmp-agent community-map
1.1.25 snmp-agent local-engineid
1.1.28 snmp-agent packet max-size
1.1.31 snmp-agent sys-info contact
1.1.32 snmp-agent sys-info location
1.1.33 snmp-agent sys-info version
1.1.36 snmp-agent trap if-mib link extended
1.1.39 snmp-agent trap queue-size
1.1.40 snmp-agent usm-user { v1 | v2c }
1.1.42 snmp-agent usm-user v3 user-role
SNMP告警信息包括SNMP Trap和Inform報文,用來告知NMS設備上發生了重要事件,比如,用戶的登錄/退出,接口狀態變成up/down等。如無特殊說明,本文中的告警信息均指Trap和Inform兩種信息。
display snmp-agent community命令用來顯示SNMPv1或SNMPv2c的團體信息。
【命令】
display snmp-agent community [ read | write ]
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【參數】
read:顯示隻讀訪問權限的團體信息。
write:顯示讀寫訪問權限的團體信息。
【使用指導】
不帶參數時,顯示所有SNMP團體的信息。
用戶有兩種方式創建團體:
· 使用snmp-agent community命令來創建團體。
· 配置snmp-agent usm-user { v1 | v2c }和snmp-agent group { v1 | v2c }命令成功創建SNMPv1或SNMPv2c用戶以及相應的組後,係統會以用戶名為團體名自動創建一個團體。
display snmp-agent community會顯示這兩種方式創建的、以明文方式配置並以明文方式保存到配置文件中的團體的信息。
【舉例】
# 顯示設備當前所有已配置的團體信息。
<Sysname> display snmp-agent community
Community name: aa
Group name: aa
ACL:2001
Storage-type: nonVolatile
Context name: con1
Community name: bb
Role name: bb
Storage-type: nonVolatile
Community name: userv1
Group name: testv1
Storage-type: nonVolatile
Community name: cc
Group name: cc
ACL name: testacl
Storage-type: nonVolatile
表1-1 display snmp-agent community命令顯示信息描述表
字段 |
描述 |
Community name |
團體名: · 如果團體名是通過snmp-agent community命令創建的,則顯示的是團體名 · 如果團體名是通過snmp-agent usm-user { v1 | v2c }命令創建的,則顯示的是用戶名 |
Group name |
組名: · 如果團體名是通過snmp-agent community命令的VACM方式創建的,則組名和團體名相同 · 如果團體名是通過snmp-agent usm-user { v1 | v2c }命令創建的,則顯示用戶所在的組名 |
Role name |
SNMP用戶所在團體綁定的角色名: 通過snmp-agent community命令的RBAC方式創建的團體名可綁定用戶角色 |
ACL |
使用的ACL列表的編號(該字段僅在團體名與ACL編號綁定後顯示) |
ACL name |
使用的ACL列表的名稱(該字段僅在團體名與ACL名稱綁定後顯示) |
IPV6 ACL |
使用的IPv6 ACL列表的編號(該字段僅在團體名與IPv6 ACL編號綁定後顯示) |
IPV6 ACL name |
使用的IPv6 ACL列表的名稱(該字段僅在團體名與IPv6 ACL名稱綁定後顯示) |
Storage-type |
表示存儲方式,分為以下幾種: · volatile:重啟後信息丟失 · nonVolatile:重啟後信息仍保存 · permanent:重啟後信息仍保存,允許更改,但不許刪除 · readOnly:重啟後信息仍保存,既不允許更改,也不許刪除 · other:其他 |
Context name |
SNMP上下文: · 如果此團體名配置了對應的上下文映射,則顯示對應的上下文 · 如果此團體名未配置對應的上下文映射,該字段顯示為空 |
【相關命令】
· snmp-agent community
· snmp-agent usm-user { v1 | v2c }
display snmp-agent context命令用來顯示SNMP上下文。
【命令】
display snmp-agent context [ context-name ]
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【參數】
context-name:顯示指定的SNMP上下文,為1~32個字符的字符串,區分大小寫。不指定該參數時,顯示設備上所有已創建的SNMP上下文。
【舉例】
# 顯示設備上所有已創建的SNMP上下文。
<Sysname> display snmp-agent context
testcontext
【相關命令】
· snmp-agent context
display snmp-agent group命令用來顯示SNMP組信息。
【命令】
display snmp-agent group [ group-name ]
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【參數】
group-name:指定要顯示信息的SNMPv1、SNMPv2c或SNMPv3組的名稱。取值範圍為1~32個字符的字符串,區分大小寫。不指定該參數時,顯示設備上所有已創建的SNMP組的信息。
【舉例】
# 顯示所有SNMP組的信息。
<Sysname> display snmp-agent group
Group name: groupv3
Security model: v3 noAuthnoPriv
Readview: ViewDefault
Writeview: <no specified>
Notifyview: <no specified>
Storage-type: nonVolatile
ACL name: testacl
表1-2 display snmp-agent group命令顯示信息描述表
字段 |
描述 |
Group name |
SNMP組名 |
Security model |
SNMP組配置的安全模式,包括版本信息和安全模式,以空格分隔: · 對於SNMPv1和SNMPv2c版本,認證加密級別隻能為noAuthNoPriv(無認證無加密) · 對於SNMPv3版本,安全模式分為三種:authPriv(既認證又加密)、authNoPriv(隻認證不加密)、noAuthNoPriv(不認證不加密) |
Readview |
SNMP組對應的隻讀的MIB視圖名 |
Writeview |
SNMP組對應的可寫的MIB視圖名 |
Notifyview |
SNMP組對應的可以發Trap和Inform報文的MIB視圖名 |
Storage-type |
存儲方式,分為以下幾種:volatile、nonVolatile、permanent、readOnly、other,具體描述請參見表1-1 |
ACL |
使用的IPv4 ACL列表的編號(該字段僅在SNMP組與IPv4 ACL編號綁定後顯示) |
ACL name |
使用的ACL列表的名稱(該字段僅在SNMP組與ACL名稱綁定後顯示) |
IPV6 ACL |
使用的IPv6 ACL列表的編號(該字段僅在SNMP組與IPv6 ACL編號綁定後顯示) |
IPV6 ACL name |
使用的IPv6 ACL列表的名稱(該字段僅在SNMP組與IPv6 ACL名稱綁定後顯示) |
【相關命令】
· snmp-agent group
display snmp-agent local-engineid命令用來顯示本設備的SNMP引擎ID。
【命令】
display snmp-agent local-engineid
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【使用指導】
SNMP引擎ID是SNMP實體的唯一標識,它在一個SNMP管理域內是唯一的。SNMP引擎是SNMP實體的重要組成部分,完成SNMP信息的信息調度、信息處理、安全驗證、訪問控製等功能。
【舉例】
# 顯示本設備的SNMP引擎ID。
<Sysname> display snmp-agent local-engineid
SNMP local engine ID: 800063A2800084E52BED7900000001
【相關命令】
display snmp-agent mib-node命令用來顯示SNMP支持的MIB節點信息。
【命令】
display snmp-agent mib-node [ details | index-node | trap-node | verbose ]
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【參數】
details:表示顯示SNMP支持的MIB節點細節信息,包括節點名、OID末位、下一個葉子節點名。
index-node:顯示SNMP支持的MIB表、節點名及索引節點OID。
trap-node:顯示SNMP支持的MIB告警節點名及對應的OID、告警綁定變量節點名及對應的OID。
verbose:顯示SNMP支持的MIB節點詳細信息,包括節點名、OID、節點類型、訪問權限、數據類型,對應MOR(Managed Object Repository,管理對象庫)定義、父子兄弟節點信息等。
【使用指導】
未指定任何參數時,顯示SNMP支持的MIB節點信息,包括節點名、OID和節點訪問權限。
特性包中可以包含不同的MIB插件,設備根據加載特性包的不同,支持的MIB不相同。
【舉例】
# 顯示SNMP支持MIB節點信息。
<Sysname> display snmp-agent mib-node
iso<1>(NA)
|-std<1.0>(NA)
|-iso8802<1.0.8802>(NA)
|-ieee802dot1<1.0.8802.1>(NA)
|-ieee802dot1mibs<1.0.8802.1.1>(NA)
其它顯示信息略……
表1-3 display snmp-agent mib-node命令顯示信息描述表
字段 |
描述 |
-std |
MIB節點名 |
<1.0> |
MIB節點對應的OID |
(NA) |
MIB節點訪問權限,取值為: · NA:表示節點不可訪問 · NF:表示節點支持告警 · RO:表示節點支持隻讀訪問 · RW:表示節點支持讀寫訪問 · RC:表示節點支持讀寫創建訪問 · WO:表示節點支持隻寫訪問 |
* |
表示葉子節點或表節點 |
# 顯示SNMP支持MIB節點細節信息。
<Sysname> display snmp-agent mib-node details
iso(1)(dot1xPaeSystemAuthControl)
|-std(0)(dot1xPaeSystemAuthControl)
|-iso8802(8802)(dot1xPaeSystemAuthControl)
|-ieee802dot1(1)(dot1xPaeSystemAuthControl)
|-ieee802dot1mibs(1)(dot1xPaeSystemAuthControl)
其它顯示信息略……
表1-4 display snmp-agent mib-node details命令顯示信息描述表
字段 |
描述 |
-std |
MIB節點名 |
(0) |
MIB節點對應OID末位 |
(lldpMessageTxInterval) |
MIB節點下一個葉子節點名 |
* |
表示葉子節點或表節點 |
# 顯示SNMP支持的MIB表名、索引節點名及對應的OID。
<Sysname> display snmp-agent mib-node index-node
Table |dot1xPaePortTable
Index ||dot1xPaePortNumber
OID ||| 1.0.8802.1.1.1.1.1.2.1.1
其它顯示信息略……
表1-5 display snmp-agent mib-node index-node命令顯示信息描述表
字段 |
描述 |
Table |
MIB表名 |
Index |
MIB索引節點名 |
OID |
MIB索引節點對應的OID |
# 顯示SNMP支持的MIB告警節點名及對應的OID、告警綁定變量節點名及對應的OID。
<Sysname> display snmp-agent mib-node trap-node
Name |lldpRemTablesChange
OID ||1.0.8802.1.1.2.0.0.1
Trap Object
Name |||lldpStatsRemTablesInserts
OID ||||1.0.8802.1.1.2.1.2.2
Name |||lldpStatsRemTablesDeletes
OID ||||1.0.8802.1.1.2.1.2.3
Name |||lldpStatsRemTablesDrops
OID ||||1.0.8802.1.1.2.1.2.4
Name |||lldpStatsRemTablesAgeouts
OID ||||1.0.8802.1.1.2.1.2.5
其它顯示信息略……
表1-6 display snmp-agent mib-node trap-node命令顯示信息描述表
字段 |
描述 |
Name |
MIB告警節點名 |
OID |
MIB告警節點對應的OID |
Trap Object |
MIB告警綁定變量節點相關信息(其中Name表示告警綁定變量節點名,OID表示變量名節點對應的OID) |
# 顯示SNMP支持的MIB節點詳細信息,包括節點名、OID、節點類型、訪問權限、數據類型,對應MOR定義、父子兄弟節點信息等。
<Sysname> display snmp-agent mib-node verbose
Name |iso
OID ||1
Properties ||NodeType: Other
||AccessType: NA
||DataType: NA
||MOR: 0x00000000
Parent ||
First child ||std
Next leaf ||dot1xPaeSystemAuthControl
Next sibling ||
其它顯示信息略……
表1-7 display snmp-agent mib-node verbose命令顯示信息描述表
字段 |
描述 |
Name |
MIB節點名 |
OID |
MIB節點對應的OID |
Properties |
MIB節點的屬性 |
NodeType |
MIB節點類型,取值為: · Table:表節點 · Row:表中行節點 · Column:表中列節點 · Leaf:葉子節點 · Group:組節點(葉子節點的父節點) · Trapnode:告警節點 · Other:其他類型 |
AccessType |
MIB節點訪問權限,取值為: · NA:表示節點不可訪問 · NF:表示節點支持告警 · RO:表示節點支持隻讀訪問 · RW:表示節點支持讀寫訪問 · RC:表示節點支持讀寫創建訪問 · WO:表示節點支持隻寫訪問 |
DataType |
MIB節點數據類型,取值為: · Integer:整數 · Integer32:32位整數 · Unsigned32:32位無符號整數 · Gauge:可增可減的非負整數 · Gauge32:32位可增可減的非負整數 · Counter:可增不可減的非負整數 · Counter32:32位可增不可減的非負整數 · Counter64:64位可增不可減的非負整數 · Timeticks:用於計時的非負整數 · Octstring:八進製字符串 · OID:對象標識符 · IPaddress:用於IP規範格式的32位地址 · Networkaddress:網絡IP地址 · Opaque:任意數據 · Userdefined:用戶類型 · BITS:所述位枚舉 · NA:其他類型節點 |
MOR |
MIB節點對應的MOR定義 |
Parent |
父節點名 |
First child |
第一個子節點名 |
Next leaf |
下一個葉子節點名 |
Next sibling |
右兄弟節點名 |
Allow |
允許的操作類型,取值包括如下: · get/set/getnext:允許所有操作 · get:隻允許Get操作 · set:隻允許Set操作 · getnext:隻允許GetNext操作 |
Value range |
節點的取值範圍 |
Index |
表索引,僅表節點顯示此字段 |
display snmp-agent mib-view命令用來顯示MIB視圖的信息。
【命令】
display snmp-agent mib-view [ exclude | include | viewname view-name ]
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【參數】
exclude:顯示屬性為exclude的MIB視圖的信息。
include:顯示屬性為include的MIB視圖的信息。
viewname view-name:顯示指定名稱MIB視圖的信息,view-name為視圖的名稱,為1~32個字符的字符串,區分大小寫。
【使用指導】
不指定參數時,顯示所有MIB視圖的信息。
【舉例】
# 顯示設備的所有MIB視圖。
<Sysname> display snmp-agent mib-view
View name: ViewDefault
MIB Subtree: iso
Subtree mask:
Storage-type: nonVolatile
View Type: included
View status: active
View name: ViewDefault
MIB Subtree: snmpUsmMIB
Subtree mask:
Storage-type: nonVolatile
View Type: excluded
View status: active
View name: ViewDefault
MIB Subtree: snmpVacmMIB
Subtree mask:
Storage-type: nonVolatile
View Type: excluded
View status: active
View name: ViewDefault
MIB Subtree: snmpModules.18
Subtree mask:
Storage-type: nonVolatile
View Type: excluded
View status: active
以上信息表明,設備上當前有四個MIB視圖,名稱均為ViewDefault。使用ViewDefault視圖名限製NMS訪問時,除了snmpUsmMIB、snmpVacmMIB、snmpModules.18子樹下的MIB對象,NMS可以訪問iso子樹下其它所有MIB對象。
表1-8 display snmp-agent mib-view命令顯示信息描述表
字段 |
描述 |
View name |
視圖名 |
MIB Subtree |
MIB視圖對應的MIB子樹 |
Subtree mask |
MIB子樹的掩碼 |
Storage-type |
存儲方式,分為以下幾種:volatile、nonVolatile、permanent、readOnly、other,具體請參見表1-1 |
View Type |
MIB視圖的類型(即該視圖與MIB子樹的關係),包括included和excluded兩種: · included表示當前視圖包括該子樹的所有節點,即可以訪問子樹內的所有MIB對象 · excluded表示當前視圖不包括該子樹的任意節點,即子樹內的所有MIB對象都不能被訪問 |
View status |
MIB視圖的狀態,包括: · active表示MIB視圖可用 · inactive表示MIB視圖不可用。用戶不能對處於該狀態的MIB視圖中的節點執行讀寫操作,但允許MIB視圖中的節點發送Trap和Inform消息 |
【相關命令】
· snmp-agent mib-view
display snmp-agent remote命令用來顯示遠端SNMP實體的引擎ID。
【命令】
display snmp-agent remote [ { ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] ]
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【參數】
ipv4-address:顯示指定IPv4地址的遠端SNMP實體的引擎ID。ipv4-address表示遠端SNMP實體的IPv4地址。
ipv6 ipv6-address:顯示指定IPv6地址的遠端SNMP實體的引擎ID。ipv6-address表示遠端SNMP實體的IPv6地址。
vpn-instance vpn-instance-name:指定遠端SNMP實體所屬的VPN實例。vpn-instance-name表示MPLS L3VPN的VPN實例名稱,為1~31個字符的字符串,區分大小寫。如果未指定本參數,則表示遠端SNMP實體位於公網中。
【使用指導】
SNMP實體引擎ID是SNMP實體的唯一標識,它在一個SNMP管理域內是唯一的。SNMP實體引擎是SNMP實體的重要組成部分,完成SNMP信息的信息調度、信息處理、安全驗證、訪問控製等功能。
如果未指定遠端SNMP實體的IP地址,則會顯示設備上配置的所有遠端SNMP實體的引擎ID。
【舉例】
# 顯示設備上配置的所有遠端SNMP實體的引擎ID。
<Sysname> display snmp-agent remote
Remote engineID: 800063A28000A0FC00580400000001
IPv4 address: 1.1.1.1
VPN instance: vpn1
表1-9 display snmp-agent remote命令顯示信息描述表
字段 |
描述 |
Remote engineID |
遠端SNMP實體的引擎,可通過snmp-agent remote命令配置 |
IPv4 address |
遠端SNMP實體的IPv4地址 |
IPv6 address |
遠端SNMP實體的IPv6地址。當配置snmp-agent remote命令時綁定的是IPv6地址時,顯示該信息 |
VPN instance |
遠端SNMP實體所屬的VPN實例。隻有配置snmp-agent remote命令且綁定了VPN實例時,才顯示該信息 |
【相關命令】
· snmp-agent remote
display snmp-agent statistics命令用來顯示SNMP報文的統計信息。
【命令】
display snmp-agent statistics
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【舉例】
# 顯示SNMP報文的統計信息。
<Sysname> display snmp-agent statistics
1684 messages delivered to the SNMP entity.
5 messages were for an unsupported version.
0 messages used an unknown SNMP community name.
0 messages represented an illegal operation for the community supplied.
0 ASN.1 or BER errors in the process of decoding.
1679 messages passed from the SNMP entity.
0 SNMP PDUs had badValue error-status.
0 SNMP PDUs had genErr error-status.
0 SNMP PDUs had noSuchName error-status.
0 SNMP PDUs had tooBig error-status (Maximum packet size 1500).
16544 MIB objects retrieved successfully.
2 MIB objects altered successfully.
7 GetRequest-PDU accepted and processed.
7 GetNextRequest-PDU accepted and processed.
1653 GetBulkRequest-PDU accepted and processed.
1669 GetResponse-PDU accepted and processed.
2 SetRequest-PDU accepted and processed.
0 Trap PDUs accepted and processed.
0 alternate Response Class PDUs dropped silently.
0 forwarded Confirmed Class PDUs dropped silently.
表1-10 display snmp-agent statistics命令顯示信息描述表
字段 |
描述 |
messages delivered to the SNMP entity |
Agent收到的數據報文個數 |
messages were for an unsupported version |
版本不支持的數據報文個數 |
messages used an unknown SNMP community name |
使用了非法團體名的數據報文個數 |
messages represented an illegal operation for the community supplied |
包含了超出團體名權限的操作的數據報文個數 |
ASN.1 or BER errors in the process of decoding |
在解碼過程中發生ASN.1(Abstract Syntax Notation dot one,抽象記法1)或BER(Basic Encoding Rules ,基本編碼規則)錯誤的數據報文個數 |
messages passed from the SNMP entity |
Agent發送給別的SNMP實體的數據報文個數 |
SNMP PDUs had badValue error-status |
錯誤類型為BadValues的數據報文個數 |
SNMP PDUs had genErr error-status |
genErr錯誤的數據報文個數 |
SNMP PDUs had noSuchName error-status |
NoSuchName錯誤的數據報文個數 |
SNMP PDUs had tooBig error-status |
TooBig錯誤的數據報文個數(設備允許通過的最大SNMP PDU為1500字節) |
MIB objects retrieved successfully |
已成功獲取的MIB對象個數 |
MIB objects altered successfully |
已成功修改的MIB對象個數 |
GetRequest-PDU accepted and processed |
已接收並處理的Get請求的個數 |
GetNextRequest-PDU accepted and processed |
已接收並處理的GetNext請求的個數 |
GetBulkRequest-PDU accepted and processed |
已接收並處理的GetBulk請求的個數 |
GetResponse-PDU accepted and processed |
已接收並處理的Get響應的個數 |
SetRequest-PDU accepted and processed |
已接收並處理的Set請求的個數 |
Trap PDUs accepted and processed |
已接收並處理的Trap和Inform報文的個數 |
alternate Response Class PDUs dropped silently |
被丟棄的響應數據報文個數 |
forwarded Confirmed Class PDUs dropped silently |
被丟棄的轉發數據報文個數 |
display snmp-agent sys-info命令用來顯示SNMP設備的係統信息。
【命令】
display snmp-agent sys-info [ contact | location | version ] *
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【參數】
contact:顯示當前設備維護者的聯係信息。
location:顯示當前設備的物理位置信息。
version:顯示當前設備中運行的SNMP版本號。
【使用指導】
不指定參數時,顯示設備的全部係統信息。
【舉例】
# 顯示設備係統信息。
<Sysname> display snmp-agent sys-info
The contact information of the agent:
New H3C Technologies Co., Ltd.
The location information of the agent:
Hangzhou, China
The SNMP version of the agent:
SNMPv3
【相關命令】
· snmp-agent sys-info
display snmp-agent trap queue命令用來顯示告警信息隊列的基本信息。
【命令】
display snmp-agent trap queue
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【舉例】
# 顯示當前告警信息隊列的配置及使用情況。
<Sysname> display snmp-agent trap queue
Queue size: 100
Message number: 6
表1-11 display snmp-agent trap queue命令顯示信息描述表
字段 |
描述 |
Queue size |
告警信息隊列長度 |
Message number |
告警信息隊列中當前告警信息的個數 |
【相關命令】
· snmp-agent trap life
· snmp-agent trap queue-size
display snmp-agent trapbuffer drop命令用來顯示SNMP告警信息的丟棄記錄。
【命令】
display snmp-agent trapbuffer drop
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【使用指導】
當SNMP告警信息發送隊列丟棄SNMP告警時,會在SNMP Trapbuffer中記錄該告警的相關信息,以便用戶查詢和定位問題。
【舉例】
# 顯示SNMP Trap的丟棄情況。
<Sysname> display snmp-agent trapbuffer drop
Current messages:1
Wed Dec 14 10:49:52:656 2019 Notification hh3cCfgManEventlog(1.3.6.1.4.1.25506.2.4.2.1) dropped.
顯示信息中,Current messages表示SNMP Trapbuffer中SNMP告警信息丟棄記錄的總條數。
【相關命令】
· reset snmp-agent trapbuffer
display snmp-agent trapbuffer send命令用來顯示SNMP告警信息的發送記錄。
【命令】
display snmp-agent trapbuffer send
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【使用指導】
SNMP發送告警信息後,會在SNMP Trapbuffer中記錄該告警的發送信息,包括Notification、告警發往的目的IP以及發送結果(成功、失敗),以便用戶查詢和定位問題。
【舉例】
# 顯示SNMP告警信息的發送記錄。
<Sysname> display snmp-agent trapbuffer send
Current messages:2
Fri Jul 31 10:31:17 2020 Notification hh3cLogOut(1.3.6.1.4.1.25506.2.2.1.1.3.0.2) failed to be sent to 19.16.11.89.
Fri Jul 31 10:31:17 2020 Notification hh3cLogOut(1.3.6.1.4.1.25506.2.2.1.1.3.0.2) sent to 192.168.11.89 successfully.
顯示信息中,Current messages表示SNMP Trapbuffer中SNMP告警信息發送記錄的總條數。
【相關命令】
· reset snmp-agent trapbuffer
display snmp-agent trap-list命令用來顯示SNMP告警功能的開啟狀態。
【命令】
display snmp-agent trap-list
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【使用指導】
如果一個模塊包含多個子模塊,隻要有任何一個子模塊的告警信息是使能的,就顯示整個模塊是使能的。
業務模塊是否支持SNMP告警功能請通過執行snmp-agent trap enable ?命令來獲知。本命令的顯示信息和snmp-agent trap enable命令以及業務模塊的配置相關。
【舉例】
# 顯示SNMP告警功能的開啟狀態。
<Sysname> display snmp-agent trap-list
arp notification is disabled.
其它顯示信息略……
【相關命令】
· snmp-agent trap enable
display snmp-agent usm-user命令用來顯示SNMPv3用戶信息。
【命令】
display snmp-agent usm-user [ engineid engineid | group group-name | username user-name ] *
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【參數】
engineid engineid:顯示指定引擎ID的SNMPv3用戶信息,engineid表示SNMP引擎ID,不區分大小寫。SNMPv3用戶創建的時候,係統會記錄當時設備的SNMP實體引擎ID,如果設備的引擎ID被修改,則被創建的SNMPv3用戶將暫時無效,隻有引擎ID恢複後,才能繼續生效。
group group-name:顯示屬於指定SNMP組的SNMPv3用戶信息,區分大小寫。
username user-name:顯示指定名稱的SNMPv3用戶信息,區分大小寫。
【使用指導】
使用snmp-agent usm-user命令可以創建SNMPv1/v2c/v3用戶,如果創建是的SNMPv1/v2c用戶,係統自動添加一個新的同名的團體名,並將這個用戶當成SNMPv1/v2c團體來處理。所以,不能通過display snmp-agent usm-user命令來查看SNMPv1/v2c用戶的信息,能通過display snmp-agent community查看SNMPv1/v2c用戶對應的團體的信息。
【舉例】
# 顯示設備上已創建的所有SNMPv3用戶的信息。
<Sysname> display snmp-agent usm-user
Username: userv3
Group name: mygroupv3
Engine ID: 800063A203000FE240A1A6
Storage-type: nonVolatile
UserStatus: active
ACL: 2000
Username: userv3
Group name: mygroupv3
Engine ID: 8000259503000BB3100A508
Storage-type: nonVolatile
UserStatus: active
ACL name: testacl
Username: userv3code
Role name: groupv3code
network-operator
Engine ID: 800063A203000FE240A1A6
Storage-type: nonVolatile
UserStatus: active
Username: userv3code
Role name: snmprole
network-operator
Engine ID: 800063A280000002BB0001
Storage-type: nonVolatile
UserStatus: active
表1-12 display snmp-agent usm-user命令顯示信息描述表
字段 |
描述 |
Username |
SNMP用戶的用戶名 |
Group name |
SNMP用戶所在組的組名 |
Role name |
SNMP用戶的角色名稱 |
Engine ID |
SNMP用戶創建時使用的SNMP實體引擎ID |
Storage-type |
存儲方式,分為以下幾種:volatile、nonVolatile、permanent、readOnly、other,具體請參見表1-1 |
UserStatus |
SNMP用戶的狀態,分為以下幾種: · active:有效 · notInService:當前不可用 · notReady:未配置完成 · other:其他 |
ACL |
使用的ACL列表的編號(該字段僅在用戶與ACL編號綁定後顯示) |
ACL name |
使用的ACL列表的名稱(該字段僅在用戶與ACL名稱綁定後顯示) |
IPV6 ACL |
使用的IPv6 ACL列表的編號(該字段僅在用戶與IPv6 ACL編號綁定後顯示) |
IPV6 ACL name |
使用的IPv6 ACL列表的名稱(該字段僅在用戶與IPv6 ACL名稱綁定後顯示) |
【相關命令】
· snmp-agent usm-user v3
enable snmp trap updown命令用來開啟接口狀態變化的告警功能。
undo enable snmp trap updown命令用來關閉接口狀態變化的告警功能。
【命令】
enable snmp trap updown
undo enable snmp trap updown
【缺省情況】
接口狀態變化的告警功能處於開啟狀態。
【視圖】
接口視圖
【缺省用戶角色】
network-admin
context-admin
【使用指導】
需要注意的是,如果要求接口在狀態發生改變時生成接口狀態變化的告警信息,需要開啟全局告警功能並在接口開啟接口狀態變化的告警功能。接口下開啟請使用命令enable snmp trap updown,全局下開啟請使用命令snmp-agent trap enable standard [ linkdown | linkup ] *。
【舉例】
# 允許發送端口GigabitEthernet1/0/1的linkUp/linkDown的SNMP告警,使用團體名public,向IP地址為10.1.1.1的目的主機發送Trap報文。
<Sysname> system-view
[Sysname] snmp-agent trap enable
[Sysname] snmp-agent target-host trap address udp-domain 10.1.1.1 params securityname public
[Sysname] interface gigabitethernet 1/0/1
[Sysname-GigabitEthernet1/0/1] enable snmp trap updown
【相關命令】
· snmp-agent target-host
· snmp-agent trap enable
reset snmp-agent trapbuffer命令用來清除SNMP Trapbuffer中的所有記錄。
【命令】
reset snmp-agent trapbuffer
【視圖】
用戶視圖
【缺省用戶角色】
network-admin
context-admin
【舉例】
# 清除SNMP Trapbuffer中的所有記錄。
<Sysname> reset snmp-agent trapbuffer
【相關命令】
· display snmp-agent trapbuffer drop
· display snmp-agent trapbuffer send
snmp virtual-access visible命令用來配置可通過MIB節點查詢和配置VA(Virtual Access,虛擬訪問)接口。
undo snmp virtual-access visible命令用來恢複缺省情況。
【命令】
snmp virtual-access visible
undo snmp virtual-access visible
【缺省情況】
不能通過MIB節點查詢和配置VA接口。
【視圖】
係統視圖
【缺省用戶角色】
context-admin
【使用指導】
由於大多情況下,用戶不關心VA接口,所以,缺省情況下,不能通過MIB節點查詢和配置VA接口。此時,設備會忽略NMS發送的關於VA接口的配置和查詢請求,這不僅可以提高設備獲取其它接口信息的效率,提升用戶體驗度,還可以降低設備的工作量,避免CPU資源浪費。有關VA接口的相關介紹,請參見“二層技術-廣域網接入配置指導”中的“PPP”。
如果用戶需要通過MIB對VA接口進行配置或查詢,請配置本命令。
【舉例】
# 配置可通過MIB節點查詢和配置VA接口。
<Sysname> system-view
[Sysname] snmp virtual-access visible
snmp-agent命令用來開啟SNMP Agent功能。
undo snmp-agent命令用來關閉SNMP Agent功能。
【命令】
snmp-agent
undo snmp-agent
【缺省情況】
SNMP Agent功能處於關閉狀態。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【使用指導】
執行除snmp-agent calculate-password外任何以snmp-agent開頭的命令都可以開啟SNMP Agent功能。
當SNMP偵聽端口被設備上的其他服務占用時,會導致SNMP功能啟動失敗。SNMP偵聽端口可通過snmp-agent port命令配置,用戶可使用display udp verbose命令查看設備上UDP端口的使用情況。
用戶修改SNMP模塊的相關配置後,如果關閉SNMP Agent功能,這些配置將暫時不生效。執行display current-configuration命令不會顯示這些命令,執行save命令,這些配置也不會保存到配置文件。開啟SNMP Agent功能後,這些配置會自動立即生效,不需要重複配置。
【舉例】
# 開啟設備的SNMP Agent功能。
<Sysname> system-view
[Sysname] snmp-agent
【相關命令】
· display udp verbose(三層技術-IP業務/IP性能優化)
· snmp-agent port
snmp-agent { inform | trap } source命令用來配置發送的告警信息的源IP地址。
undo snmp-agent { inform | trap } source命令用來恢複缺省情況。
【命令】
snmp-agent { inform | trap } source interface-type { interface-number | interface-number.subnumber }
undo snmp-agent { inform | trap } source
【缺省情況】
使用出接口的IP地址作為告警信息的源IP地址。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
inform:用來指定Inform報文中的源IP地址。
trap:用來指定Trap報文中的源IP地址。
interface-type { interface-number | interface-number.subnumber }:指定三層接口類型與接口編號。其中interface-number為主接口編號;subnumber為子接口編號,取值範圍為1~4094。
【使用指導】
執行該命令後,係統會使用指定接口的主IP地址作為發送出去的告警信息的源IP地址。這樣,在NMS上就可以使用該IP地址唯一標誌Agent。即便Agent使用不同的出接口發送告警信息,NMS都可以使用該IP地址來過濾Agent發送的所有告警信息。
本命令配置的源IP地址對所有NMS生效,snmp-agent target-host命令中指定的源IP地址對指定NMS生效。對於同一NMS,優先使用snmp-agent target-host命令中指定的源IP地址。
在將某個接口配置為獲取告警信息的源地址接口之前需要注意的是:
· 如果配置的接口已存在,並且配置了合法的IP地址,則該IP地址將作為告警信息的源地址;
· 如果配置的接口不存在,則該命令會配置失敗;
· 如果配置的接口已存在,但未配置合法的IP地址,則該命令不生效,在接口配置了合法IP地址後,該命令會自動生效。
【舉例】
# 配置Trap報文的源地址為以太網接口GigabitEthernet1/0/1上的接口主IP地址。
<Sysname> system-view
[Sysname] snmp-agent trap source gigabitethernet 1/0/1
# 配置Inform報文的源地址為以太網接口GigabitEthernet1/0/2上的接口主IP地址。
<Sysname> system-view
[Sysname] snmp-agent inform source gigabitethernet 1/0/2
【相關命令】
· snmp-agent trap enable
· snmp-agent target-host
snmp-agent calculate-password命令用來為明文密碼計算對應的密文密碼。
【命令】
snmp-agent calculate-password plain-password mode { 3desmd5 | 3dessha | md5 | sha } { local-engineid | specified-engineid engineid }
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
plain-password:表示明文密碼,為1~64個字符的字符串,區分大小寫。
mode:指定認證算法和加密算法。設備支持的認證算法有HMAC-MD5和HMAC-SHA1,其中HMAC-MD5的計算速度比HMAC-SHA1快,而HMAC-SHA1的安全強度比HMAC-MD5高;設備支持的加密算法安全性由高到低依次是:AES、3DES、DES,安全性高的加密算法實現機製複雜,運算速度慢。對於普通的安全要求,DES算法就可以滿足需要。
· 3desmd5:用於計算密文加密密碼,此時對應的認證算法必須為HMAC-MD5,加密算法必須為3DES。
· 3dessha:用於計算密文加密密碼,此時對應的認證算法必須為HMAC-SHA1,加密算法必須為3DES。
· md5:用於計算密文認證密碼和密文加密密碼。用於計算密文認證密碼時,認證算法必須為HMAC-MD5;用於計算密文加密密碼時,認證算法必須為HMAC-MD5,加密算法可以為AES或者DES。因為當認證算法為HMAC-MD5時,相同的明文密碼,各自計算出來的密文認證密碼和密文加密密碼均相同。
· sha:用於計算密文認證密碼和密文加密密碼。用於計算密文認證密碼時,認證算法必須為HMAC-SHA1;用於計算密文加密密碼時,認證算法必須為HMAC-SHA1,加密算法可以為AES或者DES。因為當認證算法為HMAC-SHA1時,相同的明文密碼,各自計算出來的密文認證密碼和密文加密密碼均相同。
local-engineid:使用本地引擎ID計算密文密碼,引擎ID的相關描述與配置可參考命令snmp-agent local-engineid。
specified-engineid:使用用戶指定的引擎ID計算密文密碼。
engineid:引擎ID,必須為偶數個十六進製數,偶數的取值範圍為10~64,不區分大小寫。全0和全F均被認為是無效參數。
【使用指導】
執行本命令前,必須先開啟設備的SNMP Agent功能。
在創建SNMPv3用戶時,如果指明認證或者加密密碼采用密文配置方式,則可以輸入該命令生成的密文密碼來代替明文密碼,從而避免在非安全環境直接輸入明文密碼造成的安全隱患。
生成的密碼是和引擎ID相關聯的,在某一引擎ID下生成的密碼,也隻在此引擎ID下生效。
【舉例】
# 使用本地引擎ID和HMAC-SHA1算法計算明文認證密碼authkey的密文密碼。
<Sysname> system-view
[Sysname] snmp-agent calculate-password authkey mode sha local-engineid
The encrypted key is: 09659EC5A9AE91BA189E5845E1DDE0CC
【相關命令】
· snmp-agent local-engineid
· snmp-agent usm-user v3
snmp-agent community命令用來創建SNMP團體。
undo snmp-agent community命令用來刪除SNMP團體。
【命令】
VACM方式:
snmp-agent community { read | write } [ simple | cipher ] community-name [ mib-view view-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } | acl ipv6 { ipv6-acl-number | name ipv6-acl-name } ] *
undo snmp-agent community [ cipher ] community-name
RBAC方式:
snmp-agent community [ simple | cipher ] community-name user-role role-name [ acl { ipv4-acl-number | name ipv4-acl-name } | acl ipv6 { ipv6-acl-number | name ipv6-acl-name } ] *
undo snmp-agent community [ cipher ] community-name
【缺省情況】
不存在SNMP團體。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
read:表示對MIB對象的訪問權限為隻讀。NMS使用該團體名訪問Agent時隻能執行讀操作。
write:表示對MIB對象的訪問權限為讀寫。NMS使用該團體名訪問Agent時可以執行讀、寫操作。
simple:表示以明文方式配置團體名並以密文方式保存到配置文件中。
cipher:表示以密文方式配置團體名並以密文方式保存到配置文件中。
community-name:配置明文團體名或密文團體名,是限製NMS訪問Agent時所使用的團體名。區分大小寫,需要轉義的字符請加“\”後輸入。當以明文方式配置時,團體名為1~32個字符的字符串;當以密文方式配置時,團體名為33~73個字符的字符串。
mib-view view-name:用來指定NMS可以訪問的MIB對象的範圍,view-name表示MIB視圖名,為1~32個字符的字符串,區分大小寫。不指定參數時,缺省視圖為ViewDefault。
user-role role-name:該團體對應的角色名稱,role-name為1~63個字符的字符串,區分大小寫。
acl:將團體名與基本/高級IPv4 ACL綁定。
ipv4-acl-number:表示基本或高級IPv4 ACL的編號,其中基本IPv4 ACL的取值範圍為2000~2999,高級IPv4 ACL的取值範圍為3000~3999。
name ipv4-acl-name:表示基本或高級IPv4 ACL的名稱,為1~63個字符的字符串,不區分大小寫。
acl ipv6:將團體名與基本/高級IPv6 ACL綁定。
ipv6-acl-number:表示基本或高級IPv6 ACL的編號,其中基本IPv6 ACL的取值範圍為2000~2999,高級IPv6 ACL的取值範圍為3000~3999。
name ipv6-acl-name:表示基本或高級IPv6 ACL的名稱,為1~63個字符的字符串,不區分大小寫。
【使用指導】
為了安全起見,隻有具有network-admin、context-admin或者level-15用戶角色的用戶登錄設備後才能執行本命令。其它角色的用戶,即使授權了SNMP特性或本命令的操作權限,也不能執行本命令。
該命令用於SNMPv1和SNMPv2c組網環境。
團體是NMS和Agent的集合,用團體名來標誌。團體名相當於密碼,團體內的設備通信使用團體名來進行認證。隻有NMS和Agent上配置的團體名相同時,才能互相訪問。通常情況下,“public”被用來作為讀權限團體名、“private”被用來作為寫權限團體名。為了增強安全性,網絡管理員也可以配置其它團體名。
用戶有兩種方式創建團體:
· 使用snmp-agent community命令來創建團體。
· 配置snmp-agent usm-user { v1 | v2c }和snmp-agent group { v1 | v2c }命令成功創建SNMPv1或SNMPv2c用戶以及相應的組後,係統會以用戶名為團體名自動創建一個團體。
display snmp-agent community會顯示這兩種方式創建的、以明文方式配置並以明文方式保存到配置文件中的團體的信息。
使用snmp-agent community命令創建團體時,可以通過兩種配置方式來控製團體的訪問:
· VACM(View-based Access Control Model,基於視圖的訪問控製模型)的配置方式:該方式通過指定MIB視圖來限定NMS可以訪問的MIB節點,訪問的動作包括隻讀和讀寫兩種。
· RBAC(Role Based Access Control,基於角色的訪問控製)的配置方式:該方式使用用戶角色來限定NMS的訪問權限。缺省情況下,用戶角色network-admin、context-admin和level-15可以讀寫所有的MIB節點,network-operator和context-operator可以隻讀所有的MIB節點。有關用戶角色的詳細信息,請參見“基礎配置指導”中的“RBAC”。
推薦使用RBAC配置方式,安全性更高。
多次執行本命令最多可創建10個團體名。
多次執行該命令,指定的團體名相同,其它參數不同時,新配置生效。
不指定simple和cipher參數時,表示以明文方式配置團體名,並以明文方式保存到配置文件。
使用acl參數可以限製非法NMS訪問設備。引用ACL時,需要注意的是:
· 若引用的ACL不存在,或者引用的ACL中沒有配置規則,則允許所有NMS訪問設備。
· 在引用的ACL中,若某規則指定了vpn-instance參數,則表示該規則僅對VPN報文有效;若規則未指定vpn-instance參數,則表示該規則僅對公網報文有效。
· 當引用的ACL下配置了規則時,則隻有規則中permit的NMS才能訪問設備,其他NMS不允許訪問設備。
關於ACL的詳細描述和介紹請參見“ACL和QoS配置指導”中的“ACL”。
【舉例】
# 以明文方式創建SNMP團體readaccess,並且允許NMS使用該團體名對設備上缺省視圖內的MIB對象進行隻讀訪問。
<Sysname> system-view
[Sysname] snmp-agent sys-info version v1 v2c
[Sysname] snmp-agent community read simple readaccess
# 以明文方式配置團體名writeaccess,並且隻允許IP地址為1.1.1.1的NMS使用該團體名對設備上缺省視圖內的MIB對象進行讀寫操作,禁止其它NMS使用該團體名執行寫操作。
<Sysname> system-view
[Sysname] acl basic 2001
[Sysname-acl-ipv4-basic-2001] rule permit source 1.1.1.1 0.0.0.0
[Sysname-acl-ipv4-basic-2001] rule deny source any
[Sysname-acl-ipv4-basic-2001] quit
[Sysname] snmp-agent sys-info version v2c
[Sysname] snmp-agent community write simple writeaccess acl 2001
# 以明文方式配置團體名writeaccess,並且隻允許IP地址為1.1.1.2的NMS使用該團體名對設備上缺省視圖內的MIB對象進行讀寫操作,禁止其它NMS使用該團體名執行寫操作。
<Sysname> system-view
[Sysname] acl basic name testacl
[Sysname-acl-ipv4-basic-testacl] rule permit source 1.1.1.2 0.0.0.0
[Sysname-acl-ipv4-basic-testacl] rule deny source any
[Sysname-acl-ipv4-basic-testacl] quit
[Sysname] snmp-agent sys-info version v2c
[Sysname] snmp-agent community write simple writeaccess acl name testacl
# 以明文方式創建團體名wr-sys-acc,使用該團體名訪問設備時隻能對system(OID為1.3.6.1.2.1.1)子樹下的MIB對象執行寫操作。
<Sysname> system-view
[Sysname] snmp-agent sys-info version v1 v2c
[Sysname] undo snmp-agent mib-view ViewDefault
[Sysname] snmp-agent mib-view included test system
[Sysname] snmp-agent community write simple wr-sys-acc mib-view test
【相關命令】
· display snmp-agent community
· snmp-agent mib-view
snmp-agent community-map命令用來創建團體名到SNMP上下文的映射。
undo snmp-agent community-map命令用來刪除團體名到SNMP上下文的映射。
【命令】
snmp-agent community-map community-name context context-name
undo snmp-agent community-map community-name context context-name
【缺省情況】
不存在團體名到SNMP上下文的映射。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
community-name:團體名,為1~32個字符的字符串,區分大小寫。
context-name:SNMP上下文。為1~32個字符的字符串,區分大小寫。
【使用指導】
用戶配置成功後,使用SNMP v1/v2版本連接SNMP Agent時,SNMP插件端所獲取的上下文,是此時NMS訪問Agent,使用的團體名映射的上下文。如團體名未配置上下文映射,則獲取不到。
係統中可配置的映射最多為10個。
【舉例】
# 配置一個團體名到SNMP上下文的映射。
<Sysname> system-view
[Sysname] snmp-agent community-map private context testcontext
【相關命令】
· display snmp-agent community
snmp-agent context命令用來創建SNMP上下文。
undo snmp-agent context命令用來刪除SNMP上下文。
【命令】
snmp-agent context context-name
undo snmp-agent context context-name
【缺省情況】
不存在SNMP上下文。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
context-name:SNMP上下文,為1~32個字符的字符串,區分大小寫。
【使用指導】
NMS未配置上下文,或NMS與Agent配置為相同的上下文時,兩者可以連接成功,否則返回超時。
係統中可配置的SNMP上下文最多為20個。
【舉例】
# 創建一個新的context。
<Sysname> system-view
[Sysname] snmp-agent context testcontext
【相關命令】
· display snmp-agent context
snmp-agent group命令用來創建SNMP組。
undo snmp-agent group命令用來刪除SNMP組。
【命令】
· SNMPv1和SNMPv2c版本下的命令格式是:
snmp-agent group { v1 | v2c } group-name [ notify-view view-name | read-view view-name | write-view view-name ] * [ acl { ipv4-acl-number | name ipv4-acl-name } | acl ipv6 { ipv6-acl-number | name ipv6-acl-name } ] *
undo snmp-agent group { v1 | v2c } group-name
· SNMPv3版本下的命令格式是:
snmp-agent group v3 group-name [ authentication | privacy ] [ notify-view view-name | read-view view-name | write-view view-name ] * [ acl { ipv4-acl-number | name ipv4-acl-name } | acl ipv6 { ipv6-acl-number | name ipv6-acl-name } ] *
undo snmp-agent group v3 group-name [ authentication | privacy ]
【缺省情況】
不存在SNMP組。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
v1:SNMPv1版本。
v2c:SNMPv2c版本。
v3:SNMPv3版本。
group-name:SNMP組的名稱,取值範圍為1~32個字符的字符串,區分大小寫。
authentication:表示對報文進行認證但不加密。
privacy:表示對報文進行認證和加密。
notify-view view-name:可以發告警信息的視圖名,為1~32個字符的字符串,區分大小寫。缺省情況下,未配置告警信息視圖。
read-view view-name:隻讀視圖名,為1~32個字符的字符串,區分大小寫。缺省值為ViewDefault。
write-view view-name:讀寫視圖名,為1~32個字符的字符串,區分大小寫。缺省情況下,未配置讀寫視圖,即NMS不能對設備的所有MIB對象進行寫操作。
acl:將組與基本/高級IPv4 ACL綁定。
ipv4-acl-number:表示基本或高級IPv4 ACL的編號,其中基本IPv4 ACL編號的取值範圍為2000~2999,高級IPv4 ACL編號的取值範圍為3000~3999。
name ipv4-acl-name:表示基本或高級IPv4 ACL的名稱,為1~63個字符的字符串,不區分大小寫。
acl ipv6:將組與基本/高級IPv6 ACL綁定。
ipv6-acl-number:表示基本或高級IPv6 ACL的編號,其中基本IPv4 ACL編號的取值範圍為2000~2999,高級IPv6 ACL編號的取值範圍為3000~3999。
name ipv6-acl-name:表示基本或高級IPv6 ACL的名稱,為1~63個字符的字符串,不區分大小寫。
【使用指導】
為了安全起見,隻有具有network-admin、context-admin或者level-15用戶角色的用戶登錄設備後才能執行本命令。其它角色的用戶,即使授權了SNMP特性或本命令的操作權限,也不能執行本命令。
SNMP組可以定義安全模式、視圖權限等信息,配置在此組內的用戶都具有這些公共屬性。
係統中可配置的SNMP組最多為20個。
是否指定authentication和privacy參數存在如下情況:
· 當不指定authentication和privacy時,表示不認證不加密。此時,使用和該組綁定的用戶名建立SNMP連接時,均不認證不加密。即便用戶配置了認證密碼/加密密碼,認證密碼/加密密碼也不生效。
· 當指定authentication時,表示認證不加密。此時,使用和該組綁定的用戶名建立SNMP連接時,均認證不加密。即便用戶配置了加密密碼,加密密碼也不生效。
· 當指定privacy時,表示認證加密。此時,使用和該組綁定的用戶名建立SNMP連接時,均認證加密。該組內的用戶必須配置認證密碼和加密密碼,否則,不能建立SNMP連接。
創建SNMP組和用戶的時候都可以使用acl參數限製非法NMS訪問設備,隻有兩個ACL均允許的NMS才能訪問設備。在創建組或用戶,引用ACL時,需要注意的是:
· 若引用的ACL不存在,或者引用的ACL中沒有配置規則,則允許所有NMS訪問設備。
· 在引用的ACL中,若某規則指定了vpn-instance參數,則表示該規則僅對VPN報文有效;若規則未指定vpn-instance參數,則表示該規則僅對公網報文有效。
· 當引用的ACL下配置了規則時,則隻有規則中permit的NMS才能訪問設備,其他NMS不允許訪問設備。
關於ACL的詳細描述和介紹請參見“ACL和QoS配置指導”中的“ACL”。
【舉例】
# 在運行SNMPv3版本的設備上創建一個SNMP組group1。
<Sysname> system-view
[Sysname] snmp-agent group v3 group1
【相關命令】
· display snmp-agent group
· snmp-agent mib-view
· snmp-agent usm-user
snmp-agent local-engineid命令用來配置本設備的SNMP引擎ID。
undo snmp-agent local-engineid命令用來恢複缺省情況。
【命令】
snmp-agent local-engineid engineid
undo snmp-agent local-engineid
【缺省情況】
設備引擎ID為“公司的企業號+設備信息”。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
engineid:SNMP引擎ID,必須為偶數個十六進製數,偶數的取值範圍為10~64,不區分大小寫。全0和全F均被認為是無效參數。
【使用指導】
SNMP引擎ID有兩個作用:
· 在NMS管理的所有設備中,每一台設備都需要用一個唯一的引擎ID來標識Agent,缺省情況下每個設備有一個缺省的引擎ID,網絡管理員需要確保管理域內不能有重複的引擎ID。
· SNMPv3版本的用戶名、密文密碼等都和引擎ID相關聯,如果更改了引擎ID,則原引擎ID下配置的用戶名、密碼失效。
通常情況下,使用設備的缺省引擎ID即可,用戶也可以根據網絡整體規劃給設備配置方便記憶的引擎ID,比如A棟一樓的一號設備可以將它的引擎ID設置為000Af0010001,二號設備可以配置為000Af0010002。
【舉例】
# 配置本設備的SNMP引擎ID為123456789A。
<Sysname> system-view
[Sysname] snmp-agent local-engineid 123456789A
【相關命令】
· display snmp-agent local-engineid
· snmp-agent usm-user
snmp-agent log命令用來開啟SNMP日誌功能。
undo snmp-agent log命令用來關閉SNMP日誌功能。
【命令】
snmp-agent log { all | authfail | get-operation | set-operation }
undo snmp-agent log { all | authfail | get-operation | set-operation }
【缺省情況】
SNMP日誌功能處於關閉狀態。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
all:表示SNMP Get操作、Set操作和SNMP認證失敗的日誌開關。
authfail:表示SNMP認證失敗的日誌開關。
get-operation:表示SNMP Get操作的日誌開關。
set-operation:表示SNMP Set操作的日誌開關。
【使用指導】
當打開SNMP Get或者Set操作的日誌開關,NMS對Agent執行指定的操作時,Agent會記錄與該操作相關信息並保存到設備的信息中心。當打開SNMP認證失敗的日誌開關時,如果Agent收到來自NMS的SNMP請求但是沒有通過認證,Agent會記錄相關信息並保存到設備的信息中心。保存的相關信息將通過信息中心的參數配置,最終決定SNMP日誌的輸出規則(即是否允許輸出以及輸出方向)。
【舉例】
# 打開SNMP Get操作的日誌開關。
<Sysname> system-view
[Sysname] snmp-agent log get-operation
# 打開SNMP Set操作的日誌開關。
<Sysname> system-view
[Sysname] snmp-agent log set-operation
# 打開SNMP認證失敗的日誌開關。
<Sysname> system-view
[Sysname] snmp-agent log authfail
snmp-agent mib-view命令用來創建或者更新MIB視圖。
undo snmp-agent mib-view命令用來刪除MIB視圖。
【命令】
snmp-agent mib-view { excluded | included } view-name oid-tree [ mask mask-value ]
undo snmp-agent mib-view view-name
【缺省情況】
存在四個MIB視圖,名稱均為ViewDefault:
· 視圖一包含MIB子樹iso;
· 視圖二不包含子樹snmpUsmMIB;
· 視圖三不包含子樹snmpVacmMIB;
· 視圖四不包含子樹snmpModules.18。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
excluded:表示當前視圖不包括該MIB子樹的任何節點(即禁止訪問MIB子樹的所有節點)。
included:表示當前視圖包括該MIB子樹的所有節點(即允許訪問MIB子樹的所有節點)。
view-name:視圖名,為1~32個字符的字符串,區分大小寫。
oid-tree:MIB子樹,用子樹根節點的OID(如“1.3.6.1.2.1.1”)或名稱(如“system”)表示,為1~255個字符的字符串,區分大小寫。OID是由一係列的整數組成,標明節點在MIB樹中的位置,它能唯一地標識一個MIB庫中的對象。
mask mask-value:對象子樹的掩碼,必須為偶數個十六進製數,偶數的取值範圍為1~32,不區分大小寫。
【使用指導】
MIB視圖是MIB的子集,由視圖名和MIB子樹來唯一確定一個MIB視圖。視圖名相同但包含的子樹不同,則認為是不同的視圖。
缺省視圖可以通過display snmp-agent mib-view命令來查看。如果使用缺省視圖限製NMS的訪問權限時,除了snmpUsmMIB、snmpVacmMIB、snmpModules.18子樹下的MIB對象,NMS可以訪問iso子樹下其它所有MIB對象。缺省視圖可以通過undo snmp-agent mib-view命令刪除,但是刪除以後,可能導致不能對Agent的所有MIB節點執行讀寫操作,除非另外手工配置視圖。
【舉例】
# 創建並更新MIB視圖信息,視圖名稱為mibtest,先創建一個包含mib-2子樹(OID為“1.3.6.1.2.1”)所有對象的MIB視圖,再更新為不包含“system”子樹(OID為“1.3.6.1.2.1.1”)所有對象的MIB視圖。
<Sysname> system-view
[Sysname] snmp-agent sys-info version v1
[Sysname] snmp-agent mib-view included mibtest 1.3.6.1.2.1
[Sysname] snmp-agent mib-view excluded mibtest system
[Sysname] snmp-agent community read public mib-view mibtest
以上配置成功後,當NMS使用SNMPv1版本,public團體名訪問設備時,不能查詢system子樹的所有對象(比如sysDescr和sysObjectID等節點),可以查詢mib-2子樹下的其它所有對象。
【相關命令】
· display snmp-agent mib-view
· snmp-agent group
snmp-agent packet max-size命令用來配置Agent能接收或發送的SNMP報文的最大長度。
undo snmp-agent packet max-size命令用來恢複缺省情況。
【命令】
snmp-agent packet max-size byte-count
undo snmp-agent packet max-size
【缺省情況】
Agent能處理的SNMP報文的最大長度為1500字節。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
byte-count:Agent能接收/發送的SNMP報文的最大長度,取值範圍為484~17940,單位為字節。
【使用指導】
配置報文的最大長度是為了防止網絡中存在不支持分片的主機,而導致超長數據被丟棄。通常情況下,使用缺省值即可。
【舉例】
# 配置Agent能接收/發送的SNMP報文的最大長度為1024字節。
<Sysname> system-view
[Sysname] snmp-agent packet max-size 1024
snmp-agent port命令用來配置SNMP服務的偵聽端口號。
undo snmp-agent port命令用來恢複缺省情況。
【命令】
snmp-agent port port-number
undo snmp-agent port
【缺省情況】
SNMP服務的偵聽端口號是161。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
port-number:SNMP服務的偵聽端口號,取值範圍為1~65535。
【使用指導】
當開啟SNMP Agent功能時,如果SNMP偵聽端口正被設備上的其它服務占用,會導致SNMP功能啟動失敗。此時,可使用本命令修改SNMP偵聽端口。如果指定的新端口仍被其它服務占用,則新端口配置失敗。建議修改前使用display udp verbose命令查看設備上UDP端口的使用情況。
本命令配置成功後,NMS需要使用新端口重新連接設備後,才能進行Get/Set等操作。
【舉例】
# 配置SNMP服務的偵聽端口號為5555。
<Sysname> system-view
[Sysname] snmp-agent port 5555
【相關命令】
· display udp verbose(三層技術-IP業務/IP性能優化)
snmp-agent remote命令用來配置遠端SNMP實體的引擎ID。
undo snmp-agent remote命令用來取消已配置的遠端SNMP實體的引擎ID。
【命令】
snmp-agent remote { ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] engineid engineid
undo snmp-agent remote { ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ]
【缺省情況】
未配置遠端SNMP實體的引擎ID。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
ipv4-address:遠端SNMP實體的IPv4地址。
ipv6 ipv6-address:遠端SNMP實體的IPv6地址。
vpn-instance vpn-instance-name:指定遠端SNMP實體所屬的VPN實例。vpn-instance-name表示MPLS L3VPN的VPN實例名稱,為1~31個字符的字符串,區分大小寫。如果未指定本參數,則表示遠端SNMP實體位於公網中。
engineid:引擎ID,必須為偶數個十六進製數,偶數的取值範圍為10~64,不區分大小寫。全0和全F均被認為是無效參數。
【使用指導】
當設備需要向NMS發送SNMPv3 Inform報文時,必須配置該命令,並將ip-address配置為NMS的IP地址,engineid配置為NMS的引擎ID。因為協議要求SNMPv3 Inform報文中必須攜帶一個權威引擎ID,NMS收到該報文後,會用自己的引擎ID和這個權威引擎ID比較,如果相同,才能接收。
用戶最多可以配置20個遠端SNMP實體引擎ID。
【舉例】
# 配置IP地址為10.1.1.1的SNMP實體的引擎ID為123456789A。
<Sysname> system-view
[Sysname] snmp-agent remote 10.1.1.1 engineid 123456789A
【相關命令】
· display snmp-agent remote
snmp-agent sys-info contact命令用來配置設備的維護聯係信息。
undo snmp-agent sys-info contact命令用來恢複缺省情況。
【命令】
snmp-agent sys-info contact sys-contact
undo snmp-agent sys-info contact
【缺省情況】
設備的維護聯係信息為New H3C Technologies Co., Ltd.
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
sys-contact:描述係統維護聯係信息,為1~255個字符的字符串,區分大小寫。
【使用指導】
如果設備發生故障,設備維護人員可以利用係統維護聯係信息,及時與設備生產廠商取得聯係。
【舉例】
# 配置設備的維護聯係信息為Dial System Operator # 27345。
<Sysname> system-view
[Sysname] snmp-agent sys-info contact Dial System Operator # 27345
【相關命令】
· display snmp-agent sys-info
snmp-agent sys-info location命令用來配置設備的物理位置信息。
undo snmp-agent sys-info location命令用來恢複缺省情況。
【命令】
snmp-agent sys-info location sys-location
undo snmp-agent sys-info location
【缺省情況】
物理位置信息為Hangzhou, China。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
sys-location:設備的物理位置信息,為1~255個字符的字符串,區分大小寫。
【使用指導】
為便於識別和管理設備,請使用該命令將設備所處的物理位置記錄在設備中。
【舉例】
# 配置設備的物理位置信息為Room524-row1-3。
<Sysname> system-view
[Sysname] snmp-agent sys-info location Room524-row1-3
【相關命令】
· display snmp-agent sys-info
snmp-agent sys-info version命令用來配置設備支持的SNMP版本。
undo snmp-agent sys-info version命令用來取消對指定SNMP版本的支持。
【命令】
snmp-agent sys-info version { all | { v1 | v2c | v3 } * }
undo snmp-agent sys-info version { all | { v1 | v2c | v3 } * }
【缺省情況】
啟用SNMPv3版本。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
all:支持SNMPv1、SNMPv2c和SNMPv3版本。
v1:支持SNMPv1版本。
v2c:支持SNMPv2c版本。
v3:支持SNMPv3版本。
【使用指導】
支持指定的SNMP版本後,設備才能收發該版本的SNMP報文。隻有NMS和Agent使用的SNMP版本相同,NMS才能和Agent建立連接。
SNMPv1和SNMPv2c報文中攜帶的團體名和數據均為明文形式,存在安全隱患,建議使用SNMPv3版本。
如果在IPv6環境下,要使用SNMP告警功能,請將SNMP版本號配置為v2c或者v3。
【舉例】
# 配置設備支持SNMPv3版本。
<Sysname> system-view
[Sysname] snmp-agent sys-info version v3
【相關命令】
· display snmp-agent sys-info
snmp-agent target-host命令用來配置接收SNMP告警信息的目的主機(能夠解析Trap和Inform報文的設備,通常為NMS)的屬性。
undo snmp-agent target-host命令用來取消目的主機配置。
【命令】
snmp-agent target-host inform address udp-domain { ipv4-target-host | ipv6 ipv6-target-host } [ source-ip source-ip-address | udp-port port-number | vpn-instance vpn-instance-name ] * params securityname security-string { v2c | v3 [ authentication | privacy ] }
snmp-agent target-host trap address udp-domain { ipv4-target-host | ipv6 ipv6-target-host } [ source-ip source-ip-address | udp-port port-number | vpn-instance vpn-instance-name ] * params securityname security-string [ v1 | v2c | v3 [ authentication | privacy ] ]
undo snmp-agent target-host { trap | inform } address udp-domain { ipv4-target-host | ipv6 ipv6-target-host } params securityname security-string [ vpn-instance vpn-instance-name ]
【缺省情況】
未配置告警主機。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
inform:配置接收Inform報文的目的主機的參數。
trap:配置接收Trap報文的目的主機的參數。
address:指定接收告警信息的目的主機的地址。
udp-domain:指定使用UDP協議來傳輸SNMP告警信息。
ipv4-target-host:接收告警信息的目的主機的IPv4地址或主機名,主機名為1~253個字符的字符串,不區分大小寫,字符串僅可包含字母、數字、“-”、“_”或“.”。若使用主機名配置,發送時將獲取主機名對應的IPv4地址,向對應的主機發送告警信息。
ipv6 ipv6-target-host:接收告警信息的目的主機的IPv6地址或主機名,主機名為1~253個字符的字符串,不區分大小寫,字符串僅可包含字母、數字、“-”、“_”或“.”。若使用主機名配置,發送時將獲取主機名對應的IPv6地址,向對應的主機發送告警信息。若使用IPv6地址配置,則不能為鏈路本地地址。
source-ip source-ip-address:配置發往指定NMS的告警信息中使用的源IP地址。不指定該參數時,使用snmp-agent { inform | trap } source命令中配置的源IP地址。
udp-port port-number:指定目的主機上用來接收告警信息的端口號,缺省值為162。
vpn-instance vpn-instance-name:指定目的主機所屬的VPN實例。vpn-instance-name表示MPLS L3VPN的VPN實例名稱,為1~31個字符的字符串,區分大小寫。如果未指定本參數,則表示目的主機位於公網中。
params securityname security-string:指定認證的參數,security-string為SNMPv1、SNMPv2c的團體名或SNMPv3的用戶名,為1~32個字符的字符串,區分大小寫。
v1:SNMPv1版本。
v2c:SNMPv2c版本。
v3:SNMPv3版本。
authentication:指明對報文進行認證但不加密。認證功能用來驗證報文的完整性或報文是否被篡改等,認證密碼在創建SNMPv3用戶時配置。
privacy:指明對報文進行認證和加密。加密是對報文的數據部分進行加密處理以防信息被竊取,認證密碼和加密密碼在創建SNMPv3用戶時配置。
【使用指導】
根據實際組網需要,用戶可以多次使用該命令配置不同的目的主機的屬性,使得設備可以向多個NMS發送告警信息。
不指定udp-port port-number參數時,使用的端口號為162。162是SNMP協議規定的NMS接收告警信息的端口,通常情況下(比如使用iMC或者MIB Browser作為NMS時),使用該缺省值即可。如果要將該參數修改為其它值,則必須和NMS上的配置保持一致。
不指定v1、v2c、v3版本參數時,使用的版本是v1。設備配置的SNMP版本必須和NMS上運行的SNMP版本一致,否則,NMS將收不到告警信息。
不指定authentication和privacy參數時,使用的是不認證不加密的安全級別。
【舉例】
# 允許向10.1.1.1發送SNMPv3 Trap報文,用戶名為public。
<Sysname> system-view
[Sysname] snmp-agent trap enable standard
[Sysname] snmp-agent target-host trap address udp-domain 10.1.1.1 params securityname public v3
【相關命令】
· snmp-agent { inform | trap } source
· snmp-agent trap enable
· snmp-agent trap life
snmp-agent trap enable命令用來開啟SNMP告警功能。
undo snmp-agent trap enable命令用來關閉SNMP告警功能。
【命令】
snmp-agent trap enable [ configuration | protocol | standard [ authentication | coldstart | linkdown | linkup | warmstart ] * | system ]
undo snmp-agent trap enable [ configuration | protocol | standard [ authentication | coldstart | linkdown | linkup | warmstart ] * | system ]
【缺省情況】
SNMP配置告警、標準告警和係統告警功能處於開啟狀態,其他各模塊告警功能是否開啟請參見各模塊手冊。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
configuration:SNMP配置告警信息。配置該參數後,係統會以10分鍾為周期,查看周期內當前運行配置或者啟動配置是否被修改,以及是否有用戶對啟動配置文件進行修改,並將最後一次修改形成一條告警輸出。
protocol:開啟指定協議模塊的SNMP告警功能。用戶可通過執行snmp-agent trap enable ?命令來獲取該參數的取值,有關此參數的詳細介紹,請參見各模塊的命令手冊。
standard:SNMP標準告警信息。包括以下五種:
· authentication:NMS訪問設備時認證失敗,輸出SNMP認證失敗的告警信息。
· coldstart:當設備重新啟動時,輸出設備冷啟動告警信息。
· linkdown:當接口的鏈路down時,輸出linkDown告警信息。
· linkup:當接口的鏈路up時,輸出linkUp告警信息。
· warmstart:當SNMP模塊重新啟動時,輸出熱啟動告警信息。
system:SNMP係統告警信息。配置該參數後,如果係統時間被修改、係統重啟或係統主用啟動軟件包不可用,均會生成告警信息。
【使用指導】
對於協議模塊的SNMP告警功能,需要先使能相關協議,本命令才能配置成功。
如果在IPv6環境下,要使用SNMP告警功能,請將SNMP版本號配置為v2c或者v3。
開啟指定協議模塊的告警功能後,該模塊會生成告警信息,用於報告該模塊的重要事件。生成的告警信息將發送到設備的SNMP模塊,通過設置SNMP中告警信息的發送參數,來決定告警信息輸出的相關屬性。
不指定可選參數時,表示在全局下開啟/關閉所有可選模塊的告警功能。
【舉例】
# 開啟SNMP認證失敗的告警功能。
<Sysname> system-view
[Sysname] snmp-agent trap enable standard authentication
【相關命令】
· snmp-agent target-host
· snmp-agent sys-info version
snmp-agent trap if-mib link extended命令用來對標準格式的linkUp或linkDown告警信息進行私有擴展。
undo snmp-agent trap if-mib link extended命令用來恢複缺省情況。
【命令】
snmp-agent trap if-mib link extended
undo snmp-agent trap if-mib link extended
【缺省情況】
係統發送的linkUp/linkDown告警信息的格式為標準格式,不對其進行私有擴展。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【使用指導】
擴展格式的linkUp/linkDown告警由標準格式的linkUp/linkDown告警後增加接口名稱、接口類型、接口描述等信息構成,使用擴展格式的告警信息有助於網絡管理員快速定位問題。
需要注意的是,配置該命令後,設備發送的linkUp/linkDown告警信息為擴展格式的信息。如果NMS不支持擴展格式,可能會無法解析信息。
【舉例】
# 對標準格式的linkUp/linkDown告警信息進行私有擴展。
<Sysname> system-view
[Sysname] snmp-agent trap if-mib link extended
snmp-agent trap life命令用來配置告警信息的保存時間。
undo snmp-agent trap life命令用來恢複缺省情況。
【命令】
snmp-agent trap life seconds
undo snmp-agent trap life
【缺省情況】
SNMP告警信息的保存時間為120秒。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
seconds:超時時間,取值範圍為1~2592000,單位為秒。
【使用指導】
SNMP模塊使用隊列來發送告警信息,告警信息進入消息發送隊列時會啟動一個存活定時器。如果直到定時器超時(即達到snmp-agent trap life命令配置的時間),告警信息還沒有被發送出去,係統就會將該告警信息從發送隊列中刪除。
【舉例】
# 配置告警信息的保存時間為60秒。
<Sysname> system-view
[Sysname] snmp-agent trap life 60
【相關命令】
· snmp-agent trap enable
· snmp-agent target-host
· snmp-agent trap queue-size
snmp-agent trap log命令用來開啟SNMP告警日誌功能。
undo snmp-agent trap log命令用來關閉SNMP告警日誌功能。
【命令】
snmp-agent trap log
undo snmp-agent trap log
【缺省情況】
SNMP告警日誌功能處於關閉狀態。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【使用指導】
打開SNMP告警日誌開關,Agent向NMS發送告警時,Agent會向信息中心模塊發送一條日誌來記錄該告警相關的信息。通過配置信息中心的參數,最終決定SNMP告警日誌的輸出規則(即是否允許輸出以及輸出方向)。
【舉例】
# 開啟SNMP告警日誌功能。
<Sysname> system-view
[Sysname] snmp-agent trap log
snmp-agent trap queue-size命令用來配置告警信息發送隊列的長度。
undo snmp-agent trap queue-size命令用來恢複缺省情況。
【命令】
snmp-agent trap queue-size size
undo snmp-agent trap queue-size
【缺省情況】
告警信息的發送隊列最多可以存儲100條告警信息。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
size:消息隊列中可以存儲的告警信息的數目,取值範圍1~1000。
【使用指導】
告警信息產生後,會進入告警信息消息隊列進行發送,告警信息消息隊列的長度決定了隊列最多可以存儲的告警信息的數目。
如果在告警信息發送隊列滿時係統又收到了新的告警信息,則係統會丟棄新收到的告警信息。
如果用戶修改隊列長度,導致隊列中告警信息數量超過告警信息發送隊列的長度,係統會丟棄較老的告警信息。
【舉例】
# 配置發送告警信息的消息隊列最多可以存儲200條告警信息。
<Sysname> system-view
[Sysname] snmp-agent trap queue-size 200
【相關命令】
· snmp-agent trap enable
· snmp-agent target-host
· snmp-agent trap life
snmp-agent usm-user { v1 | v2c }命令用來創建SNMPv1或SNMPv2c用戶。
undo snmp-agent usm-user { v1 | v2c }命令用來刪除SNMPv1或SNMPv2c用戶。
【命令】
snmp-agent usm-user { v1 | v2c } user-name group-name [ acl { ipv4-acl-number | name ipv4-acl-name } | acl ipv6 { ipv6-acl-number | name ipv6-acl-name } ] *
undo snmp-agent usm-user { v1 | v2c } user-name
【缺省情況】
不存在SNMP用戶。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
v1:表示配置的用戶名適用於SNMPv1組網環境。
v2c:表示配置的用戶名適用於SNMPv2c組網環境。
user-name:用戶名,為1~32個字符的字符串,區分大小寫。
group-name:該用戶對應組的名稱,取值範圍為1~32個字符的字符串,區分大小寫。創建用戶時,組可以不存在。但要使創建的用戶生效,必須先創建組。
acl:將用戶名與基本/高級IPv4 ACL綁定。
ipv4-acl-number:表示基本或高級IPv4 ACL的編號,其中基本IPv4 ACL的取值範圍為2000~2999,高級IPv4 ACL的取值範圍為3000~3999。
name ipv4-acl-name:表示基本或高級IPv4 ACL的名稱,為1~63個字符的字符串,不區分大小寫。
acl ipv6:將用戶名與基本/高級IPv6 ACL綁定。
ipv6-acl-number:表示基本或高級IPv6 ACL的編號,其中基本IPv6 ACL的取值範圍為2000~2999,高級IPv6 ACL的取值範圍為3000~3999。
name ipv6-acl-name:表示基本或高級IPv6 ACL的名稱,為1~63個字符的字符串,不區分大小寫。
【使用指導】
為了安全起見,隻有具有network-admin、context-admin或者level-15用戶角色的用戶登錄設備後才能執行本命令。其它角色的用戶,即使授權了SNMP特性或本命令的操作權限,也不能執行本命令。
SNMPv1和SNMPv2c組網應用中NMS和Agent之間使用團體名來認證,SNMPv3組網應用中使用用戶名來認證。
用戶有兩種方式創建團體:
· 使用snmp-agent community命令來創建團體。
· 配置snmp-agent usm-user { v1 | v2c }和snmp-agent group { v1 | v2c }命令成功創建SNMPv1或SNMPv2c用戶以及相應的組後,係統會以用戶名為團體名自動創建一個團體。該團體的訪問權限可通過snmp-agent community或snmp-agent group { v1 | v2c }命令來修改,最後一次執行的命令生效。
display snmp-agent community會顯示這兩種方式創建的、以明文方式配置並以明文方式保存到配置文件中的團體的信息。
創建SNMP組和用戶的時候都可以使用acl參數限製非法NMS訪問設備,隻有兩個ACL均允許的NMS才能訪問設備。在創建組或用戶,引用ACL時,需要注意的是:
· 若引用的ACL不存在,或者引用的ACL中沒有配置規則,則允許所有NMS訪問設備。
· 在引用的ACL中,若某規則指定了vpn-instance參數,則表示該規則僅對VPN報文有效;若規則未指定vpn-instance參數,則表示該規則僅對公網報文有效。
· 當引用的ACL下配置了規則時,則隻有規則中permit的NMS才能訪問設備,其他NMS不允許訪問設備。
關於ACL的詳細描述和介紹請參見“ACL和QoS配置指導”中的“ACL”。
【舉例】
# 在SNMP組readCom裏創建SNMPv2c用戶userv2c。
<Sysname> system-view
[Sysname] snmp-agent sys-info version v2c
[Sysname] snmp-agent group v2c readCom
[Sysname] snmp-agent usm-user v2c userv2c readCom
如果NMS需要訪問Agent,則應將NMS的版本號指定為SNMPv2c,Read community選項填寫為userv2c。
# 在SNMP組readCom裏創建SNMPv2c用戶userv2c,並且隻允許IP地址為1.1.1.1的NMS使用該用戶名訪問Agent,禁止其它NMS使用該用戶名訪問。
<Sysname> system-view
[Sysname] acl basic 2001
[Sysname-acl-ipv4-basic-2001] rule permit source 1.1.1.1 0.0.0.0
[Sysname-acl-ipv4-basic-2001] rule deny source any
[Sysname-acl-ipv4-basic-2001] quit
[Sysname] snmp-agent sys-info version v2c
[Sysname] snmp-agent group v2c readCom
[Sysname] snmp-agent usm-user v2c userv2c readCom acl 2001
# 在SNMP組readCom裏創建SNMPv2c用戶userv2c,並且隻允許IP地址為1.1.1.2的NMS使用該用戶名訪問Agent,禁止其它NMS使用該用戶名訪問。
[Sysname] acl basic name testacl
[Sysname-acl-ipv4-basic-testacl] rule permit source 1.1.1.2 0.0.0.0
[Sysname-acl-ipv4-basic-testacl] rule deny source any
[Sysname-acl-ipv4-basic-testacl] quit
[Sysname] snmp-agent sys-info version v2c
[Sysname] snmp-agent group v2c readCom
[Sysname] snmp-agent usm-user v2c userv2c readCom acl name testacl
【相關命令】
· snmp-agent group
· snmp-agent community
· display snmp-agent community
snmp-agent usm-user v3命令用來創建SNMPv3用戶。
undo snmp-agent usm-user v3命令用來刪除SNMPv3用戶。
【命令】
· VACM方式:
snmp-agent usm-user v3 user-name group-name [ remote { ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] ] [ { cipher | simple } authentication-mode { md5 | sha } auth-password [ privacy-mode { 3des | aes128 | des56 } priv-password ] ] [ acl { ipv4-acl-number | name ipv4-acl-name } | acl ipv6 { ipv6-acl-number | name ipv6-acl-name } ] *
undo snmp-agent usm-user v3 user-name { local | engineid engineid-string | remote { ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] }
· RBAC方式:
snmp-agent usm-user v3 user-name user-role role-name [ remote { ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] ] [ { cipher | simple } authentication-mode { md5 | sha } auth-password [ privacy-mode { 3des | aes128 | des56 } priv-password ] ] [ acl { ipv4-acl-number | name ipv4-acl-name } | acl ipv6 { ipv6-acl-number | name ipv6-acl-name } ] *
undo snmp-agent usm-user v3 user-name { local | engineid engineid-string | remote { ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] }
【缺省情況】
不存在SNMPv3用戶。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
user-name:用戶名,為1~32個字符的字符串,區分大小寫。
group-name:該用戶對應組的名稱,取值範圍為1~32個字符的字符串,區分大小寫。創建用戶時,組可以不存在。但要使創建的用戶生效,必須先創建組。
user-role role-name:該用戶對應的角色名稱,role-name為1~63個字符的字符串,區分大小寫。
remote { ipv4-address | ipv6 ipv6-address }:接收Inform報文的目的主機的IPv4地址或者IPv6地址,通常為NMS的IPv4地址或者IPv6地址。當設備需要向目的主機發送SNMPv3 Inform報文時,該參數必須配置,還需要使用snmp-agent remote命令將目的主機的IPv4地址或者IPv6地址和引擎ID綁定。
vpn-instance vpn-instance-name:目的主機所屬的VPN實例。vpn-instance-name表示MPLS L3VPN的VPN實例名稱,為1~31個字符的字符串,區分大小寫。如果未指定本參數,則表示目的主機位於公網中。
cipher:以密文方式配置認證密碼和加密密碼。該密碼將轉換成對應的密文摘要存儲在設備中。
simple:以明文方式配置認證密碼和加密密碼。該密碼將轉換成對應的密文摘要存儲在設備中。
authentication-mode:指定認證算法。不指定該參數時,表示不認證。取值為:
· md5:采用HMAC-MD5算法。HMAC-MD5的相關內容請參見“安全配置指導”中的“IPsec”。
· sha:采用HMAC-SHA1算法。HMAC-SHA1的相關內容請參見“安全配置指導”中的“IPsec”。
auth-password:表示認證密碼,區分大小寫,具體要求如下:
· 以明文方式配置時,auth-password表示明文認證密碼。認證密碼的長度範圍是1~64個字符。
· 以密文方式配置時,auth-password表示密文認證密碼,該密碼可通過snmp-agent calculate-password命令計算獲得。
privacy-mode:指定加密算法。不指定該參數時,表示不加密。取值為:
· 3des:采用3DES(Triple Data Encryption Standard,三重數據加密標準)算法,密鑰長度為168比特。
· aes128:采用AES(Advanced Encryption Standard,高級加密標準)算法,密鑰長度為128比特。
· des56:采用DES(Data Encryption Standard,數據加密標準)算法,密鑰長度為56比特。
priv-password:表示加密密碼,區分大小寫,具體要求如下:
· 以明文方式配置時,priv-password表示明文加密密碼。密碼的長度範圍是1~64個字符。
· 以密文方式配置時,priv-password表示密文加密密碼,該密碼可通過snmp-agent calculate-password命令計算獲得。
acl:將用戶名與基本/高級IPv4 ACL綁定。
ipv4-acl-number:表示基本或高級IPv4 ACL的編號,其中基本IPv4 ACL的取值範圍為2000~2999,高級IPv4 ACL的取值範圍為3000~3999。
name ipv4-acl-name:表示基本或高級IPv4 ACL的名稱,為1~63個字符的字符串,不區分大小寫。
acl ipv6:將用戶名與基本/高級IPv6 ACL綁定。
ipv6-acl-number:表示基本或高級IPv6 ACL的編號,其中基本IPv6 ACL的取值範圍為2000~2999,高級IPv6 ACL的取值範圍為3000~3999。
name ipv6-acl-name:表示基本或高級IPv6 ACL的名稱,為1~63個字符的字符串,不區分大小寫。
local:表示本地實體引擎ID。缺省情況下,創建的SNMPv3用戶與本地SNMP實體引擎相關聯。
engineid engineid-string:指定與該用戶相關聯的引擎ID字符串,必須為偶數個十六進製數,偶數的取值範圍為10~64,不區分大小寫。全0和全F均被認為是無效參數。由於SNMPv3版本的用戶名、密文密碼等都和引擎ID相關聯,如果更改了引擎ID,則原引擎ID下配置的用戶名、密碼失效,更改後可以使用該參數將engineid-string指定為創建該用戶時的本地引擎ID來刪除失效用戶名。
【使用指導】
為了安全起見,隻有具有network-admin、context-admin或者level-15用戶角色的用戶登錄設備後才能執行本命令。其它角色的用戶,即使授權了SNMP特性或本命令的操作權限,也不能執行本命令。
創建SNMPv3用戶時,可以通過兩種配置方式來控製用戶訪問的權限:
· 通過VACM方式配置的SNMP用戶依附於SNMP組,創建用戶時,請先創建組。否則,用戶能夠創建成功但是不生效。一個組可以包含多個用戶。組定義了用戶能夠訪問的SNMP對象(通過MIB視圖來限定)以及是否進行認證和加密等,而認證和加密的具體算法和密碼則是在創建用戶時定義。
· 通過RBAC方式配置的SNMP用戶依附於用戶角色,創建用戶時,通過user-role role-name參數配置用戶的角色。用戶角色定義了SNMP用戶能夠訪問的SNMP對象以及操作類型(通過rule規則來限定)。使用RBAC方式創建SNMP v3用戶後,還可以使用snmp-agent usm-user v3 user-role命令為該用戶綁定更多的用戶角色,最多可綁定64個用戶角色。
推薦使用RBAC配置方式,安全性更高。
通過VACM和RBAC方式配置SNMP用戶時,需要注意:
· 通過VACM方式配置SNMP用戶時,當用戶名相同,多次執行本命令,最後一次執行的命令生效。
· 通過RBAC方式配置SNMP用戶時,可以多次使用本命令為已創建的SNMPv3用戶添加角色,若未配置其他參數,則其他配置不變,隻添加角色;若同時配置其他參數(如認證方式),則為用戶添加角色,同時修改其他配置。
創建SNMP組和用戶的時候都可以使用acl參數限製非法NMS訪問設備,隻有兩個ACL均允許的NMS才能訪問設備。在創建組或用戶,引用ACL時,需要注意的是:
· 若引用的ACL不存在,或者引用的ACL中沒有配置規則,則允許所有NMS訪問設備。
· 在引用的ACL中,若某規則指定了vpn-instance參數,則表示該規則僅對VPN報文有效;若規則未指定vpn-instance參數,則表示該規則僅對公網報文有效。
· 當引用的ACL下配置了規則時,則隻有規則中permit的NMS才能訪問設備,其他NMS不允許訪問設備。
關於ACL的詳細描述和介紹請參見“ACL和QoS配置指導”中的“ACL”。
【舉例】
# VACM方式:為v3組testGroup加入一個用戶testUser,安全級別為隻認證不加密,認證算法為HMAC-SHA1,認證密碼為明文123456TESTplat&!。
<Sysname> system-view
[Sysname] snmp-agent group v3 testGroup authentication
[Sysname] snmp-agent usm-user v3 testUser testGroup simple authentication-mode sha 123456TESTplat&!
在NMS上配置:版本號為SNMPv3,用戶名為testUser,認證算法為HMAC-SHA1,認證密碼為123456TESTplat&!,建立連接,就可以對設備上缺省視圖內的MIB對象進行訪問了。
# VACM方式:為v3組testGroup加入一個用戶testUser,安全級別為認證和加密,認證算法為HMAC-SHA1、加密算法為AES,認證密碼為明文123456TESTauth&!,加密密碼為明文123456TESTencr&!。
<Sysname> system-view
[Sysname] snmp-agent group v3 testGroup privacy
[Sysname] snmp-agent usm-user v3 testUser testGroup simple authentication-mode sha 123456TESTauth&! privacy-mode aes128 123456TESTencr&!
在NMS上配置:版本號為SNMPv3,用戶名為testUser,認證算法為HMAC-SHA1,認證密碼為123456TESTauth&!,加密算法為AES,加密密碼為123456TESTencr&!,建立連接,就可以對設備上缺省視圖內的MIB對象進行訪問了。
# VACM方式:為v3組testGroup加入一個與IP為10.1.1.1的遠端SNMP實體引擎相關聯的SNMPv3用戶remoteUser,安全級別為認證和加密,認證算法為HMAC-SHA1、加密算法為AES,認證密碼為明文123456TESTauth&!,加密密碼為明文123456TESTencr&!。
<Sysname> system-view
[Sysname] snmp-agent remote 10.1.1.1 engineid 123456789A
[Sysname] snmp-agent group v3 testGroup privacy
[Sysname] snmp-agent usm-user v3 remoteUser testGroup remote 10.1.1.1 simple authentication-mode sha 123456TESTauth&! privacy-mode aes128 123456TESTencr&!
# RBAC方式:創建一個新的SNMPv3用戶testUser,角色為network-operator,安全級別為隻認證不加密,認證算法為HMAC-SHA1,認證密碼為明文123456TESTplat&!。
<Sysname> system-view
[Sysname] snmp-agent usm-user v3 testUser user-role network-operator simple authentication-mode sha 123456TESTplat&!
在NMS上配置:版本號為SNMPv3,用戶名為testUser,認證算法為HMAC-SHA1,認證密碼為123456TESTplat&!,建立連接,就可以對設備上所有MIB對象進行隻讀操作。
【相關命令】
· display snmp-agent usm-user
· snmp-agent group
· snmp-agent calculate-password
· snmp-agent remote
· snmp-agent usm-user v3 user-role
snmp-agent usm-user v3 user-role命令用來為通過RBAC方式創建的SNMPv3用戶添加角色。
undo snmp-agent usm-user user-role命令用來為SNMPv3用戶刪除角色。
【命令】
snmp-agent usm-user v3 user-name user-role role-name
undo snmp-agent usm-user v3 user-name user-role role-name
【缺省情況】
使用創建SNMPv3用戶時指定的角色。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
user-name:用戶名,為1~32個字符的字符串,區分大小寫。
user-role role-name:該用戶對應的角色名稱,role-name為1~63個字符的字符串,區分大小寫。
【使用指導】
一個RBAC方式配置的SNMPv3用戶可配置多個用戶角色。用戶可以通過本命令來為通過RBAC方式創建的SNMPv3用戶添加與刪除角色,最多可以配置64個有效的用戶角色且至少保留一個用戶角色。
【舉例】
# 已創建SNMPv3用戶testUser擁有network-operator用戶角色,現為用戶testUser添加network-admin用戶角色。
<Sysname> system-view
[Sysname] snmp-agent usm-user v3 testUser user-role network-admin
【相關命令】
· snmp-agent usm-user v3
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!