1.点击菜单 File->New...,在弹出的对话框中选择"version 1"或"version 2",此处选择"version 2"。
2. 在 Module name: 编 辑 框 中 输 入 模 块 名 称 , 注 意 所 有 字 母 必 须 大 写 , 此 处 输 入
"LIUZY-TEST-MIB"。
3.导入父 OID 结点所在的 mib 模块,此处我需要创建一个位于"enterprises"下的一个私有结
点 39988,因此需要导入"enterprises"所在的模块 SNMPv2-SMI:
点击菜单 File->Import...,在弹出的模块选择框中选择"SNMPv2-SMI.my",此时左边的 MIB 树
中即可展开看到 enterprises 结点。
4.将"enterprises"结点插入到我们自己的模块中:
方法一:
1).在导入的 SNMPv2-SMI 模块的 enterprises 结点上右键单击,在弹出的菜单中执行"Copy"
命令;
2).点击菜单 Window->LIUZY-TEST-MIB,切换到我们正在编辑的 MIB 模块;
3).在根结点"MIB Tree"上右键单击,在弹出的菜单中执行"Paste"命令;此时系统将提示"结点
不能被链接到树中,因为无该结点的父结点,是否导入所有丢失的父结点?",选择"是",即
可将 enterprises 结点导入我们的文件中;
方法二:
1).点击菜单条最右边的"向下还原"按钮,使导入的 SNMPv2-SMI 模块和 LIUZY-TET-MIB 模块
同时可见;
2).鼠标左键按住 SNMPv2-SMI 模块的 enterprises 结点,然后拖到 LIUZY-TEST-MIB 的"MIB Tree"
结点下,此时系统将提示"结点不能被链接到树中,因为无该结点的父结点,是否导入所有
丢失的父结点?",选择"是",即可将 enterprises 结点导入我们的文件中;
5.新建一模块:
5.新建一非叶子结点:
将右边"SMIv1 Components"下的"OBJECT IDENTIFIER"拖到希望的结点如"enterprises"结点下,
Name 编辑框输入希望的名字如"liuzytest",Child 编辑框输入我们希望的 OID 值如 39988。
6.新建一叶子结点:
将右边"SMIv1 Components"下的"OBJECT-TYPE(Scalar)"拖到希望的结点如"liuzytest"结点下,
Name 编辑框输入希望的名字如"liuzyleaf",Child 编辑框输入我们希望的 OID 值如 1,再根据
需要设置其它的属性。
7.新建一个表:
1).将右边"SMIv1 Components"下的"OBJECT-TYPE(Table)"拖到希望的结点如"liuzytest"结点下,
Name 编辑框输入希望的名字如"liuzyTable",Child 编辑框输入我们希望的 OID 值如 2,再根
据需要设置其它的属性。需要注意的是结点名称必须以"Table"结尾。
2).将右边"SMIv1 Components"下的"OBJECT-TYPE(Row)"拖到上一步新建的"liuzyTable"结点下,
Name 和 Child 编辑框不允许输入,由系统默认设置,根据需要可设置其它的属性。
3).将右边"SMIv1 Components"下的"OBJECT-TYPE(Columnar)"拖到上一步新建的"liuzyEntry"结
点下,Name 编辑框输入希望的名字如"liuzyColumn1",Child 编辑框输入我们希望的 OID 值
如 1,再根据需要设置其它的属性。
4).重复第 3)步加入其它列结点。
8.新建一 Notification:
将右边"SMIv2 Components"下的"NOTIFICATION-TYPE"拖到希望的结点如"liuzytest"结点下,
Name 编辑框输入希望的名字如"liuzyNotification",Child 编辑框输入我们希望的 OID 值如 3,
再根据需要设置其它的属性。
至此,我们生成了一个 mib 文件。
9.进行正确性检查:
点击工具栏上的"Check MIB Tree"按钮,即可在"Log"窗口中看到检查结果:
ERROR: No indexes defined for Row "liuzyEntry".
WARNING: OBJECT-TYPE "liuzyleaf" is not contained in any group defined in the current module.
WARNING: OBJECT-TYPE "liuzyCol1" is not contained in any group defined in the current module.
WARNING: OBJECT-TYPE "liuzyCol2" is not contained in any group defined in the current module.
WARNING: NOTIFICATION-TYPE "liuzyNotification" is not contained in any group defined in the
current module.
WARNING: This MIB module doesn't contain any MODULE-IDENTIY construct.
对上面建立的 mib 文件,可看到 1 条错误信息和 5 条警告,下面依次来排除这些问题:
>>改正 ERROR:
1).选择"liuzyEntry"结点;
2).在右边的属性设置窗口中左下角的下拉框中选择"Index",点击右边的浏览按钮,在弹出
的对话框中将希望做索引的结点选择到"Selected indexes"列表框中,确定;
>>改正第 5 个 WARNING:
1).将右边"SMIv2 Components"下的"MODULE-IDENTITY"拖到希望的结点如"enterprises"结点
下,Name 编辑框输入希望的名字如"liuzyModule",Child 编辑框输入我们希望的 OID 值如
39988,再根据需要设置其它的属性。
2).将已建好的"liuzytest"结点拖到"liuzyModule"下,其 Child 值会变为 1,可改成其它值,现
在我们保持 1 不变。
>>改正第 2 个 WARNING:
1).将右边"SMIv2 Components"下的"OBJECT-GROUP"拖到"liuzytest"结点下,Name 编辑框输入
希望的名字如"liuzyleafGroup",Child 编辑框输入我们希望的 OID 值如 4,点击"Objects"浏览
按钮,在弹出的对话框中,删除右边列表框中的"object1",将左边列表框中的"liuzyleaf"加入
右边列表框中,再根据需要设置其它的属性,确定。
>>改正第 2、3 个 WARNING:
1).将右边"SMIv2 Components"下的"OBJECT-GROUP"拖到"liuzytest"结点下,Name 编辑框输入
希望的名字如"liuzyTableGroup",Child 编辑框输入我们希望的 OID 值如 5,点击"Objects"浏
览按钮,在弹出的对话框中,删除右边列表框中的"object1",将左边列表框中的"liuzyCol1"
和"liuzyCol2"加入右边列表框中,再根据需要设置其它的属性,确定。
>>改正第 4 个 WARNING:
1).将右边"SMIv2 Components"下的"NOTIFICATION-GROUP"拖到"liuzytest"结点下,Name 编辑
框输入希望的名字如"liuzyNotificationGroup",Child 编辑框输入我们希望的 OID 值如 6,点击
"Objects"浏览按钮,在弹出的对话框中,删除右边列表框中的"notification1",将左边列表框
中的"liuzyNotification"加入右边列表框中,再根据需要设置其它的属性,确定。
10.再次进行正确性检查:全部 OK!
11.预览 mib 文件:点击菜单 File->Export Preview
12.生成 mib 文件:点击菜单 File->Export