-- MIB created 10/11/99 20:28:42, by -- SMIC (the next generation) version 1.6.29, November 22, 1994. VRRP-MIB DEFINITIONS ::= BEGIN -- From file: "vrrp.mi2" -- Compile options "G A T M" IMPORTS Counter32, Integer32, IpAddress FROM SNMPv2-SMI-v1 OBJECT-TYPE FROM RFC-1212 TRAP-TYPE FROM RFC-1215 RowStatus, MacAddress, TruthValue, TimeStamp FROM SNMPv2-TC-v1 mib-2 FROM RFC1213-MIB ifIndex FROM IF-MIB; vrrpMIB OBJECT IDENTIFIER ::= { mib-2 68 } -- MODULE-IDENTITY -- LastUpdated -- 9909300900Z -- OrgName -- IETF VRRP Working Group -- ContactInfo -- Brian R. Jewell -- Postal: 3Com Corporation -- 5400 BayFront Plaza -- Santa Clara, California 95052 -- Tel: +1 408 326 6173 -- E-Mail: bjewell@3com.com -- Descr -- This MIB describes objects used for managing Virtual Router -- Redundancy Protocol (VRRP) routers. -- RevDate -- 9909300900Z -- RevDescr -- Initial version as published in RFC xxxx (number to -- be assigned). vrrpOperations OBJECT IDENTIFIER ::= { vrrpMIB 1 } vrrpStatistics OBJECT IDENTIFIER ::= { vrrpMIB 2 } vrrpConformance OBJECT IDENTIFIER ::= { vrrpMIB 3 } vrrpNotifications OBJECT IDENTIFIER ::= { vrrpMIB 0 } vrrpMIBCompliances OBJECT IDENTIFIER ::= { vrrpConformance 1 } vrrpMIBGroups OBJECT IDENTIFIER ::= { vrrpConformance 2 } VrId ::= Integer32(1..255) -- TEXTUAL-CONVENTION -- Status -- mandatory -- Descr -- A number which, along with an interface index (ifIndex), -- serves to uniquely identify a virtual router on a given VRRP -- router. A set of one or more associated addresses is assigned -- to a VRID. vrrpNodeVersion OBJECT-TYPE SYNTAX Integer32 ACCESS read-only STATUS mandatory DESCRIPTION "This value identifies the particular version of the VRRP supported by this node." ::= { vrrpOperations 1 } vrrpNotificationCntl OBJECT-TYPE SYNTAX INTEGER { enabled(1), disabled(2) } ACCESS read-write STATUS mandatory DESCRIPTION "Indicates whether the VRRP-enabled router will generate SNMP traps for events defined in this MIB. 'Enabled' results in SNMP traps; 'disabled', no traps are sent." DEFVAL { enabled } ::= { vrrpOperations 2 } vrrpOperTable OBJECT-TYPE SYNTAX SEQUENCE OF VrrpOperEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Operations table for a VRRP router which consists of a sequence (i.e., one or more conceptual rows) of 'vrrpOperEntry' items." ::= { vrrpOperations 3 } vrrpOperEntry OBJECT-TYPE SYNTAX VrrpOperEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the vrrpOperTable containing the operational characteristics of a virtual router. On a VRRP router, a given virtual router is identified by a combination of the IF index and VRID. Rows in the table cannot be modified unless the value of `vrrpOperAdminState' is `disabled' and the `vrrpOperState' has transitioned to `initialize'." INDEX { ifIndex, vrrpOperVrId } ::= { vrrpOperTable 1 } VrrpOperEntry ::= SEQUENCE { vrrpOperVrId VrId, vrrpOperVirtualMacAddr MacAddress, vrrpOperState INTEGER, vrrpOperAdminState INTEGER, vrrpOperPriority Integer32, vrrpOperIpAddrCount Integer32, vrrpOperMasterIpAddr IpAddress, vrrpOperPrimaryIpAddr IpAddress, vrrpOperAuthType INTEGER, vrrpOperAuthKey OCTET STRING, vrrpOperAdvertisementInterval Integer32, vrrpOperPreemptMode TruthValue, vrrpOperVirtualRouterUpTime TimeStamp, vrrpOperProtocol INTEGER, vrrpOperRowStatus RowStatus } vrrpOperVrId OBJECT-TYPE SYNTAX VrId -- Rsyntax Integer32(1..255) ACCESS not-accessible STATUS mandatory DESCRIPTION "This object contains the Virtual Router Identifier (VRID)." ::= { vrrpOperEntry 1 } vrrpOperVirtualMacAddr OBJECT-TYPE SYNTAX MacAddress -- Rsyntax OCTET STRING(SIZE(6)) ACCESS read-only STATUS mandatory DESCRIPTION "The virtual MAC address of the virtual router. Although this object can be derived from the 'vrrpOperVrId' object, it is defined so that it is easily obtainable by a management application and can be included in VRRP-related SNMP traps." ::= { vrrpOperEntry 2 } vrrpOperState OBJECT-TYPE SYNTAX INTEGER { initialize(1), backup(2), master(3) } ACCESS read-only STATUS mandatory 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 IP addresses that are associated with this router. Setting the `vrrpOperAdminState' object (below) initiates transitions in the value of this object." ::= { vrrpOperEntry 3 } vrrpOperAdminState OBJECT-TYPE SYNTAX INTEGER { up(1), down(2) } ACCESS read-write STATUS mandatory 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'; 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 `vrrpOperAdminState' object must be set to `down' prior to modifying the other read-create objects in the conceptual row. The value of the `vrrpOperRowStatus' 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 } ::= { vrrpOperEntry 4 } vrrpOperPriority OBJECT-TYPE SYNTAX Integer32(0..255) ACCESS read-write STATUS mandatory 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 particpate 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 } ::= { vrrpOperEntry 5 } vrrpOperIpAddrCount OBJECT-TYPE SYNTAX Integer32(0..255) ACCESS read-only STATUS mandatory DESCRIPTION "The number of IP addresses that are associated with this virtual router. This number is equal to the number of rows in the vrrpAssoIpAddrTable that correspond to a given IF index/VRID pair." ::= { vrrpOperEntry 6 } vrrpOperMasterIpAddr OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The master router's real (primary) IP address. This is the IP address listed as the source in VRRP advertisement last received by this virtual router." ::= { vrrpOperEntry 7 } vrrpOperPrimaryIpAddr OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "In the case where there is more than one IP address for a given `ifIndex', this object is used to specify the IP address that will become the `vrrpOperMasterIpAddr', should the virtual router transition from backup to master. If this object is set to 0.0.0.0, the IP address which is numerically lowest will be selected." DEFVAL { 0.0.0.0 } ::= { vrrpOperEntry 8 } vrrpOperAuthType OBJECT-TYPE SYNTAX INTEGER { noAuthentication(1), simpleTextPassword(2), ipAuthenticationHeader(3) } ACCESS read-write STATUS mandatory DESCRIPTION "Authentication type used for VRRP protocol exchanges between virtual routers. This value of this object is the same for a given ifIndex." DEFVAL { noAuthentication } ::= { vrrpOperEntry 9 } vrrpOperAuthKey OBJECT-TYPE SYNTAX OCTET STRING(SIZE(0..16)) ACCESS read-write STATUS mandatory DESCRIPTION "The Authentication Key. This object is set according to the value of the 'vrrpOperAuthType' object ('simpleTextPassword' or 'ipAuthenticationHeader'). If the length of the value is less than 16 octets, the agent will left adjust and zero fill to 16 octets. The value of this object is the same for a given ifIndex. When read, vrrpOperAuthKey always returns an Octet String of length zero." ::= { vrrpOperEntry 10 } vrrpOperAdvertisementInterval OBJECT-TYPE SYNTAX Integer32(1..255) -- Units -- seconds ACCESS read-write STATUS mandatory DESCRIPTION "The time interval, in seconds, between sending advertisement messages. Only the master router sends VRRP advertisements." DEFVAL { 1 } ::= { vrrpOperEntry 11 } vrrpOperPreemptMode OBJECT-TYPE SYNTAX TruthValue -- Rsyntax INTEGER { -- true(1), -- false(2) -- } ACCESS read-write STATUS mandatory DESCRIPTION "Controls whether a higher priority virtual router will preempt a lower priority master." DEFVAL { true } ::= { vrrpOperEntry 12 } vrrpOperVirtualRouterUpTime OBJECT-TYPE SYNTAX TimeStamp -- Rsyntax TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "This is the value of the `sysUpTime' object when this virtual router (i.e., the `vrrpOperState') transitioned out of `initialized'." ::= { vrrpOperEntry 13 } vrrpOperProtocol OBJECT-TYPE SYNTAX INTEGER { ip(1), bridge(2), decnet(3), other(4) } ACCESS read-write STATUS mandatory DESCRIPTION "The particular protocol being controlled by this Virtual Router." DEFVAL { ip } ::= { vrrpOperEntry 14 } vrrpOperRowStatus OBJECT-TYPE SYNTAX RowStatus -- Rsyntax INTEGER { -- active(1), -- notInService(2), -- notReady(3), -- createAndGo(4), -- createAndWait(5), -- destroy(6) -- } ACCESS read-write STATUS mandatory DESCRIPTION "The row status variable, used in accordance to installation and removal conventions for conceptual rows. In the text that follows, the characteristics (i.e., whether readable, settable or both) of each value are indicated in parenthesis. The state that this object transitions to when it is set is based on a determination of whether the read-create objects in the row have been correctly initialized for virtual router operation. A row in which not all of the objects are correctly set is considered `incomplete'. The rowstatus of a currently active row in the vrrpOperTable is also constrained by the operational state of the corresponding virtual router. Prior to setting this object from `active' to a different value, the `vrrpOperAdminState' object must be set to `down', and the `vrrpOperState' object be transitioned to `initialize'. The rowstatus column has six defined values: - `active' (read/set). When this value is read, it indicates that all the read-create objects (in the row) required for virtual router operation have been correctly initialized such that the respective virtual router can be made operational by setting the `vrrpOperAdminState' to `up'. When set to `active', no other objects in the conceptual row, with the exception of `vrrpOperAdminState', can be modified. When set, the agent will transition the value of rowstatus to `notReady' if the row is incomplete. - `notInService' (read/set), which when set, allows the objects in the row to be modified by a management station, thus changing the operational characteristics of the corresponding virtual router. - `notReady' (read). The agent sets the object to this state to indicate that the conceptual row exists, but is lacking initialization of one or more objects required for virtual router operation. - `createAndGo' (set), which is set by a management station wishing to create a new instance of a virtual router and to have its status automatically set to `active', making it available for use by a virtual router. Upon receiving a request to set the rowstatus to this value, the agent transitions the rowstatus to `active' if the other settable objects in the row have been correctly initialized. If the row is incomplete, the agent transitions the state to `notReady'. - `createAndWait' (set), which is set by a management station wishing to create a new instance of a virtual router but not make it available for use. When this value is set, rowstatus transitions to `notInService' if the row has been correctly initialized; if the row is incomplete, rowstatus will become `notReady'. - `destroy' (set), which deletes the conceptual row, and hence, the corresponding instance of a virtual router." ::= { vrrpOperEntry 15 } vrrpAssoIpAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF VrrpAssoIpAddrEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The table of addresses associated with this virtual router." ::= { vrrpOperations 4 } vrrpAssoIpAddrEntry OBJECT-TYPE SYNTAX VrrpAssoIpAddrEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the table contains an IP address that is associated with a virtual router. The number of rows for a given ifIndex and VrId will equal the number of IP addresses associated (e.g., backed up) by the virtual router (equivalent to 'vrrpOperIpAddrCount'). Rows in the table cannot be modified unless the value of `vrrpOperAdminState' is `disabled' and the `vrrpOperState' has transitioned to `initialize'." INDEX { ifIndex, vrrpOperVrId, vrrpAssoIpAddr } ::= { vrrpAssoIpAddrTable 1 } VrrpAssoIpAddrEntry ::= SEQUENCE { vrrpAssoIpAddr IpAddress, vrrpAssoIpAddrRowStatus RowStatus } vrrpAssoIpAddr OBJECT-TYPE SYNTAX IpAddress ACCESS not-accessible STATUS mandatory DESCRIPTION "The assigned IP addresses that a virtual router is responsible for backing up." ::= { vrrpAssoIpAddrEntry 1 } vrrpAssoIpAddrRowStatus OBJECT-TYPE SYNTAX RowStatus -- Rsyntax INTEGER { -- active(1), -- notInService(2), -- notReady(3), -- createAndGo(4), -- createAndWait(5), -- destroy(6) -- } ACCESS read-write STATUS mandatory DESCRIPTION "The row status variable, used according to installation and removal conventions for conceptual rows. Setting this object to `active' or 'createAndGo' results in the addition of an associated address for a virtual router. Destroying the entry or setting it to 'notInService' removes the associated address from the virtual router. The use of other values is implementation-dependent." ::= { vrrpAssoIpAddrEntry 2 } vrrpRouterChecksumErrors OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of VRRP packets received with an invalid VRRP checksum value." ::= { vrrpStatistics 1 } vrrpRouterVersionErrors OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of VRRP packets received with an unknown or unsupported version number." ::= { vrrpStatistics 2 } vrrpRouterVrIdErrors OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of VRRP packets received with an invalid VRID for this virtual router." ::= { vrrpStatistics 3 } vrrpRouterStatsTable OBJECT-TYPE SYNTAX SEQUENCE OF VrrpRouterStatsEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Table of virtual router statistics." ::= { vrrpStatistics 4 } vrrpRouterStatsEntry OBJECT-TYPE SYNTAX VrrpRouterStatsEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the table, containing statistics information about a given virtual router." INDEX { ifIndex, vrrpOperVrId } -- Augments vrrpOperEntry ::= { vrrpRouterStatsTable 1 } VrrpRouterStatsEntry ::= SEQUENCE { vrrpStatsBecomeMaster Counter32, vrrpStatsAdvertiseRcvd Counter32, vrrpStatsAdvertiseIntervalErrors Counter32, vrrpStatsAuthFailures Counter32, vrrpStatsIpTtlErrors Counter32, vrrpStatsPriorityZeroPktsRcvd Counter32, vrrpStatsPriorityZeroPktsSent Counter32, vrrpStatsInvalidTypePktsRcvd Counter32, vrrpStatsAddressListErrors Counter32, vrrpStatsInvalidAuthType Counter32, vrrpStatsAuthTypeMismatch Counter32, vrrpStatsPacketLengthErrors Counter32 } vrrpStatsBecomeMaster OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of times that this virtual router's state has transitioned to MASTER." ::= { vrrpRouterStatsEntry 1 } vrrpStatsAdvertiseRcvd OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of VRRP advertisements received by this virtual router." ::= { vrrpRouterStatsEntry 2 } vrrpStatsAdvertiseIntervalErrors OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of VRRP advertisement packets received for which the advertisement interval is different than the one configured for the local virtual router." ::= { vrrpRouterStatsEntry 3 } vrrpStatsAuthFailures OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of VRRP packets received that do not pass the authentication check." ::= { vrrpRouterStatsEntry 4 } vrrpStatsIpTtlErrors OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of VRRP packets received by the virtual router with IP TTL (Time-To-Live) not equal to 255." ::= { vrrpRouterStatsEntry 5 } vrrpStatsPriorityZeroPktsRcvd OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of VRRP packets received by the virtual router with a priority of '0'." ::= { vrrpRouterStatsEntry 6 } vrrpStatsPriorityZeroPktsSent OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of VRRP packets sent by the virtual router with a priority of '0'." ::= { vrrpRouterStatsEntry 7 } vrrpStatsInvalidTypePktsRcvd OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The number of VRRP packets received by the virtual router with an invalid value in the 'type' field." ::= { vrrpRouterStatsEntry 8 } vrrpStatsAddressListErrors OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of packets received for which the address list does not match the locally configured list for the virtual router." ::= { vrrpRouterStatsEntry 9 } vrrpStatsInvalidAuthType OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of packets received with an unknown authentication type." ::= { vrrpRouterStatsEntry 10 } vrrpStatsAuthTypeMismatch OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of packets received with 'Auth Type' not equal to the locally configured authentication method (`vrrpOperAuthType')." ::= { vrrpRouterStatsEntry 11 } vrrpStatsPacketLengthErrors OBJECT-TYPE SYNTAX Counter32 ACCESS read-only STATUS mandatory DESCRIPTION "The total number of packets received with a packet length less than the length of the VRRP header." ::= { vrrpRouterStatsEntry 12 } vrrpTrapPacketSrc OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The IP address of an inbound VRRP packet. Used by vrrpTrapAuthFailure trap." ::= { vrrpNotifications 1 } vrrpTrapAuthErrorType OBJECT-TYPE SYNTAX INTEGER { invalidAuthType(1), authTypeMismatch(2), authFailure(3) } ACCESS read-only STATUS mandatory DESCRIPTION "Potential types of configuration conflicts. Used by vrrpAuthFailure trap." ::= { vrrpNotifications 2 } vrrpTrapNewMaster TRAP-TYPE -- Reverse mappable trap ENTERPRISE vrrpMIB VARIABLES { vrrpOperMasterIpAddr } -- Status -- mandatory DESCRIPTION "The newMaster trap indicates that the sending agent has transitioned to 'Master' state." ::= 3 vrrpTrapAuthFailure TRAP-TYPE -- Reverse mappable trap ENTERPRISE vrrpMIB VARIABLES { vrrpTrapPacketSrc, vrrpTrapAuthErrorType } -- Status -- mandatory DESCRIPTION "A vrrpAuthFailure trap signifies that a packet has been received from a router whose authentication key or authentication type conflicts with this router's authentication key or authentication type. Implementation of this trap is optional." ::= 4 vrrpOperGroup OBJECT IDENTIFIER ::= { vrrpMIBGroups 1 } -- OBJECT-GROUP -- Status -- mandatory -- Descr -- Conformance group for VRRP operations. -- objects -- vrrpNodeVersion, vrrpNotificationCntl, vrrpOperVirtualMacAddr, -- vrrpOperState, vrrpOperAdminState, vrrpOperPriority, -- vrrpOperIpAddrCount, vrrpOperMasterIpAddr, -- vrrpOperPrimaryIpAddr, vrrpOperAuthType, vrrpOperAuthKey, -- vrrpOperAdvertisementInterval, vrrpOperPreemptMode, -- vrrpOperVirtualRouterUpTime, vrrpOperProtocol, -- vrrpOperRowStatus, vrrpAssoIpAddrRowStatus vrrpStatsGroup OBJECT IDENTIFIER ::= { vrrpMIBGroups 2 } -- OBJECT-GROUP -- Status -- mandatory -- Descr -- Conformance group for VRRP statistics. -- objects -- vrrpRouterChecksumErrors, vrrpRouterVersionErrors, -- vrrpRouterVrIdErrors, vrrpStatsBecomeMaster, -- vrrpStatsAdvertiseRcvd, vrrpStatsAdvertiseIntervalErrors, -- vrrpStatsAuthFailures, vrrpStatsIpTtlErrors, -- vrrpStatsPriorityZeroPktsRcvd, vrrpStatsPriorityZeroPktsSent, -- vrrpStatsInvalidTypePktsRcvd, vrrpStatsAddressListErrors, -- vrrpStatsInvalidAuthType, vrrpStatsAuthTypeMismatch, -- vrrpStatsPacketLengthErrors vrrpTrapGroup OBJECT IDENTIFIER ::= { vrrpMIBGroups 3 } -- OBJECT-GROUP -- Status -- mandatory -- Descr -- Conformance group for objects contained in VRRP notifications. -- objects -- vrrpTrapPacketSrc, vrrpTrapAuthErrorType vrrpMIBCompliance OBJECT IDENTIFIER ::= { vrrpMIBCompliances 1 } -- MODULE-COMPLIANCE -- Status -- mandatory -- Descr -- The core compliance statement for all VRRP implementations. -- Module -- >>current<< -- MandGroup -- vrrpOperGroup -- MandGroup -- vrrpStatsGroup -- ObjVar -- vrrpOperPriority END