rfc-6527

Definitions of Managed Objects for Virtual Router Redundancy Protocol Version 3 (VRRPv3)

K. Tata
date2012-03 streamIETF areartg wgvrrp statusPROPOSED STANDARD pages31 canonicalhttps://www.rfc-editor.org/rfc/rfc6527 doi10.17487/RFC6527 errataview
This specification defines a portion of the Management Information Base (MIB) for use with network management based on the Simple Network Management Protocol (SNMP). In particular, it defines objects for configuring, monitoring, and controlling routers that employ the Virtual Router Redundancy Protocol Version 3 (VRRPv3) for both IPv4 and IPv6 as defined in RFC 5798. This memo obsoletes RFC 2787. [STANDARDS-TRACK]

obsoletes

Extracted elements (25)

design-rationale §7

IPv4 and IPv6 virtual routers are treated as two separate logical entities, each represented as a separate row in vrrpv3OperationsTable. This choice was made because RFC 5798 behavior in a multi-stack scenario is undefined, and no consensus could be reached on an alternative interpretation.

snmp

interoperability-note §4

This MIB obsoletes RFC 2787 (VRRP-MIB for VRRPv2/RFC 2338). The major changes reflect protocol differences between RFC 2338 and RFC 5798, including unified IPv4/IPv6 support, updated table indexing, and alignment with current MIB conventions.

snmp

normative-requirement §10 MUST NOT

A newly created row in vrrpv3OperationsTable cannot be made active(1) until vrrpv3OperationsInetAddrType, vrrpv3OperationsVrId, and vrrpv3OperationsPrimaryIpAddr have been set, and at least one active row exists in vrrpv3AssociatedIpAddrTable for the virtual router.

snmp

normative-requirement §10 MUST

Agents implementing this MIB MUST reject SET operations that attempt to write priority values of 0 or 255 to vrrpv3OperationsPriority. For example, an SNMP agent would return 'badValue(3)' for such attempts.

snmp

normative-requirement §11 RECOMMENDED

Deployment of SNMP versions prior to SNMPv3 is NOT RECOMMENDED. It is RECOMMENDED to deploy SNMPv3 and enable cryptographic security to control access to read-create objects in this MIB.

snmp, security

normative-requirement §11 MUST

Implementations MUST provide the security features described by the SNMPv3 framework, including full support for authentication and privacy via the User-based Security Model (USM) with the AES cipher algorithm. Implementations MAY also support the Transport Security Model (TSM) combined with SSH or TLS/DTLS.

snmp, security, tls

normative-requirement §10 SHOULD

The information in vrrpv3OperationsTable and vrrpv3AssociatedIpAddrTable is persistent; when written, the entity SHOULD save the change to non-volatile storage.

snmp

normative-requirement §10 MUST

The vrrpv3OperationsRowStatus row-creation lifecycle requires: (1) create row with createAndWait(5), (2) create associated rows in vrrpv3AssociatedIpAddrTable, (3) populate the entry, (4) set RowStatus to active(1). Deletion requires setting RowStatus to notInService(2), destroying associated address rows, then setting RowStatus to destroy(6).

snmp

protocol-element §10

Global statistics counters (vrrpv3RouterChecksumErrors, vrrpv3RouterVersionErrors, vrrpv3RouterVrIdErrors) are Counter64 objects tracking router-wide packet reception errors. Counter discontinuities are tracked via vrrpv3GlobalStatisticsDiscontinuityTime (sysUpTime at last discontinuity).

snmp

protocol-element §10

Per-virtual-router statistics include vrrpv3StatisticsIpTtlErrors (packets received with IPv4 TTL or IPv6 Hop Limit not equal to 255), vrrpv3StatisticsAdvIntervalErrors (advertisement interval mismatch), and vrrpv3StatisticsAddressListErrors (address list mismatch), all Counter64.

snmp

protocol-element §8

The VRRPv3 MIB module contains three tables: vrrpv3OperationsTable (operational characteristics of each virtual router instance), vrrpv3StatisticsTable (per-virtual-router statistics), and vrrpv3AssociatedIpAddrTable (IP addresses backed up by each virtual router). Tables are indexed on ifIndex, VRID, and IP address type.

snmp, sctp

protocol-element §10

Two compliance levels are defined: vrrpv3FullCompliance (requires all four conformance groups including read-create access, with settable priority restricted to 1–254) and vrrpv3ReadOnlyCompliance (all groups with read-only access to all writable objects, suitable for monitoring-only implementations).

snmp

protocol-element §10

Two SNMP notifications are defined: vrrpv3NewMaster (sent when a router transitions to master state, carrying vrrpv3OperationsMasterIpAddr and vrrpv3StatisticsNewMasterReason) and vrrpv3ProtoError (sent on protocol error, carrying vrrpv3StatisticsProtoErrReason).

snmp

protocol-element §10

vrrpv3AssociatedIpAddrTable stores the IP addresses (IPv4 4-byte or IPv6 16-byte) that each virtual router backs up, indexed by ifIndex, VRID, InetAddressType, and address. Rows cannot be modified unless the corresponding vrrpv3OperationsStatus is initialize(1). Implementations should not allow deletion of the last row corresponding to an active operations entry.

snmp

protocol-element §10

vrrpv3OperationsAcceptMode (TruthValue, default false) controls whether a master router in IPv6 mode accepts packets addressed to the address owner's IPv6 address when it is not the owner. This object is not relevant for VRRP over IPv4 and SHOULD be set to false(2) in that case.

snmp

protocol-element §10

vrrpv3OperationsAdvInterval specifies the interval between VRRP advertisement messages in centiseconds, range 1–4095, default 100 (1 second). Only the master router sends VRRP advertisements.

snmp

protocol-element §10

vrrpv3OperationsPreemptMode (TruthValue, default true) controls whether a higher-priority virtual router will preempt a lower-priority master. It is read-create and configurable per virtual router instance.

snmp

protocol-element §10

vrrpv3OperationsPriority is an Unsigned32 in range 0–255 with default 100. Priority 255 indicates the router owns the associated IP address(es); priority 0 (not settable via SNMP) signals the current master is ceasing participation. Agents MUST reject SET operations with value 0 or 255, returning badValue(3).

snmp

protocol-element §10

vrrpv3OperationsTable rows are indexed by ifIndex, vrrpv3OperationsVrId (1–255), and vrrpv3OperationsInetAddrType (ipv4(1) or ipv6(2)), uniquely identifying each virtual router instance on a multi-stack VRRP router.

snmp

protocol-element §10

vrrpv3StatisticsNewMasterReason records why the virtual router last transitioned to master: notMaster(0), priority(1), preempted(2), or masterNoResponse(3). This value is included in vrrpv3NewMaster notifications.

snmp

protocol-element §10

vrrpv3StatisticsProtoErrReason records the last protocol error encountered: noError(0), ipTtlError(1), versionError(2), checksumError(3), or vrIdError(4). This value is included in vrrpv3ProtoError notifications.

snmp

protocol-element §10

vrrpv3StatisticsRefreshRate (Unsigned32, in milliseconds) indicates the minimum reasonable polling interval for statistics counters in a given virtual router entry, providing guidance to management applications on how frequently to poll.

snmp

registry §12

IANA assigned OBJECT IDENTIFIER { mib-2 207 } to vrrpv3MIB in the SMI Numbers registry. The prior VRRP-MIB assignment (mib-2 68, from RFC 2787) has been deprecated as this document obsoletes RFC 2787.

snmp, registry

security-consideration §11

The read-create objects vrrpv3OperationsPriority, vrrpv3OperationsPrimaryIpAddr, vrrpv3OperationsAdvInterval, vrrpv3OperationsPreemptMode, vrrpv3OperationsAcceptMode, vrrpv3OperationsRowStatus, and vrrpv3AssociatedIpAddrRowStatus can adversely affect virtual router operation if manipulated by unauthorized parties, e.g., causing incorrect master elections, IP address misassignment, advertisement flooding, or disabling virtual routers entirely.

snmp, security

state-machine §10

A virtual router cycles through three states tracked by vrrpv3OperationsStatus: initialize(1) — awaiting startup event; backup(2) — monitoring master availability; master(3) — forwarding packets for associated IP addresses. A row must start in initialize(1) and cannot transition to backup(2) or master(3) until vrrpv3OperationsRowStatus becomes active(1).

snmp