我正在实现自己的MIB,并使用smilint检查以验证MIB.我收到了很多node xxx must be contained in at least one conformance group警告.
我无法破译OBJECT-GROUP的目的以及它在MIB文件中的位置.它是否提供了一种机制,用于对位于同一OID子树中的各种OID的相关托管OBJECT-TYP进行分组?是否真的需要,因为我可以设计一个有用的MIB吗?
我也在努力理解与对象相关的MODULE-COMPLIANCE宏的目的.这是否适用于扩展我正在创建的MIB?
类似的问题已经被问过SO 这里,我发现窗台不清楚,因为对象的集团是一个完全不同的树下下一个OID定义和引用的对象类型.谢谢
正如您所述,OBJECT-GROUP宏用于对位于各种OID的概念上相关的托管OBJECT-TYP组进行分组.但是,它们不必来自同一个子树.严格地说,OBJECT-GROUP宏不是必需的,因为它只是来自smilint的4级警告将证明.
你联系的答案确实提到了一些,但希望这对你来说是一个更有用的答案.
至于这些事情的目的,我会尝试解释.这些OBJECT-GROUP和MODULE-COMPLIANCE宏适用于那些将实现您正在创建的MIB的宏,而不是与MIB本身有关的任何内容.OBJECT-GROUP给出了关于OID的逻辑关系的想法,MODULE-COMPLIANCE语句显示在什么情况下哪些OID是强制的.即来自RFC2580:
(假设的)XYZv2-MIB中包含的合规声明可能是:
Run Code Online (Sandbox Code Playgroud)xyzMIBCompliance MODULE-COMPLIANCE DESCRIPTION "The compliance statement for XYZv2 entities which implement the XYZv2 MIB." MODULE -- compliance to the containing MIB module MANDATORY-GROUPS { xyzSystemGroup, xyzStatsGroup, xyzTrapGroup, xyzSetGroup, xyzBasicNotificationsGroup } GROUP xyzV1Group DESCRIPTION "The xyzV1 group is mandatory only for those XYZv2 entities which also implement XYZv1." ::= { xyzMIBCompliances 1 }根据此调用,声明与命名的合规性声明对齐
Run Code Online (Sandbox Code Playgroud){ xyzMIBCompliances 1 }系统必须实现XYZv2-MIB的xyzSystemGroup,xyzStatsGroup,xyzTrapGroup和xyzSetGroup对象一致性组,以及xyzBasicNotificationsGroup通知组.此外,如果XYZv2实体也实现了XYZv1,那么如果要声明合规性,它还必须支持XYZv1Group组.
所以,正如另一个问题所述,如果您决定创建OBJECT-GROUP宏,那么您可能应该继续并创建支持的MODULE-COMPLIANCE对象,因为您已经遇到了麻烦.
| 归档时间: |
|
| 查看次数: |
2007 次 |
| 最近记录: |