-- extracted from draft-ietf-vrrp-ipv6-mib-00.txt -- at Fri Jun 27 06:13:39 2003 VRRP-IPv6-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Counter32, Integer32, mib-2 FROM SNMPv2-SMI RowStatus, MacAddress, TruthValue, TimeStamp FROM SNMPv2-TC MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF ifIndex FROM IF-MIB VrId FROM VRRP-MIB InetAddressType, InetAddress FROM INET-ADDRESS-MIB; vrrpIpv6MIB MODULE-IDENTITY LAST-UPDATED "200304200000Z" ORGANIZATION "IETF VRRP Working Group" CONTACT-INFO "Kalyan Tata Postal: Nokia, Inc. 313, Fair child Dr. Mountain View, California 94303 Tel: +1 408 896 6493 E-Mail: kalyan.tata@nokia.com" DESCRIPTION "This MIB describes objects used for managing Virtual Router Redundancy Protocol (VRRP) for IPv6 routers. Copyright (C) The Internet Society (2003). This version of this MIB module is part of RFC XXXX: see the RFC itself for full legal notices. RFC Ed.: replace XXXX with assigned number & remove this note. " ::= { mib-2 xx } -- To be assigned by IANA --******************************************************************* -- VRRP MIB Groups --******************************************************************* vrrpIpv6Operations OBJECT IDENTIFIER ::= { vrrpIpv6MIB 1 } vrrpIpv6Statistics OBJECT IDENTIFIER ::= { vrrpIpv6MIB 2 } vrrpIpv6Conformance OBJECT IDENTIFIER ::= { vrrpIpv6MIB 3 } --******************************************************************* -- Start of MIB objects --******************************************************************* vrrpIpv6NodeVersion OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "This value identifies the particular version of the VRRP over IPv6 supported by this node. Version 3 for this document." ::= { vrrpIpv6Operations 1 } vrrpIpv6NotificationCntl OBJECT-TYPE SYNTAX INTEGER { enabled (1), disabled (2) } MAX-ACCESS read-write STATUS current DESCRIPTION "Indicates whether the VRRP-IPv6-enabled router will generate SNMP traps for events defined in this MIB. 'Enabled' results in SNMP traps; 'disabled', no traps are sent." DEFVAL { enabled } ::= { vrrpIpv6Operations 2 } --******************************************************************* -- VRRP IPv6 Operations Table --******************************************************************* vrrpIpv6OperTable OBJECT-TYPE SYNTAX SEQUENCE OF VrrpIpv6OperEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Operations table for a VRRP router which consists of a sequence (i.e., one or more conceptual rows) of 'vrrpIpv6OperEntry' items." ::= { vrrpIpv6Operations 3 } vrrpIpv6OperEntry OBJECT-TYPE SYNTAX VrrpIpv6OperEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the vrrpIpv6OperTable containing the operational characteristics of a virtual router. On a VRRP IPv6 router, a given virtual router is identified by a Combination of the IF index and IPv6VRID. Rows in the table cannot be modified unless the value of `vrrpIpv6OperAdminState' is `disabled' and the `vrrpIpv6OperState' has transitioned to `initialize'." INDEX { ifIndex, vrrpIpv6OperVrId } ::= { vrrpIpv6OperTable 1 } VrrpIpv6OperEntry ::= SEQUENCE { vrrpIpv6OperVrId VrId, vrrpIpv6OperVirtualMacAddr MacAddress, vrrpIpv6OperState INTEGER, vrrpIpv6OperAdminState INTEGER, vrrpIpv6OperPriority Integer32, vrrpIpv6OperIpAddrType InetAddressType, vrrpIpv6OperMasterIpAddr InetAddress, vrrpIpv6OperAdvInterval Integer32, vrrpIpv6OperPreemptMode TruthValue, vrrpIpv6OperVirtualRouterUpTime TimeStamp, vrrpIpv6OperProtocol INTEGER, vrrpIpv6OperRowStatus RowStatus } vrrpIpv6OperVrId OBJECT-TYPE SYNTAX VrId MAX-ACCESS read-only STATUS current DESCRIPTION "This object contains the IPv6 Virtual Router Identifier (IPv6VRID)." ::= { vrrpIpv6OperEntry 1 } vrrpIpv6OperVirtualMacAddr OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The virtual MAC address of the virtual router. Although this object can be derived from the 'vrrpIpv6OperVrId'object, it is defined so that it is easily obtainable by a management application and can be included in VRRP-related SNMP traps." ::= { vrrpIpv6OperEntry 2 } vrrpIpv6OperState OBJECT-TYPE SYNTAX INTEGER { initialize(1), backup(2), master(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "The current state of the virtual router. This object has three defined values: - `initialize', which indicates that all the virtual router is waiting for a startup event. - `backup', which indicates the virtual router is monitoring the availability of the master router. - `master', which indicates that the virtual router is forwarding packets for IPv6 addresses that are associated with this router. Setting the `vrrpIpv6OperAdminState' object(below) initiates transitions in the value of this object." ::= { vrrpIpv6OperEntry 3 } vrrpIpv6OperAdminState OBJECT-TYPE SYNTAX INTEGER { up(1), down(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "This object will enable/disable the virtual router function. Setting the value to `up', will transition the state of the virtual router from `initialize' to `backup' or `master', depending on the value of `vrrpIpv6OperPriority'. Setting the value to `down', will transition the router from `master' or `backup' to `initialize'. State transitions may not be immediate; they sometimes depend on other factors, such as the interface (IF) state. The `vrrpIpv6OperAdminState' object must be set to `down' prior to modifying the other read-create objects in the conceptual row. The value of the `vrrpIpv6OperRowStatus' object (below) must be `active', signifying that the conceptual row is valid (i.e., the objects are correctly set), in order for this object to be set to `up'." DEFVAL { down } ::= { vrrpIpv6OperEntry 4 } vrrpIpv6OperPriority OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the priority to be used for the virtual router master election process. Higher values imply higher priority. A priority of '0', although not settable, is sent by the master router to indicate that this router has ceased to participate in VRRP and a backup virtual router should transition to become a new master. A priority of 255 is used for the router that owns the associated IP address(es)." DEFVAL { 100 } ::= { vrrpIpv6OperEntry 5 } vrrpIpv6OperIpAddrType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "This specifies the the type of inetAddress in this row. This should allways be ipv6(2) for this document." ::= { vrrpIpv6OperEntry 6 } vrrpIpv6OperMasterIpAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The master router's real (primary) IPv6 address. This is the IPv6 address listed as the source in VRRP advertisement last received by this virtual router." ::= { vrrpIpv6OperEntry 7 } vrrpIpv6OperAdvInterval OBJECT-TYPE SYNTAX Integer32 (1..255) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The time interval, in seconds, between sending advertisement messages. Only the master router sends VRRP advertisements." DEFVAL { 1 } ::= { vrrpIpv6OperEntry 8 } vrrpIpv6OperPreemptMode OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "Controls whether a higher priority virtual router will preempt a lower priority master." DEFVAL { true } ::= { vrrpIpv6OperEntry 9 } vrrpIpv6OperVirtualRouterUpTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "This is the value of the `sysUpTime' object when this virtual router (i.e., the `vrrpIpv6OperState') transitioned out of `initialized'." ::= { vrrpIpv6OperEntry 10 } vrrpIpv6OperProtocol OBJECT-TYPE SYNTAX INTEGER { ip (1), bridge (2), decnet (3), other (4) } MAX-ACCESS read-create STATUS current DESCRIPTION "The particular protocol being controlled by this Virtual Router. New enumerations to this list can only be added via a new RFC on the standards track." DEFVAL { ip } ::= { vrrpIpv6OperEntry 11 } vrrpIpv6OperRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The row status variable, used in accordance to installation and removal conventions for conceptual rows. The rowstatus of a currently active row in the vrrpIpv6OperTable is constrained by the operational state of the corresponding virtual router. When `vrrpIpv6OperRowStatus' is set to active(1), no other objects in the conceptual row, with the exception of `vrrpIpv6OperAdminState', can be modified. Prior to setting the `vrrpIpv6OperRowStatus' object from `active' to a different value, the `vrrpIpv6OperAdminState' object must be set to `down' and the `vrrpIpv6OperState' object be transitioned to `initialize'. To create a row in this table, a manager sets this object to either createAndGo(4) or createAndWait(5). Until instances of all corresponding columns are appropriately configured, the value of the corresponding instance of the `vrrpIpv6OperRowStatus' column will be read as notReady(3). In particular, a newly created row cannot be made active(1) until (minimally) the corresponding instance of `vrrpIpv6OperVrId' has been set." ::= { vrrpIpv6OperEntry 12 } --******************************************************************* -- VRRP IPv6 Router Statistics --******************************************************************* vrrpIpv6RouterChecksumErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of VRRP packets received with an invalid VRRP checksum value." ::= { vrrpIpv6Statistics 1 } vrrpIpv6RouterVersionErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of IPv6 VRRP packets received with an unknown or unsupported version number." ::= { vrrpIpv6Statistics 2 } vrrpIpv6RouterVrIdErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of IPv6 VRRP packets received with an invalid IPv6VRID for this virtual router." ::= { vrrpIpv6Statistics 3 } --******************************************************************* -- VRRP IPv6 Router Statistics Table --******************************************************************* vrrpIpv6RouterStatsTable OBJECT-TYPE SYNTAX SEQUENCE OF VrrpRouterStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Table of virtual router statistics." ::= { vrrpIpv6Statistics 4 } vrrpIpv6RouterStatsEntry OBJECT-TYPE SYNTAX VrrpRouterStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the table, containing statistics information about a given virtual router." AUGMENTS { vrrpIpv6OperEntry } ::= { vrrpIpv6RouterStatsTable 1 } VrrpRouterStatsEntry ::= SEQUENCE { vrrpIpv6StatsBecomeMaster Counter32, vrrpIpv6StatsAsMasterUpTime TimeStamp, vrrpIpv6StatsAdvRcvd Counter32, vrrpIpv6StatsAdvIntervalErrors Counter32, vrrpIpv6StatsHopLimitErrors Counter32, vrrpIpv6StatsPriZeroPktsRcvd Counter32, vrrpIpv6StatsPriZeroPktsSent Counter32, vrrpIpv6StatsInvalidTypePktsRcvd Counter32, vrrpIpv6StatsAddressListErrors Counter32, vrrpIpv6StatsPacketLengthErrors Counter32 } vrrpIpv6StatsBecomeMaster OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of times that this virtual router's state has transitioned to MASTER." ::= { vrrpIpv6RouterStatsEntry 1 } vrrpIpv6StatsAsMasterUpTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of seconds this router is UP in master state." ::= { vrrpIpv6RouterStatsEntry 2 } vrrpIpv6StatsAdvRcvd OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of IPv6 VRRP advertisements received by this virtual router." ::= { vrrpIpv6RouterStatsEntry 3 } vrrpIpv6StatsAdvIntervalErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of IPv6 VRRP advertisement packets received for which the advertisement interval is different than the one configured for the local virtual router." ::= { vrrpIpv6RouterStatsEntry 4 } vrrpIpv6StatsHopLimitErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of IPv6 VRRP packets received by the virtual router with IPv6 hop limit not equal to 255." ::= { vrrpIpv6RouterStatsEntry 5 } vrrpIpv6StatsPriZeroPktsRcvd OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of IPv6 VRRP packets received by the virtual router with a priority of '0'." ::= { vrrpIpv6RouterStatsEntry 6 } vrrpIpv6StatsPriZeroPktsSent OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of IPv6 VRRP packets sent by the virtual router with a priority of '0'." ::= { vrrpIpv6RouterStatsEntry 7 } vrrpIpv6StatsInvalidTypePktsRcvd OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of VRRP packets received by the virtual router with an invalid value in the 'type' field." ::= { vrrpIpv6RouterStatsEntry 8 } vrrpIpv6StatsAddressListErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of packets received for which the address list does not match the locally configured list for the virtual router." ::= { vrrpIpv6RouterStatsEntry 9 } vrrpIpv6StatsPacketLengthErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of packets received with a packet length less than the length of the VRRP header." ::= { vrrpIpv6RouterStatsEntry 10 } --******************************************************************* -- Trap Definitions --******************************************************************* vrrpIpv6Notifications OBJECT IDENTIFIER ::= { vrrpIpv6MIB 0 } vrrpIpv6TrapNewMasterReason OBJECT-TYPE SYNTAX INTEGER { priority (0), preempted (1), masterNoResponse (2) } MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This indicates the reason for NewMaster trap. Used by vrrpIpv6TrapNewMaster trap." ::= { vrrpIpv6Operations 6 } vrrpIpv6TrapProtoErrReason OBJECT-TYPE SYNTAX INTEGER { hopLimitError (0), versionError (1), checksumError (2), vridError(3) } MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This indicates the reason for protocol error trap. Used by vrrpIpv6TrapProtoError trap." ::= { vrrpIpv6Operations 7 } vrrpIpv6TrapNewMaster NOTIFICATION-TYPE OBJECTS { vrrpIpv6OperMasterIpAddr, vrrpIpv6TrapNewMasterReason } STATUS current DESCRIPTION "The newMaster trap indicates that the sending agent has transitioned to 'Master' state. The vrrpIpv6TrapNewMasterReason indicates the reason due to which the sending agent transitioned to ĉmasterĈ state.ö ::= { vrrpIpv6Notifications 1 } vrrpIpv6TrapProtoError NOTIFICATION-TYPE OBJECTS { vrrpIpv6TrapProtoErrReason } STATUS current DESCRIPTION "The error trap indicates that the sending agent has encountered the protocol error indicated by ErrorReason." ::= { vrrpIpv6Notifications 2 } --******************************************************************* -- Conformance Information --******************************************************************* vrrpIpv6MIBCompliances OBJECT IDENTIFIER ::= { vrrpIpv6Conformance 1 } vrrpIpv6MIBGroups OBJECT IDENTIFIER ::= { vrrpIpv6Conformance 2 } --................................................................... -- Compliance Statements --................................................................... vrrpIpv6MIBCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The core compliance statement for all VRRP IPv6 implementations." MODULE -- this module MANDATORY-GROUPS { vrrpIpv6OperGroup, vrrpIpv6StatsGroup } OBJECT vrrpIpv6OperPriority WRITE-SYNTAX Integer32 (1..255) DESCRIPTION "SETable values are from 1 to 255." ::= { vrrpIpv6MIBCompliances 1 } --................................................................... -- Conformance Groups --................................................................... vrrpIpv6OperGroup OBJECT-GROUP OBJECTS { vrrpIpv6NodeVersion, vrrpIpv6NotificationCntl, vrrpIpv6OperVirtualMacAddr, vrrpIpv6OperState, vrrpIpv6OperAdminState, vrrpIpv6OperPriority, vrrpIpv6OperIpAddrType, vrrpIpv6OperMasterIpAddr, vrrpIpv6OperAdvInterval, vrrpIpv6OperPreemptMode, vrrpIpv6OperVirtualRouterUpTime, vrrpIpv6OperProtocol, vrrpIpv6OperRowStatus } STATUS current DESCRIPTION "Conformance group for VRRP operations." ::= { vrrpIpv6MIBGroups 1 } vrrpIpv6StatsGroup OBJECT-GROUP OBJECTS { vrrpIpv6RouterChecksumErrors, vrrpIpv6RouterVersionErrors, vrrpIpv6RouterVrIdErrors, vrrpIpv6StatsBecomeMaster, vrrpIpv6StatsAsMasterUpTime, vrrpIpv6StatsAdvRcvd, vrrpIpv6StatsAdvIntervalErrors, vrrpIpv6StatsHopLimitErrors, vrrpIpv6StatsPriZeroPktsRcvd, vrrpIpv6StatsPriZeroPktsSent, vrrpIpv6StatsInvalidTypePktsRcvd, vrrpIpv6StatsAddressListErrors, vrrpIpv6StatsPacketLengthErrors } STATUS current DESCRIPTION "Conformance group for VRRP statistics." ::= { vrrpIpv6MIBGroups 2 } vrrpIpv6TrapGroup OBJECT-GROUP OBJECTS { vrrpIpv6TrapNewMasterReason, vrrpIpv6TrapProtoErrReason } STATUS current DESCRIPTION "Conformance group for objects contained in VRRP notifications." ::= { vrrpIpv6MIBGroups 3 } vrrpIpv6NotificationGroup NOTIFICATION-GROUP NOTIFICATIONS { vrrpIpv6TrapNewMaster, vrrpIpv6TrapProtoError } STATUS current DESCRIPTION "The VRRP MIB Notification Group." ::= { vrrpIpv6MIBGroups 4 } END