Network Working Group G. Malkin Request for Comments: 1389 Xylogics, Inc. F. Baker Advanced Computer Communications January 1993 RIP Version 2 MIB Extension Status of this Memo This RFC specifies an IAB standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "IAB Official Protocol Standards" for the standardization state and status of this protocol. Distribution of this memo is unlimited. Abstract This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in TCP/IP-based internets. In particular, it defines objects for managing RIP Version 2. Table of Contents 1. The Network Management Framework ...................... 1 2. Objects ............................................... 2 2.1 Format of Definitions ................................ 2 3. Overview .............................................. 3 3.1 Textual Conventions .................................. 3 3.2 Structure of MIB ..................................... 3 4. Definitions ........................................... 3 4.1 Global Counters ...................................... 4 4.2 RIP Interface Tables ................................. 4 4.3 Peer Table ........................................... 10 5. Acknowledgements ...................................... 12 6. References ............................................ 12 7. Security Considerations ............................... 13 8. Authors' Addresses .................................... 13 1. The Network Management Framework The Internet-standard Network Management Framework consists of three components. They are: STD 16/RFC 1155 which defines the SMI, the mechanisms used for describing and naming objects for the purpose of management. STD 16/RFC 1212 defines a more concise description mechanism, which is Malkin & Baker [Page 1] RFC 1389 RIP-2 MIB Extension January 1993 wholly consistent with the SMI. RFC 1156 which defines MIB-I, the core set of managed objects for the Internet suite of protocols. STD 17/RFC 1213 defines MIB-II, an evolution of MIB-I based on implementation experience and new operational requirements. STD 15/RFC 1157 which defines the SNMP, the protocol used for network access to managed objects. The Framework permits new objects to be defined for the purpose of experimentation and evaluation. 2. Objects Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. Objects in the MIB are defined using the subset of Abstract Syntax Notation One (ASN.1) [7] defined in the SMI. In particular, each object has a name, a syntax, and an encoding. The name is an object identifier, an administratively assigned name, which specifies an object type. The object type together with an object instance serves to uniquely identify a specific instantiation of the object. For human convenience, we often use a textual string, termed the OBJECT DESCRIPTOR, to also refer to the object type. The syntax of an object type defines the abstract data structure corresponding to that object type. The ASN.1 language is used for this purpose. However, the SMI [3] purposely restricts the ASN.1 constructs which may be used. These restrictions are explicitly made for simplicity. The encoding of an object type is simply how that object type is represented using the object type's syntax. Implicitly tied to the notion of an object type's syntax and encoding is how the object type is represented when being transmitted on the network. The SMI specifies the use of the basic encoding rules of ASN.1 [8], subject to the additional requirements imposed by the SNMP. 2.1 Format of Definitions Section 4 contains contains the specification of all object types contained in this MIB module. The object types are defined using the conventions defined in the SMI, as amended by the extensions specified in [9]. Malkin & Baker [Page 2] RFC 1389 RIP-2 MIB Extension January 1993 3. Overview 3.1 Textual Conventions Several new data types are introduced as a textual convention in this MIB document. These textual conventions enhance the readability of the specification and can ease comparison with other specifications if appropriate. It should be noted that the introduction of the these textual conventions has no effect on either the syntax nor the semantics of any managed objects. The use of these is merely an artifact of the explanatory method used. Objects defined in terms of one of these methods are always encoded by means of the rules that define the primitive type. Hence, no changes to the SMI or the SNMP are necessary to accommodate these textual conventions which are adopted merely for the convenience of readers and writers in pursuit of the elusive goal of clear, concise, and unambiguous MIB documents. The new data types are: Validation (the standard "set to invalid causes deletion" type), and RouteTag. The RouteTag type represents the contents of the Route Tag field in the packet header or route entry. 3.2 Structure of MIB The RIP-2 MIB contains global counters useful for detecting the deleterious effects of RIP incompatibilities, an "interfaces" table which contains interface-specific statistics and configuration information, and an optional "neighbor" table containing information that may be helpful in debugging neighbor relationships. Like the protocol itself, this MIB takes great care to preserve compatibility with RIP-1 systems, and controls for monitoring and controlling system interactions. 4. Definitions RFC1389-MIB DEFINITIONS ::= BEGIN IMPORTS Counter, TimeTicks, IpAddress FROM RFC1155-SMI mib-2 FROM RFC1213-MIB OBJECT-TYPE FROM RFC-1212; -- RIP-2 Management Information Base rip2 OBJECT IDENTIFIER ::= { mib-2 23 } Malkin & Baker [Page 3] RFC 1389 RIP-2 MIB Extension January 1993 -- the RouteTag type represents the contents of the -- Route Tag field in the packet header or route entry. RouteTag ::= OCTET STRING (SIZE (2)) -- the Validation type is used for the variable that deletes -- an entry from a table, and ALWAYS takes at least these values: Validation ::= INTEGER { valid (1), invalid (2) } -- The RIP-2 Globals Group. -- Implementation of this group is mandatory for systems that -- implement RIP-2. -- These counters are intended to facilitate debugging quickly -- changing routes or failing neighbors rip2GlobalGroup OBJECT IDENTIFIER ::= { rip2 1 } rip2GlobalRouteChanges OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of changes made to the IP Route Da- tabase by RIP." ::= { rip2GlobalGroup 1 } rip2GlobalQueries OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of responses sent to RIP queries from other systems." ::= { rip2GlobalGroup 2 } -- RIP Interfaces Groups -- Implementation of these Groups is mandatory for systems that -- implement RIP-2. -- Since RIP versions 1 and 2 do not deal with addressless links, -- it is assumed that RIP "interfaces" are subnets within a -- routing domain. Malkin & Baker [Page 4] RFC 1389 RIP-2 MIB Extension January 1993 -- The RIP Interface Status Table. rip2IfStatTable OBJECT-TYPE SYNTAX SEQUENCE OF Rip2IfStatEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A list of subnets which require separate status monitoring in RIP." ::= { rip2 2 } rip2IfStatEntry OBJECT-TYPE SYNTAX Rip2IfStatEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A Single Routing Domain in a single Subnet." INDEX { rip2IfStatAddress } ::= { rip2IfStatTable 1 } Rip2IfStatEntry ::= SEQUENCE { rip2IfStatAddress IpAddress, rip2IfStatRcvBadPackets Counter, rip2IfStatRcvBadRoutes Counter, rip2IfStatSentUpdates Counter, rip2IfStatStatus Validation } rip2IfStatAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The IP Address of this system on the indicated subnet." ::= { rip2IfStatEntry 1 } rip2IfStatRcvBadPackets OBJECT-TYPE SYNTAX Counter ACCESS read-only Malkin & Baker [Page 5] RFC 1389 RIP-2 MIB Extension January 1993 STATUS mandatory DESCRIPTION "The number of RIP response packets received by the RIP process which were subsequently dis- carded for any reason (e.g. a version 0 packet, or an unknown command type)." ::= { rip2IfStatEntry 2 } rip2IfStatRcvBadRoutes OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of routes, in valid RIP packets, which were ignored for any reason (e.g. unknown address family, or invalid metric)." ::= { rip2IfStatEntry 3 } rip2IfStatSentUpdates OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of triggered RIP updates actually sent on this interface. This explicitly does NOT include full updates sent containing new information." ::= { rip2IfStatEntry 4 } rip2IfStatStatus OBJECT-TYPE SYNTAX Validation ACCESS read-write STATUS mandatory DESCRIPTION "Writing invalid has the effect of deleting this interface." DEFVAL { valid } ::= { rip2IfStatEntry 5 } -- The RIP Interface Configuration Table. rip2IfConfTable OBJECT-TYPE SYNTAX SEQUENCE OF Rip2IfConfEntry ACCESS not-accessible Malkin & Baker [Page 6] RFC 1389 RIP-2 MIB Extension January 1993 STATUS mandatory DESCRIPTION "A list of subnets which require separate con- figuration in RIP." ::= { rip2 3 } rip2IfConfEntry OBJECT-TYPE SYNTAX Rip2IfConfEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A Single Routing Domain in a single Subnet." INDEX { rip2IfConfAddress } ::= { rip2IfConfTable 1 } Rip2IfConfEntry ::= SEQUENCE { rip2IfConfAddress IpAddress, rip2IfConfDomain RouteTag, rip2IfConfAuthType INTEGER, rip2IfConfAuthKey OCTET STRING (SIZE(0..16)), rip2IfConfSend INTEGER, rip2IfConfReceive INTEGER, rip2IfConfDefaultMetric INTEGER, rip2IfConfStatus Validation } rip2IfConfAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The IP Address of this system on the indicated subnet." ::= { rip2IfConfEntry 1 } rip2IfConfDomain OBJECT-TYPE SYNTAX RouteTag Malkin & Baker [Page 7] RFC 1389 RIP-2 MIB Extension January 1993 ACCESS read-write STATUS mandatory DESCRIPTION "Value inserted into the Routing Domain field of all RIP packets sent on this interface." DEFVAL { '0000'h } ::= { rip2IfConfEntry 2 } rip2IfConfAuthType OBJECT-TYPE SYNTAX INTEGER { noAuthentication (1), simplePassword (2) } ACCESS read-write STATUS mandatory DESCRIPTION "The type of Authentication used on this inter- face." DEFVAL { noAuthentication } ::= { rip2IfConfEntry 3 } rip2IfConfAuthKey OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..16)) ACCESS read-write STATUS mandatory DESCRIPTION "The value to be used as the Authentication Key whenever the corresponding instance of rip2IfConfAuthType has the value simplePass- word. A modification of the corresponding in- stance of rip2IfConfAuthType does not modify the rip2IfConfAuthKey value. If a string shorter than 16 octets is supplied, it will be left-justified and padded to 16 oc- tets, on the right, with nulls (0x00). Reading this object always results in an OCTET STRING of length zero; authentication may not be bypassed by reading the MIB object." DEFVAL { ''h } ::= { rip2IfConfEntry 4 } rip2IfConfSend OBJECT-TYPE SYNTAX INTEGER { Malkin & Baker [Page 8] RFC 1389 RIP-2 MIB Extension January 1993 doNotSend (1), ripVersion1 (2), rip1Compatible (3), ripVersion2 (4) } ACCESS read-write STATUS mandatory DESCRIPTION "What the router sends on this interface. ripVersion1 implies sending RIP updates compli- ant with RFC 1058. rip1Compatible implies broadcasting RIP-2 updates using RFC 1058 route subsumption rules. ripVersion2 implies multi- casting RIP-2 updates." DEFVAL { rip1Compatible } ::= { rip2IfConfEntry 5 } rip2IfConfReceive OBJECT-TYPE SYNTAX INTEGER { rip1 (1), rip2 (2), rip1OrRip2 (3) } ACCESS read-write STATUS mandatory DESCRIPTION "This indicates which version of RIP updates are to be accepted. Note that rip2 and rip1OrRip2 implies reception of multicast pack- ets." DEFVAL { rip1OrRip2 } ::= { rip2IfConfEntry 6 } rip2IfConfDefaultMetric OBJECT-TYPE SYNTAX INTEGER ( 0..15 ) ACCESS read-write STATUS mandatory DESCRIPTION "This variable indicates what metric is to be used as a default route in RIP updates ori- ginated on this interface. A value of zero in- dicates that no default route should be ori- ginated; in this case, a default route via another router may be propagated." ::= { rip2IfConfEntry 7 } Malkin & Baker [Page 9] RFC 1389 RIP-2 MIB Extension January 1993 rip2IfConfStatus OBJECT-TYPE SYNTAX Validation ACCESS read-write STATUS mandatory DESCRIPTION "Writing invalid has the effect of deleting this interface." DEFVAL { valid } ::= { rip2IfConfEntry 8 } -- Peer Table -- The RIP Peer Group -- Implementation of this Group is Optional -- This group provides information about active peer -- relationships intended to assist in debugging. rip2PeerTable OBJECT-TYPE SYNTAX SEQUENCE OF Rip2PeerEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A list of RIP Peers." ::= { rip2 4 } rip2PeerEntry OBJECT-TYPE SYNTAX Rip2PeerEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Information regarding a single routing peer." INDEX { rip2PeerAddress, rip2PeerDomain } ::= { rip2PeerTable 1 } Rip2PeerEntry ::= SEQUENCE { rip2PeerAddress IpAddress, rip2PeerDomain RouteTag, rip2PeerLastUpdate TimeTicks, rip2PeerVersion INTEGER, rip2PeerRcvBadPackets Malkin & Baker [Page 10] RFC 1389 RIP-2 MIB Extension January 1993 Counter, rip2PeerRcvBadRoutes Counter } rip2PeerAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The IP Address of the Peer System." ::= { rip2PeerEntry 1 } rip2PeerDomain OBJECT-TYPE SYNTAX RouteTag ACCESS read-only STATUS mandatory DESCRIPTION "The value in the Routing Domain field in RIP packets received from the peer." ::= { rip2PeerEntry 2 } rip2PeerLastUpdate OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "The value of sysUpTime when the most recent RIP update was received from this system." ::= { rip2PeerEntry 3 } rip2PeerVersion OBJECT-TYPE SYNTAX INTEGER ( 0..255 ) ACCESS read-only STATUS mandatory DESCRIPTION "The RIP version number in the header of the last RIP packet received." ::= { rip2PeerEntry 4 } rip2PeerRcvBadPackets OBJECT-TYPE SYNTAX Counter ACCESS read-only Malkin & Baker [Page 11] RFC 1389 RIP-2 MIB Extension January 1993 STATUS mandatory DESCRIPTION "The number of RIP response packets from this peer discarded as invalid." ::= { rip2PeerEntry 5 } rip2PeerRcvBadRoutes OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of routes from this peer that were ignored because the entry format was invalid." ::= { rip2PeerEntry 6 } END 5. Acknowledgements This document was produced by the RIP-2 Working Group of the Internet Engineering Task Force (IETF). In addition, the comments of the following individuals are also acknowledged: Keith McCloghrie and Frank Kastenholz. 8. References [1] Cerf, V., "IAB Recommendations for the Development of Internet Network Management Standards", RFC 1052, IAB, April 1988. [2] Cerf, V., "Report of the Second Ad Hoc Network Management Review Group", RFC 1109, IAB, August 1989. [3] Rose M., and K. McCloghrie, "Structure and Identification of Management Information for TCP/IP-based internets", STD 16, RFC 1155, Performance Systems International, Hughes LAN Systems, May 1990. [4] McCloghrie K., and M. Rose, "Management Information Base for Network Management of TCP/IP-based internets", RFC 1156, Hughes LAN Systems, Performance Systems International, May 1990. [5] Case, J., Fedor, M., Schoffstall, M., and J. Davin, "Simple Network Management Protocol", STD 15, RFC 1157, SNMP Research, Performance Systems International, Performance Systems International, MIT Laboratory for Computer Science, May 1990. Malkin & Baker [Page 12] RFC 1389 RIP-2 MIB Extension January 1993 [6] Rose, M., Editor, "Management Information Base for Network Management of TCP/IP-based internets: MIB-II", RFC 1158, Performance Systems International, May 1990. [7] Information processing systems - Open Systems Interconnection - Specification of Abstract Syntax Notation One (ASN.1), International Organization for Standardization, International Standard 8824, December 1987. [8] Information processing systems - Open Systems Interconnection - Specification of Basic Encoding Rules for Abstract Notation One (ASN.1), International Organization for Standardization, International Standard 8825, December 1987. [9] Rose, M., and K. McCloghrie, Editors, "Concise MIB Definitions", STD 16, RFC 1212, Performance Systems International, Hughes LAN Systems, March 1991. [10] Malkin, G., "RIP Version 2 - Carrying Additional Information", RFC 1388, Xylogics, Inc., January 1993. [11] Malkin, G., "RIP Version 2 Protocol Analysis", RFC 1387, Xylogics, Inc., January 1993. 7. Security Considerations Security issues are not discussed in this memo. 8. Authors' Addresses Gary Malkin Xylogics, Inc. 53 Third Avenue Burlington, MA 01803 Phone: (617) 272-8140 EMail: gmalkin@Xylogics.COM Fred Baker Advanced Computer Communications 315 Bollay Drive Santa Barbara, California 93117-6014 Phone: (805) 685-4455 EMail: fbaker@acc.com Malkin & Baker [Page 13]