阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

关于SNMP的MIB文件的语法简述

581次阅读
没有评论

共计 6290 个字符,预计需要花费 16 分钟才能阅读完成。

MIB file的开始和结束

所有的 MIB file 的都以 DEFINITIONS ::= BEGIN 关键字开始,以 END 结束。我们所有添加的节点均应在此之间。

XXX-TESTMIB DEFINITIONS ::= BEGIN

……

……

END

模块引用区域

MIB 开始关键字后,即是模块引用区域,利用 IMPORTS 标识,所有的模块引用及群组的引用均使用 FROM 关键字说明其出处, 引用使用分号(;)结束。

注:分号,英文全角分号。

在一个 MIB file 中,所有引用到的数据类型均应有引用。

如:

IMPORTS

enterprises

            FROM RFC1155-SMI

        Integer32

            FROM SNMPv2-SMI           

        DisplayString

            FROM SNMPv2-TC;

MIB核心部分(对象标识,标量节点,表格对象的定义)

对象标识

对象标识用关键字 OBJECT IDENTIFIER 声明,它的主要功能是用来将一类功能的对象结合起来。展开或折叠此对象标识即可展开或折叠此类功能的所有对象。

在 ASN.1 中,对象标识符类型描述对象的抽象信息,MIB树中的每一个标号是用对象标识符描述的。

例如:

  xxx OBJECT IDENTIFIER ::= {enterprises 22566}

   xxx 是一个子树支,它定义在 enterprises 树支下,“22566”是子树 xxx 在父树 enterprises 下的一个唯一对象标识符。

其编译后的视图为:

关于 SNMP 的 MIB 文件的语法简述

标量节点

在每一个树支下,可以定义被管理资源的管理对象,其中一类是标量节点(直观地看象树叶的节点)。利用 OBJECT-TYPE 定义。其定义的句法如下:

objectname OBJECT-TYPE

     SYNTAX (syntax)

     MAX-ACCESS (access)

     STATUS (status)

     DESCRIPTION (description)

     ::= {( parent) (number)

关键字

说明

备注

objectname

被管理对象的名字

必须以小写字母开头

OBJECT-TYPE

每一个叶子对象所必须的关键字

 

syntax

被管理对象类型的关键字

Counter(计数)

Gauge(标准)

DisplayString(显示字符串)

Interger(整数)

TimeTicks(时间戳)

NetworkAddress(网络地址)

IpAddress(Ipv4 地址)

access

该节点支持的访问方式

read-only(只读)

read-write(读写)

read-create(读和创建)

no-accessible(不可访问)

status

该节点的状态

current (当前的)

deprecated (反对的)

obsolete(废弃的)

description

对被管理对象的功能、特征等进行描述的关键字

 

例如:

Xxxx OBJECT-TYPE

SYNTAX DisplayString

MAX-ACCESS read-only

STATUS current

DESCRIPTION

”                 

::= {xxxx 1}

表类型

表类型是一个特殊类型的声明,表内声明的对象称为列对象,表对象可以看作是一些标量对象的集合。利用 SEQUENCESEQUENCE OF定义表格和表格中的行,通常来说,表格对象的名字后面加有后缀 Table,行对象的名字后面加有后缀 Entry。

其声明如下:

     tablename OBJECT-TYPE

SYNTAX  SEQUENCE OF Entrytype           

MAX-ACCESS  not-accessible

STATUS  current

DESCRIPTION (description)

:: ={(parent) (number)}

 

      entryname OBJECT-TYPE

SYNTAX  Entrytype

MAX-ACCESS not-accessible           

STATUS  current

DESCRIPTION  description

    INDEX {index list}

                   :: ={(tablename) 1}

     

     (Entrytype)  :: =

SEQUENCE {

            (column1)   (column1type),

            (column2)   (column1type),

              (columnN)    (columnNtype) }

 

关键字

说明

备注

tablename

表格名 

xxxxTable首字母小写

Entrytype

表对象名

XxxxEntry首字母大写

not-accessible

访问方式

此处必须是 not-accessible

entryname

行名

XxxxEntry 名相同,首字母小写xxxxEntry

description

描述信息

 

 

源码如下:

XXX-TEST-MIB DEFINITIONS ::= BEGIN

IMPORTS

enterprises

            FROM RFC1155-SMI

        Integer32

            FROM SNMPv2-SMI           

        DisplayString

            FROM SNMPv2-TC;

 

  xxx OBJECT IDENTIFIER ::= {enterprises 22566}

 

  zkClassInfoTable OBJECT IDENTIFIER ::= {xxx 1} 

  zkClassInfoTable2 OBJECT IDENTIFIER ::= {xxx 2} 

 

zkClassInfoTable OBJECT-TYPE 

SYNTAX  SEQUENCE OF ZkClassInfoEntry 

  MAX-ACCESS not-accessible

  STATUS  current

  DESCRIPTION 

  “

  This is test table.

  “

        ::= {xxx 1}

 

  zkClassInfoEntry OBJECT-TYPE 

  SYNTAX    ZkClassInfoEntry 

  MAX-ACCESS  not-accessible   

  STATUS  current

  DESCRIPTION

  “

  This is teat entry.

  ”     

  INDEX  {zkClassInfoIndex}            

  ::= {zkClassInfoTable 1}   

 

ZkClassInfoEntry ::= SEQUENCE {

zkClassInfoIndex  Integer32,

    zkClassInfoSex Integer32,

    zkClassInfoAge Integer32,

    zkCLassInfoName  DisplayString,

    zkClassInfoAddress  DisplayString

}

 

zkClassInfoIndex OBJECT-TYPE 

SYNTAX  Integer32

MAX-ACCESS read-write

STATUS current

DESCRIPTION 

::= {zkClassInfoEntry 1}

 

zkClassInfoSex OBJECT-TYPE

SYNTAX  Integer32  {

             man(1),

             woman(2)

}

MAX-ACCESS read-write

STATUS current

DESCRIPTION 

::= {zkClassInfoEntry 2}   

 

zkClassInfoAge OBJECT-TYPE 

SYNTAX  Integer32

MAX-ACCESS read-write

STATUS current

DESCRIPTION 

::= {zkClassInfoEntry 3} 

 

zkCLassInfoName OBJECT-TYPE 

SYNTAX  DisplayString

MAX-ACCESS read-write

STATUS current

DESCRIPTION 

::= {zkClassInfoEntry 4}

 

zkClassInfoAddress OBJECT-TYPE 

SYNTAX  DisplayString

MAX-ACCESS read-write

STATUS current

DESCRIPTION 

::= {zkClassInfoEntry 5}   

 

zkClassInfoTable2 OBJECT-TYPE 

SYNTAX  SEQUENCE OF ZkClassInfoEntry2 

  MAX-ACCESS not-accessible

  STATUS  current

  DESCRIPTION 

  “

  This is test table.

  “

        ::= {xxx 2}

 

  zkClassInfoEntry2 OBJECT-TYPE 

  SYNTAX    ZkClassInfoEntry2 

  MAX-ACCESS  not-accessible   

  STATUS  current

  DESCRIPTION

  “

  This is teat entry.

  ”     

  INDEX  {zkClassInfoIndex}            

  ::= {zkClassInfoTable2 1}   

 

ZkClassInfoEntry2 ::= SEQUENCE {

    zkClassInfoSex2 Integer32,

    zkClassInfoAge2 Integer32,

    zkCLassInfoName2  DisplayString,

    zkClassInfoAddress2  DisplayString

}

 

zkClassInfoSex2 OBJECT-TYPE 

SYNTAX  Integer32

MAX-ACCESS read-write

STATUS current

DESCRIPTION 

::= {zkClassInfoEntry2 1}

END

 

XXX-TEST_MIB DEFINITIONS ::= BEGIN

IMPORTS

enterprises

            FROM RFC1155-SMI

        Integer32

            FROM SNMPv2-SMI           

        DisplayString

            FROM SNMPv2-TC;

 

  xxx OBJECT IDENTIFIER ::= {enterprises 40256}

 

  zkClassInfoTable OBJECT IDENTIFIER ::= {xxx 1} 

  zkClassInfoTable2 OBJECT IDENTIFIER ::= {xxx 2} 

 

zkClassInfoTable OBJECT-TYPE 

SYNTAX  SEQUENCE OF ZkClassInfoEntry 

  MAX-ACCESS not-accessible

  STATUS  current

  DESCRIPTION 

  “

  This is test table.

  “

        ::= {xxx 1}

 

  zkClassInfoEntry OBJECT-TYPE 

  SYNTAX    ZkClassInfoEntry 

  MAX-ACCESS  not-accessible   

  STATUS  current

  DESCRIPTION

  “

  This is teat entry.

  ”     

  INDEX  {zkClassInfoIndex}            

  ::= {zkClassInfoTable 1}   

 

ZkClassInfoEntry ::= SEQUENCE {

zkClassInfoIndex  Integer32,

    zkClassInfoSex Integer32,

    zkClassInfoAge Integer32,

    zkCLassInfoName  DisplayString,

    zkClassInfoAddress  DisplayString

}

 

zkClassInfoIndex OBJECT-TYPE 

SYNTAX  Integer32

MAX-ACCESS read-write

STATUS current

DESCRIPTION 

::= {zkClassInfoEntry 1}

 

zkClassInfoSex OBJECT-TYPE

SYNTAX  Integer32  {

             man(1),

             woman(2)

}

MAX-ACCESS read-write

STATUS current

DESCRIPTION 

::= {zkClassInfoEntry 2}   

 

zkClassInfoAge OBJECT-TYPE 

SYNTAX  Integer32

MAX-ACCESS read-write

STATUS current

DESCRIPTION 

::= {zkClassInfoEntry 3} 

 

zkCLassInfoName OBJECT-TYPE 

SYNTAX  DisplayString

MAX-ACCESS read-write

STATUS current

DESCRIPTION 

::= {zkClassInfoEntry 4}

 

zkClassInfoAddress OBJECT-TYPE 

SYNTAX  DisplayString

MAX-ACCESS read-write

STATUS current

DESCRIPTION 

::= {zkClassInfoEntry 5}   

 

zkClassInfoTable2 OBJECT-TYPE 

SYNTAX  SEQUENCE OF ZkClassInfoEntry2 

  MAX-ACCESS not-accessible

  STATUS  current

  DESCRIPTION 

  “

  This is test table.

  “

        ::= {xxx 2}

 

  zkClassInfoEntry2 OBJECT-TYPE 

  SYNTAX    ZkClassInfoEntry2 

  MAX-ACCESS  not-accessible   

  STATUS  current

  DESCRIPTION

  “

  This is teat entry.

  ”     

  INDEX  {zkClassInfoIndex}            

  ::= {zkClassInfoTable2 1}   

 

ZkClassInfoEntry2 ::= SEQUENCE {

    zkClassInfoSex2 Integer32,

    zkClassInfoAge2 Integer32,

    zkCLassInfoName2  DisplayString,

    zkClassInfoAddress2  DisplayString

}

 

zkClassInfoSex2 OBJECT-TYPE 

SYNTAX  Integer32

MAX-ACCESS read-write

STATUS current

DESCRIPTION 

::= {zkClassInfoEntry2 1}

END

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-03/141999.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计6290字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19356
评论数
4
阅读量
8278936
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

星哥带你玩飞牛 NAS-7:手把手教你免费内网穿透 -Cloudflare tunnel 前言 大家好,我是星...
星哥带你玩飞牛NAS-2:飞牛配置RAID磁盘阵列

星哥带你玩飞牛NAS-2:飞牛配置RAID磁盘阵列

星哥带你玩飞牛 NAS-2:飞牛配置 RAID 磁盘阵列 前言 大家好,我是星哥之前星哥写了《星哥带你玩飞牛 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
240 元左右!五盘位 NAS主机,7 代U硬解4K稳如狗,拓展性碾压同价位

240 元左右!五盘位 NAS主机,7 代U硬解4K稳如狗,拓展性碾压同价位

  240 元左右!五盘位 NAS 主机,7 代 U 硬解 4K 稳如狗,拓展性碾压同价位 在 NA...
星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛 NAS-12:开源笔记的进化之路,效率玩家的新选择 前言 如何高效管理知识与笔记,已经成为技术...
300元就能买到的”小钢炮”?惠普7L四盘位小主机解析

300元就能买到的”小钢炮”?惠普7L四盘位小主机解析

  300 元就能买到的 ” 小钢炮 ”?惠普 7L 四盘位小主机解析 最近...
告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

  告别 Notion 焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁” 引言 在数字笔记工...
三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

  三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Andr...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face 免费服务器 +Docker 快速部署 HertzBeat 监控平台 ...
云服务器部署OpenClaw:轻量应用服务器+钉钉和QQ机器人

云服务器部署OpenClaw:轻量应用服务器+钉钉和QQ机器人

  云服务器部署 OpenClaw:轻量应用服务器 + 钉钉和 QQ 机器人 一、前言 最近开源圈爆...
每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年 0.99 刀,拿下你的第一个顶级域名,详细注册使用 前言 作为长期折腾云服务、域名建站的老玩家,星哥一直...
欧洲无限速云盘免费10GB永久存储 + WebDAV部署+图床搭建,多平台联动一步到位!

欧洲无限速云盘免费10GB永久存储 + WebDAV部署+图床搭建,多平台联动一步到位!

欧洲无限速云盘免费 10GB 永久存储 + WebDAV 部署 + 图床搭建,多平台联动一步到位! 大家好,我...
浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍 前言 在 AI 自动化快速发展的当下,浏览器早已不再只是...