    Network Working Group                                          F. Baker
    Request for Comments: 1253                                          ACC
    Obsoletes: RFC 1252                                           R. Coltun
                                                    Computer Science Center
                                                                August 1991

                   OSPF Version 2 Management Information Base

    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.
       This memo replaces RFC 1252 which contained an error in the
       "standard-mib" number assignment in Section 5.  Distribution of this
       memo is unlimited.

    Table of Contents

       1. Abstract .............................................    2
       2. The Network Management Framework......................    2
       3. Objects ..............................................    2
       3.1 Format of Definitions ...............................    3
       4. Overview .............................................    3
       4.1 Textual Conventions .................................    3
       4.2 Structure of MIB ....................................    3
       4.2.1 General Variables .................................    4
       4.2.2 Area Data Structure and Area Stub Metric Table ....    4
       4.2.3 Link State Database ...............................    4
       4.2.4 Address Table and Host Tables .....................    4
       4.2.5 Interface and Interface Metric Tables .............    4
       4.2.6 Virtual Interface Table ...........................    4
       4.2.7 Neighbor and Virtual Neighbor Tables ..............    4
       4.3 Conceptual Row Creation .............................    5
       4.4 Default Configuration ...............................    5
       5. Definitions ..........................................    7
       5.1 OSPF General Variables ..............................    8
       5.2 OSPF Area Data Structure ............................   11
       5.3 OSPF Area Default Metric Table ......................   14
       5.4 OSPF Link State Database ............................   16
       5.5 OSPF Address Range Table ............................   19
       5.6 OSPF Host Table .....................................   21
       5.7 OSPF Interface Table ................................   23
       5.8 OSPF Interface Metric Table .........................   28
       5.9 OSPF Virtual Interface Table ........................   31
       5.10 OSPF Neighbor Table ................................   34

    Baker & Coltun                                                  [Page 1]

    RFC 1253                   OSPF Version 2 MIB                August 1991

       5.11 OSPF Virtual Neighbor Table ........................   38
       6. Acknowledgements .....................................   40
       7. References ...........................................   40
       8. Security Considerations...............................   41
       9. Authors' Addresses....................................   42

    1.  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 OSPF Version 2.

    2.  The Network Management Framework

       The Internet-standard Network Management Framework consists of three
       components.  They are:

          RFC 1155 which defines the SMI, the mechanisms used for describing
          and naming objects for the purpose of management.  RFC 1212
          defines a more concise description mechanism, which is wholly
          consistent with the SMI.

          RFC 1156 which defines MIB-I, the core set of managed objects for
          the Internet suite of protocols.  RFC 1213, defines MIB-II, an
          evolution of MIB-I based on implementation experience and new
          operational requirements.

          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.

    3.  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

    Baker & Coltun                                                  [Page 2]

    RFC 1253                   OSPF Version 2 MIB                August 1991

       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.

    3.1.  Format of Definitions

       Section 5 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].

    4.  Overview

    4.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 AreaID, RouterID, TOSType, Metric, BigMetric,
       TruthValue, Status, Validation, PositiveInteger, HelloRange,
       UpToMaxAge, InterfaceIndex, and DesignatedRouterPriority.

    4.2.  Structure of MIB

       The MIB is composed of the following sections:

              General Variables
              Area Data Structure
              Area Stub Metric Table
              Link State Database

    Baker & Coltun                                                  [Page 3]

    RFC 1253                   OSPF Version 2 MIB                August 1991

              Address Range Table
              Host Table
              Interface Table
              Interface Metric Table
              Virtual Interface Table
              Neighbor Table
              Virtual Neighbor Table

    4.2.1.  General Variables

       The General Variables are about what they sound like; variables which
       are global to the OSPF Process.

    4.2.2.  Area Data Structure and Area Stub Metric Table

       The Area Data Structure describes the OSPF Areas that the router
       participates in.  The Area Stub Metric Table describes the metrics
       advertised into a stub area by the default router(s).

    4.2.3.  Link State Database

       The Link State Database is provided primarily to provide detailed
       information for network debugging.

    4.2.4.  Address Table and Host Tables

       The Address Range Table and Host Table are provided to view
       configured Network Summary and Host Route information.

    4.2.5.  Interface and Interface Metric Tables

       The Interface Table and the Interface Metric Table together describe
       the various IP interfaces to OSPF.  The metrics are placed in
       separate tables in order to simplify dealing with multiple types of
       service, and to provide flexibility in the event that the IP TOS
       definition is changed in the future.  A Default Value specification
       is supplied for the TOS 0 (default) metric.

    4.2.6.  Virtual Interface Table

       Likewise, the Virtual Interface Table describe virtual links to the
       OSPF Process.

    4.2.7.  Neighbor and Virtual Neighbor Tables

       The Neighbor Table and the Virtual Neighbor Table describe the
       neighbors to the OSPF Process.

    Baker & Coltun                                                  [Page 4]

    RFC 1253                   OSPF Version 2 MIB                August 1991

    4.3.  Conceptual Row Creation

       For the benefit of row-creation in "conceptual" (see [9]) tables,
       DEFVAL (Default Value) clauses are included in the definitions in
       section 5, suggesting values which an agent should use for instances
       of variables which need to be created due to a Set-Request, but which
       are not specified in the Set- Request.  DEFVAL clauses have not been
       specified for some objects which are read-only, implying that they
       are zeroed upon row creation.  These objects are of the SYNTAX
       Counter or Gauge.

       For those objects not having a DEFVAL clause, both management
       stations and agents should heed the Robustness Principle of the
       Internet (see RFC-791):

          "be liberal in what you accept, conservative in what
          you send"

       That is, management stations should include as many of these columnar
       objects as possible (e.g., all read-write objects) in a Set-Request
       when creating a conceptual row; agents should accept a Set-Request
       with as few of these as they need (e.g., the minimum contents of a
       row creating SET consists of those objects for which, as they cannot
       be intuited, no default is specified.).

       There are numerous read-write objects in this MIB, as it is designed
       for SNMP management of the protocol, not just SNMP monitoring of its
       state.  However, in the absence of a standard SNMP Security
       architecture, it is acceptable for implementations to implement these
       as read-only with an alternative interface for their modification.

    4.4.  Default Configuration

       OSPF is a powerful routing protocol, equipped with features to handle
       virtually any configuration requirement that might reasonably be
       found within an Autonomous System.  With this power comes a fair
       degree of complexity, which the sheer number of objects in the MIB
       will attest to.  Care has therefore been taken, in constructing this
       MIB, to define default values for virtually every object, to minimize
       the amount of parameterization required in the typical case.  That
       default configuration is as follows:

       Given the following assumptions:

                - IP has already been configured

                - The ifTable has already been configured

    Baker & Coltun                                                  [Page 5]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                - ifSpeed is estimated by the interface drivers

                - The OSPF Process automatically discovers all IP
                Interfaces and creates corresponding OSPF Interfaces

                - The TOS 0 metrics are autonomously derived from
                ifSpeed

                - The OSPF Process automatically creates the Areas
                required for the Interfaces

         The simplest configuration of an OSPF process requires that:

                - The OSPF Process be Enabled.

         This can be accomplished with a single SET:

                           ospfAdminStat := enabled.

         The configured system will have the following attributes:

                - The RouterID will be one of the IP addresses of the
                device

                - The device will be neither an Area Border Router nor
                an Autonomous System Border Router.

                - Every IP Interface, with or without an address, will
                be an OSPF Interface.

                - The AreaID of each interface will be 0.0.0.0, the
                Backbone.

                - Authentication will be disabled

                - All Broadcast and Point to Point interfaces will be
                operational.  NBMA Interfaces require the configuration
                of at least one neighbor.

                - Timers on all direct interfaces will be:
                         Hello Interval:        10 seconds
                         Dead Timeout:          40 Seconds
                         Retransmission:         5 Seconds
                         Transit Delay:          1 Second
                         Poll Interval:        120 Seconds

               - no direct links to hosts will be configured.

    Baker & Coltun                                                  [Page 6]

    RFC 1253                   OSPF Version 2 MIB                August 1991

               - no addresses will be summarized

               - Metrics, being a measure of bit duration, are
               unambiguous and intelligent.

               - No Virtual Links will be configured.

    5.  Definitions

         RFC1253-MIB DEFINITIONS ::= BEGIN

         IMPORTS
                 Counter, Gauge, IpAddress
                         FROM RFC1155-SMI
                 mib-2
                         FROM RFC1213-MIB
                 OBJECT-TYPE
                         FROM RFC-1212;

         --  This MIB module uses the extended OBJECT-TYPE macro as
         --  defined in [9].

                 ospf OBJECT IDENTIFIER ::= { mib-2 14 }

         --  The Area ID, in OSPF, has the same format as an IP Address,
         --  but has the function of defining a summarization point for
         --  Link State Advertisements

                 AreaID ::= IpAddress

         --  The Router ID, in OSPF, has the same format as an IP Address,
         --  but identifies the router independent of its IP Address.

                 RouterID ::= IpAddress

         --  The OSPF Metric is defined as an unsigned value in the range

                 Metric    ::= INTEGER (1..'FFFF'h)
                 BigMetric ::= INTEGER (1..'FFFFFF'h)

         --  Boolean Values

                 TruthValue ::= INTEGER { true (1), false (2) }

         --  Status Values

                 Status ::= INTEGER { enabled (1), disabled (2) }

    Baker & Coltun                                                  [Page 7]

    RFC 1253                   OSPF Version 2 MIB                August 1991

         --  Row Creation/Deletion Values

                 Validation ::= INTEGER { valid (1), invalid (2) }

         --  Time Durations measured in seconds

                 PositiveInteger ::= INTEGER (1..'FFFFFFFF'h)
                 HelloRange      ::= INTEGER (1..'FFFF'h)
                 UpToMaxAge      ::= INTEGER (1..3600)

         --  The range of ifIndex, i.e. (1..ifNumber)

                 InterfaceIndex ::= INTEGER

         --  Potential Priorities for the Designated Router Election

                 DesignatedRouterPriority ::= INTEGER (0..'FF'h)

         --  Type of Service is defined as a mapping to the IP Type of
         --  Service Flags as defined in the Router Requirements
         --  Document:
         --
         --      D => Low Delay          R => Reliable Route
         --      T => High Bandwidth

         --  D T R   TOS      D T R   TOS
         --  0 0 0 =>  0      0 0 1 =>  4
         --  0 1 0 =>  8      0 1 1 => 12
         --  1 0 0 => 16      1 0 1 => 20
         --  1 1 0 => 24      1 1 1 => 28

         --  The remaining values are left for future definition.

                 TOSType ::= INTEGER (0..31)

         --  OSPF General Variables

         --      These parameters apply globally to the Router's
         --      OSPF Process.

         ospfGeneralGroup OBJECT IDENTIFIER ::= { ospf 1 }

         ospfRouterId OBJECT-TYPE
             SYNTAX   RouterID
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "A 32-bit integer uniquely identifying the router in

    Baker & Coltun                                                  [Page 8]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                the Autonomous System.

                By convention, to ensure uniqueness, this should
                default to the value of one of the router's IP
                interface addresses."
             REFERENCE
                "OSPF Version 2, C.1 Global parameters"
             ::= { ospfGeneralGroup 1 }

         ospfAdminStat OBJECT-TYPE
             SYNTAX   Status
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The administrative status of OSPF in the router.  The
                value 'enabled' denotes that the OSPF Process is active
                on at least one interface; 'disabled' disables it on
                all interfaces."
             ::= { ospfGeneralGroup 2 }

         ospfVersionNumber OBJECT-TYPE
             SYNTAX   INTEGER { version2 (2) }
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The current version number of the OSPF protocol is 2."
             REFERENCE
                "OSPF Version 2, Title"
             ::= { ospfGeneralGroup 3 }

         ospfAreaBdrRtrStatus OBJECT-TYPE
             SYNTAX   TruthValue
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "A flag to note whether this router is an area border
                router."
             REFERENCE
                "OSPF Version 2, Section 3 Splitting the AS into Areas"
             ::= { ospfGeneralGroup 4 }

         ospfASBdrRtrStatus OBJECT-TYPE
             SYNTAX   TruthValue
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "A flag to note whether this router is an Autonomous
                System border router."

    Baker & Coltun                                                  [Page 9]

    RFC 1253                   OSPF Version 2 MIB                August 1991

             REFERENCE
                "OSPF Version 2, Section 3.3 Classification of routers"
             ::= { ospfGeneralGroup 5 }

         ospfExternLSACount OBJECT-TYPE
             SYNTAX   Gauge
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The number of external (LS type 5) link-state
                advertisements in the link-state database."
             REFERENCE
                "OSPF Version 2, Appendix A.4.5 AS external link
                advertisements"
             ::= { ospfGeneralGroup 6 }

         ospfExternLSACksumSum OBJECT-TYPE
             SYNTAX   INTEGER
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The 32-bit unsigned sum of the LS checksums of the
                external link-state advertisements contained in the
                link-state database.  This sum can be used to determine
                if there has been a change in a router's link state
                database, and to compare the link-state database of two
                routers."
             ::= { ospfGeneralGroup 7 }

         ospfTOSSupport OBJECT-TYPE
             SYNTAX   TruthValue
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The router's support for type-of-service routing."
             REFERENCE
                "OSPF Version 2, Appendix F.1.2 Optional TOS support"
             ::= { ospfGeneralGroup 8 }

         ospfOriginateNewLSAs OBJECT-TYPE
             SYNTAX   Counter
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The number of new link-state advertisements that have
                been originated.  This number is incremented each time
                the router originates a new LSA."
             ::= { ospfGeneralGroup 9 }

    Baker & Coltun                                                 [Page 10]

    RFC 1253                   OSPF Version 2 MIB                August 1991

         ospfRxNewLSAs OBJECT-TYPE
             SYNTAX   Counter
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The number of link-state advertisements received
                determined to be new instantiations.  This number does
                not include newer instantiations of self-originated
                link-state advertisements."
             ::= { ospfGeneralGroup 10 }

         --      The OSPF Area Data Structure contains information
         --      regarding the various areas. The interfaces and
         --      virtual links are configured as part of these areas.
         --      Area 0.0.0.0, by definition, is the Backbone Area

         ospfAreaTable OBJECT-TYPE
             SYNTAX   SEQUENCE OF OspfAreaEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "Information describing the configured parameters and
                cumulative statistics of the router's attached areas."
             REFERENCE
                "OSPF Version 2, Section 6  The Area Data Structure"
             ::= { ospf 2 }

         ospfAreaEntry OBJECT-TYPE
             SYNTAX   OspfAreaEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "Information describing the configured parameters and
                cumulative statistics of one of the router's attached
                areas."
             INDEX { ospfAreaID }
             ::= { ospfAreaTable 1 }

         OspfAreaEntry ::=
             SEQUENCE {
                 ospfAreaId
                     AreaID,
                 ospfAuthType
                     INTEGER,
                 ospfImportASExtern
                     TruthValue,
                 ospfSpfRuns

    Baker & Coltun                                                 [Page 11]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                     Counter,
                 ospfAreaBdrRtrCount
                     Gauge,
                 ospfASBdrRtrCount
                     Gauge,
                 ospfLSACount
                     Gauge,
                 ospfAreaLSACksumSum
                     INTEGER
             }

         ospfAreaId OBJECT-TYPE
             SYNTAX   AreaID
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "A 32-bit integer uniquely identifying an area.  Area
                ID 0.0.0.0 is used for the OSPF backbone."
             REFERENCE
                "OSPF Version 2, Appendix C.2 Area parameters"
             ::= { ospfAreaEntry 1 }

         ospfAuthType OBJECT-TYPE
             SYNTAX   INTEGER
                         -- none (0),
                         -- simplePassword (1)
                         -- reserved for specification by IANA (> 1)
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The authentication type specified for an area.
                Additional authentication types may be assigned locally
                on a per Area basis."
             REFERENCE
                "OSPF Version 2, Appendix E Authentication"
             DEFVAL { 0 }        -- no authentication, by default
             ::= { ospfAreaEntry 2 }

         ospfImportASExtern OBJECT-TYPE
             SYNTAX   TruthValue
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The area's support for importing AS external link-
                state advertisements."
             REFERENCE
                "OSPF Version 2, Appendix C.2 Area parameters"
             DEFVAL { true }

    Baker & Coltun                                                 [Page 12]

    RFC 1253                   OSPF Version 2 MIB                August 1991

             ::= { ospfAreaEntry 3 }

         ospfSpfRuns OBJECT-TYPE
             SYNTAX   Counter
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The number of times that the intra-area route table
                has been calculated using this area's link-state
                database.  This is typically done using Dijkstra's
                algorithm."
             DEFVAL   { 0 }
             ::= { ospfAreaEntry 4 }

         ospfAreaBdrRtrCount OBJECT-TYPE
             SYNTAX   Gauge
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The total number of area border routers reachable
                within this area.  This is initially zero, and is
                calculated in each SPF Pass."
             DEFVAL   { 0 }
             ::= { ospfAreaEntry 5 }

         ospfASBdrRtrCount OBJECT-TYPE
             SYNTAX   Gauge
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The total number of Autonomous System border routers
                reachable within this area.  This is initially zero,
                and is calculated in each SPF Pass."
             DEFVAL   { 0 }
             ::= { ospfAreaEntry 6 }

         ospfAreaLSACount OBJECT-TYPE
             SYNTAX   Gauge
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The total number of link-state advertisements in this
                area's link-state database, excluding AS External
                LSA's."
             DEFVAL   { 0 }
             ::= { ospfAreaEntry 7 }

    Baker & Coltun                                                 [Page 13]

    RFC 1253                   OSPF Version 2 MIB                August 1991

         ospfAreaLSACksumSum OBJECT-TYPE
             SYNTAX   INTEGER
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The 32-bit unsigned sum of the link-state
                advertisements' LS checksums contained in this area's
                link-state database.  This sum excludes external (LS
                type 5) link-state advertisements.  The sum can be used
                to determine if there has been a change in a router's
                link state database, and to compare the link-state
                database of two routers."
             DEFVAL   { 0 }
             ::= { ospfAreaEntry 8 }

         --  OSPF Area Default Metric Table

         --      The OSPF Area Default Metric Table describes the metrics
         --      that a default Area Border Router will advertise into a
         --      Stub area.

         ospfStubAreaTable OBJECT-TYPE
             SYNTAX   SEQUENCE OF OspfStubAreaEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "The set of metrics that will be advertised by a
                default Area Border Router into a stub area."
             REFERENCE
                "OSPF Version 2, Appendix C.2, Area Parameters"
             ::= { ospf 3 }

         ospfStubAreaEntry OBJECT-TYPE
             SYNTAX   OspfStubAreaEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "The metric for a given Type of Service that will be
                advertised by a default Area Border Router into a stub
                area."
             REFERENCE
                "OSPF Version 2, Appendix C.2, Area Parameters"
             INDEX { ospfStubAreaID, ospfStubTOS }
             ::= { ospfStubAreaTable 1 }

    Baker & Coltun                                                 [Page 14]

    RFC 1253                   OSPF Version 2 MIB                August 1991

         OspfStubAreaEntry ::=
             SEQUENCE {
                 ospfStubAreaID
                     AreaID,
                 ospfStubTOS
                     TOSType,
                 ospfStubMetric
                     BigMetric,
                 ospfStubStatus
                     Validation
             }

         ospfStubAreaID OBJECT-TYPE
             SYNTAX   AreaID
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The 32 bit identifier for the Stub Area.  On creation,
                this can be derived from the instance."
             ::= { ospfStubAreaEntry 1 }

         ospfStubTOS OBJECT-TYPE
             SYNTAX   TOSType
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The Type of Service associated with the metric.  On
                creation, this can be derived from the instance."

             ::= { ospfStubAreaEntry 2 }

         ospfStubMetric OBJECT-TYPE
             SYNTAX   BigMetric
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The metric value applied at the indicated type of
                service.  By default, this equals the least metric at
                the type of service among the interfaces to other
                areas."
             ::= { ospfStubAreaEntry 3 }

         ospfStubStatus OBJECT-TYPE
             SYNTAX   Validation
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "This variable displays the validity or invalidity of

    Baker & Coltun                                                 [Page 15]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                the entry.  Setting it to 'invalid' has the effect of
                rendering it inoperative.  The internal effect (row
                removal) is implementation dependent."
             DEFVAL   { valid }
             ::= { ospfStubAreaEntry 4 }

         --  OSPF Link State Database

         --      The Link State Database contains the Link State
         --      Advertisements from throughout the areas that the
         --      device is attached to.

         ospfLsdbTable OBJECT-TYPE
             SYNTAX   SEQUENCE OF OspfLsdbEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "The OSPF Process's Links State Database."
             REFERENCE
                "OSPF Version 2, Section 12 Link State Advertisements"
             ::= { ospf 4 }

         ospfLsdbEntry OBJECT-TYPE
             SYNTAX   OspfLsdbEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "A single Link State Advertisement."
             INDEX { ospfLsdbAreaId, ospfLsdbType,
                     ospfLsdbLSID, ospfLsdbRouterId }
             ::= { ospfLsdbTable 1 }

         OspfLsdbEntry ::=
             SEQUENCE {
                 ospfLsdbAreaId
                     AreaID,
                 ospfLsdbType
                     INTEGER,
                 ospfLsdbLSID
                     IpAddress,
                 ospfLsdbRouterId
                     RouterID,
                 ospfLsdbSequence
                     INTEGER,
                 ospfLsdbAge
                     INTEGER,
                 ospfLsdbChecksum

    Baker & Coltun                                                 [Page 16]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                     INTEGER,
                 ospfLsdbAdvertisement
                     OCTET STRING
             }

         ospfLsdbAreaId OBJECT-TYPE
             SYNTAX   AreaID
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The 32 bit identifier of the Area from which the LSA
                was received."
             REFERENCE
                "OSPF Version 2, Appendix C.2 Area parameters"
             ::= { ospfLsdbEntry 1 }

         ospfLsdbType OBJECT-TYPE
             SYNTAX   INTEGER {
                         routerLink (1),
                         networkLink (2),
                         summaryLink (3),
                         asSummaryLink (4),
                         asExternalLink (5)
                      }
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The type of the link state advertisement.  Each link
                state type has a separate advertisement format."
             REFERENCE
                "OSPF Version 2, Appendix A.4.1 The Link State
                Advertisement header"
             ::= { ospfLsdbEntry 2 }

         ospfLsdbLSID OBJECT-TYPE
             SYNTAX   IpAddress
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The Link State ID is an LS Type Specific field
                containing either a Router ID or an IP Address; it
                identifies the piece of the routing domain that is
                being described by the advertisement."
             REFERENCE
                "OSPF Version 2, Section 12.1.4 Link State ID"
             ::= { ospfLsdbEntry 3 }

    Baker & Coltun                                                 [Page 17]

    RFC 1253                   OSPF Version 2 MIB                August 1991

         ospfLsdbRouterId OBJECT-TYPE
             SYNTAX   RouterID
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The 32 bit number that uniquely identifies the
                originating router in the Autonomous System."
             REFERENCE
                "OSPF Version 2, Appendix C.1 Global parameters"
             ::= { ospfLsdbEntry 4 }

         --  Note that the OSPF Sequence Number is a 32 bit signed
         --  integer.  It starts with the value '80000001'h,
         --  or -'7FFFFFFF'h, and increments until '7FFFFFFF'h
         --  Thus, a typical sequence number will be very negative.

         ospfLsdbSequence OBJECT-TYPE
             SYNTAX   INTEGER
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The sequence number field is a signed 32-bit integer.
                It is used to detect old and duplicate link state
                advertisements.  The space of sequence numbers is
                linearly ordered.  The larger the sequence number the
                more recent the advertisement."
             REFERENCE
                "OSPF Version 2, Section 12.1.6 LS sequence number"
             ::= { ospfLsdbEntry 5 }

         ospfLsdbAge OBJECT-TYPE
             SYNTAX   INTEGER    -- Should be 0..MaxAge
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "This field is the age of the link state advertisement
                in seconds."
             REFERENCE
                "OSPF Version 2, Section 12.1.1 LS age"
             ::= { ospfLsdbEntry 6 }

         ospfLsdbChecksum OBJECT-TYPE
             SYNTAX   INTEGER
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "This field is the checksum of the complete contents of
                the advertisement, excepting the age field.  The age

    Baker & Coltun                                                 [Page 18]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                field is excepted so that an advertisement's age can be
                incremented without updating the checksum.  The
                checksum used is the same that is used for ISO
                connectionless datagrams; it is commonly referred to as
                the Fletcher checksum."
             REFERENCE
                "OSPF Version 2, Section 12.1.7 LS checksum"
             ::= { ospfLsdbEntry 7 }

         ospfLsdbAdvertisement OBJECT-TYPE
             SYNTAX   OCTET STRING
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The entire Link State Advertisement, including its
                header."
             REFERENCE
                "OSPF Version 2, Section 12 Link State Advertisements"
             ::= { ospfLsdbEntry 8 }

         --  Address Range Table

         --      The Address Range Table acts as an adjunct to the Area
         --      Table; It describes those Address Range Summaries that
         --      are configured to be propagated from an Area to reduce
         --      the amount of information about it which is known beyond
         --      its borders.

         ospfAreaRangeTable OBJECT-TYPE
             SYNTAX   SEQUENCE OF OspfAreaRangeEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "A range if IP addresses specified by an IP address/IP
                network mask pair.  For example, class B address range
                of X.X.X.X with a network mask of 255.255.0.0 includes
                all IP addresses from X.X.0.0 to X.X.255.255"
             REFERENCE
                "OSPF Version 2, Appendix C.2  Area parameters"
             ::= { ospf 5 }

         ospfAreaRangeEntry OBJECT-TYPE
             SYNTAX   OspfAreaRangeEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "A range if IP addresses specified by an IP address/IP

    Baker & Coltun                                                 [Page 19]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                network mask pair.  For example, class B address range
                of X.X.X.X with a network mask of 255.255.0.0 includes
                all IP addresses from X.X.0.0 to X.X.255.255"
             REFERENCE
                "OSPF Version 2, Appendix C.2  Area parameters"
             INDEX { ospfAreaRangeAreaID, ospfAreaRangeNet }
             ::= { ospfAreaRangeTable 1 }

         OspfAreaRangeEntry ::=
             SEQUENCE {
                 ospfAreaRangeAreaID
                     AreaID,
                 ospfAreaRangeNet
                     IpAddress,
                 ospfAreaRangeMask
                     IpAddress,
                 ospfAreaRangeStatus
                     Validation
             }

         ospfAreaRangeAreaID OBJECT-TYPE
             SYNTAX   AreaID
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The Area the Address Range is to be found within."
             REFERENCE
                "OSPF Version 2, Appendix C.2 Area parameters"
             ::= { ospfAreaRangeEntry 1 }

         ospfAreaRangeNet OBJECT-TYPE
             SYNTAX   IpAddress
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The IP Address of the Net or Subnet indicated by the
                range."
             REFERENCE
                "OSPF Version 2, Appendix C.2 Area parameters"
             ::= { ospfAreaRangeEntry 2 }

         ospfAreaRangeMask OBJECT-TYPE
             SYNTAX   IpAddress
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The Subnet Mask that pertains to the Net or Subnet."
             REFERENCE

    Baker & Coltun                                                 [Page 20]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                "OSPF Version 2, Appendix C.2 Area parameters"
             ::= { ospfAreaRangeEntry 3 }

         ospfAreaRangeStatus OBJECT-TYPE
             SYNTAX   Validation
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "This variable displays the validity or invalidity of
                the entry.  Setting it to 'invalid' has the effect of
                rendering it inoperative.  The internal effect (row
                removal) is implementation dependent."
             DEFVAL   { valid }
             ::= { ospfAreaRangeEntry 4 }

         --  OSPF Host Table

         --      The Host/Metric Table indicates what hosts are directly
         --      attached to the Router, and what metrics and types of
         --      service should be advertised for them.

         ospfHostTable OBJECT-TYPE
             SYNTAX   SEQUENCE OF OspfHostEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "The list of Hosts, and their metrics, that the router
                will advertise as host routes."
             REFERENCE
                "OSPF Version 2, Appendix C.6  Host route parameters"
             ::= { ospf 6 }

         ospfHostEntry OBJECT-TYPE
             SYNTAX   OspfHostEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "A metric to be advertised, for a given type of service,
                when a given host is reachable."
             INDEX { ospfHostIpAddress, ospfHostTOS }
             ::= { ospfHostTable 1 }

         OspfHostEntry ::=
             SEQUENCE {
                 ospfHostIpAddress
                     IpAddress,
                 ospfHostTOS

    Baker & Coltun                                                 [Page 21]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                     TOSType,
                 ospfHostMetric
                     Metric,
                 ospfHostStatus
                     Validation
             }

         ospfHostIpAddress OBJECT-TYPE
             SYNTAX   IpAddress
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The IP Address of the Host."
             REFERENCE
                "OSPF Version 2, Appendix C.6 Host route parameters"
             ::= { ospfHostEntry 1 }

         ospfHostTOS OBJECT-TYPE
             SYNTAX   TOSType
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The Type of Service of the route being configured."
             REFERENCE
                "OSPF Version 2, Appendix C.6 Host route parameters"
             ::= { ospfHostEntry 2 }

         ospfHostMetric OBJECT-TYPE
             SYNTAX   Metric
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The Metric to be advertised."
             REFERENCE
                "OSPF Version 2, Appendix C.6 Host route parameters"
             ::= { ospfHostEntry 3 }

         ospfHostStatus OBJECT-TYPE
             SYNTAX   Validation
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "This variable displays the validity or invalidity of
                the entry.  Setting it to 'invalid' has the effect of
                rendering it inoperative.  The internal effect (row
                removal) is implementation dependent."
             DEFVAL   { valid }
             ::= { ospfHostEntry 4 }

    Baker & Coltun                                                 [Page 22]

    RFC 1253                   OSPF Version 2 MIB                August 1991

         --  OSPF Interface Table

         --      The OSPF Interface Table augments the ifTable with OSPF
         --      specific information.

         ospfIfTable OBJECT-TYPE
             SYNTAX   SEQUENCE OF OspfIfEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "The OSPF Interface Table describes the interfaces from
                the viewpoint of OSPF."
             REFERENCE
                "OSPF Version 2, Appendix C.3  Router interface
                parameters"
             ::= { ospf 7 }

         ospfIfEntry OBJECT-TYPE
             SYNTAX   OspfIfEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "The OSPF Interface Entry describes one interface from
                the viewpoint of OSPF."
             INDEX { ospfIfIpAddress, ospfAddressLessIf }
             ::= { ospfIfTable 1 }

         OspfIfEntry ::=
             SEQUENCE {
                 ospfIfIpAddress
                     IpAddress,
                 ospfAddressLessIf
                     INTEGER,
                 ospfIfAreaId
                     AreaID,
                 ospfIfType
                     INTEGER,
                 ospfIfAdminStat
                     Status,
                 ospfIfRtrPriority
                     DesignatedRouterPriority,
                 ospfIfTransitDelay
                     UpToMaxAge,
                 ospfIfRetransInterval
                     UpToMaxAge,
                 ospfIfHelloInterval
                     HelloRange,
                 ospfIfRtrDeadInterval

    Baker & Coltun                                                 [Page 23]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                     PositiveInteger,
                 ospfIfPollInterval
                     PositiveInteger,
                 ospfIfState
                     INTEGER,
                 ospfIfDesignatedRouter
                     IpAddress,
                 ospfIfBackupDesignatedRouter
                     IpAddress,
                 ospfIfEvents
                     Counter,
                 ospfIfAuthKey
                     OCTET STRING
             }

         ospfIfIpAddress OBJECT-TYPE
             SYNTAX   IpAddress
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The IP address of this OSPF interface."
             ::= { ospfIfEntry 1 }

         ospfAddressLessIf OBJECT-TYPE
             SYNTAX   INTEGER
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "For the purpose of easing the instancing of addressed
                and addressless interfaces; This variable takes the
                value 0 on interfaces with IP Addresses, and the
                corresponding value of ifIndex for interfaces having no
                IP Address."
             ::= { ospfIfEntry 2 }

         ospfIfAreaId OBJECT-TYPE
             SYNTAX   AreaID
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "A 32-bit integer uniquely identifying the area to
                which the interface connects.  Area ID 0.0.0.0 is used
                for the OSPF backbone."
             DEFVAL   { '00000000'H }    -- 0.0.0.0
             ::= { ospfIfEntry 3 }

    Baker & Coltun                                                 [Page 24]

    RFC 1253                   OSPF Version 2 MIB                August 1991

         ospfIfType OBJECT-TYPE
             SYNTAX   INTEGER {
                         broadcast (1),
                         nbma (2),
                         pointToPoint (3)
                      }
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The OSPF interface type.

                By way of a default, this field may be intuited from
                the corresponding value of ifType.  Broadcast LANs,
                such as Ethernet and IEEE 802.5, take the value
                'broadcast', X.25, Frame Relay, and similar
                technologies take the value 'nbma', and links that are
                definitively point to point take the value
                'pointToPoint'."
             ::= { ospfIfEntry 4 }

         ospfIfAdminStat OBJECT-TYPE
             SYNTAX   Status
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The OSPF interface's administrative status.  The value
                'enabled' denotes that neighbor relationships may be
                formed on the interface, and the interface will be
                advertised as an internal route to some area.  The
                value 'disabled' denotes that the interface is external
                to OSPF."
             DEFVAL { enabled }
             ::= { ospfIfEntry 5 }

         ospfIfRtrPriority OBJECT-TYPE
             SYNTAX   DesignatedRouterPriority
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The priority of this interface.  Used in multi-access
                networks, this field is used in the designated router
                election algorithm.  The value 0 signifies that the
                router is not eligible to become the designated router
                on this particular network.  In the event of a tie in
                this value, routers will use their router id as a tie
                breaker."
             DEFVAL { 1 }
             ::= { ospfIfEntry 6 }

    Baker & Coltun                                                 [Page 25]

    RFC 1253                   OSPF Version 2 MIB                August 1991

         ospfIfTransitDelay OBJECT-TYPE
             SYNTAX   UpToMaxAge
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The estimated number of seconds it takes to transmit a
                link- state update packet over this interface."
             DEFVAL { 1 }
             ::= { ospfIfEntry 7 }

         ospfIfRetransInterval OBJECT-TYPE
             SYNTAX   UpToMaxAge
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The number of seconds between link-state advertisement
                retransmissions, for adjacencies belonging to this
                interface.  This value is also used when retransmitting
                database description and link-state request packets."
             DEFVAL { 5 }
             ::= { ospfIfEntry 8 }

         ospfIfHelloInterval OBJECT-TYPE
             SYNTAX   HelloRange
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The length of time, in seconds, between the Hello
                packets that the router sends on the interface.  This
                value must be the same for all routers attached to a
                common network."
             DEFVAL { 10 }
             ::= { ospfIfEntry 9 }

         ospfIfRtrDeadInterval OBJECT-TYPE
             SYNTAX   PositiveInteger
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The number of seconds that a router's Hello packets
                have not been seen before it's neighbors declare the
                router down.  This should be some multiple of the Hello
                interval.  This value must be the same for all routers
                attached to a common network."
             DEFVAL { 40 }
             ::= { ospfIfEntry 10 }

    Baker & Coltun                                                 [Page 26]

    RFC 1253                   OSPF Version 2 MIB                August 1991

         ospfIfPollInterval OBJECT-TYPE
             SYNTAX   PositiveInteger
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The larger time interval, in seconds, between the
                Hello packets sent to an inactive non-broadcast multi-
                access neighbor."
             DEFVAL { 120 }
             ::= { ospfIfEntry 11 }

         ospfIfState OBJECT-TYPE
             SYNTAX   INTEGER {
                         down (1),
                         loopback (2),
                         waiting (3),
                         pointToPoint (4),
                         designatedRouter (5),
                         backupDesignatedRouter (6),
                         otherDesignatedRouter (7)
                      }
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The OSPF Interface State."
             DEFVAL { down }
             ::= { ospfIfEntry 12 }

         ospfIfDesignatedRouter OBJECT-TYPE
             SYNTAX   IpAddress
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The IP Address of the Designated Router."
             DEFVAL   { '00000000'H }    -- 0.0.0.0
             ::= { ospfIfEntry 13 }

         ospfIfBackupDesignatedRouter OBJECT-TYPE
             SYNTAX   IpAddress
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The IP Address of the Backup Designated Router."
             DEFVAL   { '00000000'H }    -- 0.0.0.0
             ::= { ospfIfEntry 14 }

    Baker & Coltun                                                 [Page 27]

    RFC 1253                   OSPF Version 2 MIB                August 1991

         ospfIfEvents OBJECT-TYPE
             SYNTAX   Counter
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The number of times this OSPF interface has changed
                its state, or an error has occurred."
             DEFVAL   { 0 }
             ::= { ospfIfEntry 15 }

         ospfIfAuthKey OBJECT-TYPE
             SYNTAX   OCTET STRING
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The Authentication Key.  If the Area's Authorization
                Type is simplePassword, and the key length is shorter
                than 8 octets, the agent will left adjust and zero fill
                to 8 octets.

                When read, ospfIfAuthKey always returns an Octet String
                of length zero."
             REFERENCE
                "OSPF Version 2, Section 9 The Interface Data
                Structure"
             DEFVAL   { '0000000000000000'H }    -- 0.0.0.0.0.0.0.0
             ::= { ospfIfEntry 16 }

         --  OSPF Interface Metric Table

         --      The Metric Table describes the metrics to be advertised
         --      for a specified interface at the various types of service.
         --      As such, this table is an adjunct of the OSPF Interface
         --      Table.

         -- Types of service, as defined by RFC 791, have the ability
         -- to request low delay, high bandwidth, or reliable linkage.

         -- For the purposes of this specification, the measure of
         -- bandwidth

         --      Metric = 10^8 / ifSpeed

         -- is the default value.  For multiple link interfaces, note
         -- that ifSpeed is the sum of the individual link speeds.
         -- This yields a number having the following typical values:

    Baker & Coltun                                                 [Page 28]

    RFC 1253                   OSPF Version 2 MIB                August 1991

         --      Network Type/bit rate   Metric

         --      >= 100 MBPS                 1
         --      Ethernet/802.3             10
         --      E1                         48
         --      T1 (ESF)                   65
         --       64 KBPS                 1562
         --       56 KBPS                 1785
         --       19.2 KBPS               5208
         --        9.6 KBPS              10416

         -- Routes that are not specified use the default (TOS 0) metric

         ospfIfMetricTable OBJECT-TYPE
             SYNTAX   SEQUENCE OF OspfIfMetricEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "The TOS metrics for a non-virtual interface identified
                by the interface index."
             REFERENCE
                "OSPF Version 2, Appendix C.3  Router interface
                parameters"
             ::= { ospf 8 }

         ospfIfMetricEntry OBJECT-TYPE
             SYNTAX   OspfIfMetricEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "A particular TOS metric for a non-virtual interface
                identified by the interface index."
             REFERENCE
                "OSPF Version 2, Appendix C.3  Router interface
                parameters"
             INDEX { ospfIfMetricIpAddress,
                     ospfIfMetricAddressLessIf,
                     ospfIfMetricTOS }
             ::= { ospfIfMetricTable 1 }

         OspfIfMetricEntry ::=
             SEQUENCE {
                 ospfIfMetricIpAddress
                     IpAddress,
                 ospfIfMetricAddressLessIf
                     INTEGER,
                 ospfIfMetricTOS
                     TOSType,

    Baker & Coltun                                                 [Page 29]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                 ospfIfMetricMetric
                     Metric,
                 ospfIfMetricStatus
                     Validation
             }

         ospfIfMetricIpAddress OBJECT-TYPE
             SYNTAX   IpAddress
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The IP address of this OSPF interface.  On row
                creation, this can be derived from the instance."
             ::= { ospfIfMetricEntry 1 }

         ospfIfMetricAddressLessIf OBJECT-TYPE
             SYNTAX   INTEGER
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "For the purpose of easing the instancing of addressed
                and addressless interfaces; This variable takes the
                value 0 on interfaces with IP Addresses, and the value
                of ifIndex for interfaces having no IP Address.  On row
                creation, this can be derived from the instance."
             ::= { ospfIfMetricEntry 2 }

         ospfIfMetricTOS OBJECT-TYPE
             SYNTAX   TOSType
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The type of service metric being referenced.  On row
                creation, this can be derived from the instance."
             ::= { ospfIfMetricEntry 3 }

         ospfIfMetricMetric OBJECT-TYPE
             SYNTAX   Metric
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The metric of using this type of service on this
                interface.  The default value of the TOS 0 Metric is
                10^8 / ifSpeed.

                The value FFFF is distinguished to mean 'no route via
                this TOS'."
             ::= { ospfIfMetricEntry 4 }

    Baker & Coltun                                                 [Page 30]

    RFC 1253                   OSPF Version 2 MIB                August 1991

         ospfIfMetricStatus OBJECT-TYPE
             SYNTAX   Validation
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "This variable displays the validity or invalidity of
                the entry.  Setting it to 'invalid' has the effect of
                rendering it inoperative.  The internal effect (row
                removal) is implementation dependent."
             DEFVAL   { valid }
             ::= { ospfIfMetricEntry 5 }

         --  OSPF Virtual Interface Table

         --      The Virtual Interface Table describes the virtual
         --      links that the OSPF Process is configured to
         --      carry on.

         ospfVirtIfTable OBJECT-TYPE
             SYNTAX   SEQUENCE OF OspfVirtIfEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "Information about this router's virtual interfaces."
             REFERENCE
                "OSPF Version 2, Appendix C.4  Virtual link parameters"
             ::= { ospf 9 }

         ospfVirtIfEntry OBJECT-TYPE
             SYNTAX   OspfVirtIfEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "Information about a single Virtual Interface."
             INDEX { ospfVirtIfAreaID, ospfVirtIfNeighbor }
             ::= { ospfVirtIfTable 1 }

         OspfVirtIfEntry ::=
             SEQUENCE {
                 ospfVirtIfAreaID
                     AreaID,
                 ospfVirtIfNeighbor
                     RouterID,
                 ospfVirtIfTransitDelay
                     UpToMaxAge,
                 ospfVirtIfRetransInterval
                     UpToMaxAge,

    Baker & Coltun                                                 [Page 31]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                 ospfVirtIfHelloInterval
                     HelloRange,
                 ospfVirtIfRtrDeadInterval
                     PositiveInteger,
                 ospfVirtIfState
                     INTEGER,
                 ospfVirtIfEvents
                     Counter,
                 ospfVirtIfAuthKey
                     OCTET STRING,
                 ospfVirtIfStatus
                     Validation
             }

         ospfVirtIfAreaID OBJECT-TYPE
             SYNTAX   AreaID
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The Transit Area that the Virtual Link traverses.  By
                definition, this is not 0.0.0.0"
             ::= { ospfVirtIfEntry 1 }

         ospfVirtIfNeighbor OBJECT-TYPE
             SYNTAX   RouterID
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The Router ID of the Virtual Neighbor."
             ::= { ospfVirtIfEntry 2 }

         ospfVirtIfTransitDelay OBJECT-TYPE
             SYNTAX   UpToMaxAge
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The estimated number of seconds it takes to transmit a
                link- state update packet over this interface."
             DEFVAL { 1 }
             ::= { ospfVirtIfEntry 3 }

         ospfVirtIfRetransInterval OBJECT-TYPE
             SYNTAX   UpToMaxAge
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The number of seconds between link-state advertisement
                retransmissions, for adjacencies belonging to this

    Baker & Coltun                                                 [Page 32]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                interface.  This value is also used when retransmitting
                database description and link-state request packets.
                This value should be well over the expected round-trip
                time."
             DEFVAL { 5 }
             ::= { ospfVirtIfEntry 4 }

         ospfVirtIfHelloInterval OBJECT-TYPE
             SYNTAX   HelloRange
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The length of time, in seconds, between the Hello
                packets that the router sends on the interface.  This
                value must be the same for the virtual neighbor."
             DEFVAL { 10 }
             ::= { ospfVirtIfEntry 5 }

         ospfVirtIfRtrDeadInterval OBJECT-TYPE
             SYNTAX   PositiveInteger
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The number of seconds that a router's Hello packets
                have not been seen before it's neighbors declare the
                router down.  This should be some multiple of the Hello
                interval.  This value must be the same for the virtual
                neighbor."
             DEFVAL { 60 }
             ::= { ospfVirtIfEntry 6 }

         ospfVirtIfState OBJECT-TYPE
             SYNTAX   INTEGER {
                         down (1),            -- these use the same encoding
                         pointToPoint (4)     -- as the ospfIfTable
                      }
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "OSPF virtual interface states."
             DEFVAL   { down }
             ::= { ospfVirtIfEntry 7 }

         ospfVirtIfEvents OBJECT-TYPE
             SYNTAX   Counter
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION

    Baker & Coltun                                                 [Page 33]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                "The number of state changes or error events on this
                Virtual Link"
             DEFVAL   { 0 }
             ::= { ospfVirtIfEntry 8 }

         ospfVirtIfAuthKey OBJECT-TYPE
             SYNTAX   OCTET STRING
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "If Authentication Type is simplePassword, the device
                will left adjust and zero fill to 8 octets.

                When read, ospfVifAuthKey always returns a string of
                length zero."
             REFERENCE
                "OSPF Version 2, Section 9 The Interface Data
                Structure"
             DEFVAL   { '0000000000000000'H }    -- 0.0.0.0.0.0.0.0
             ::= { ospfVirtIfEntry 9 }

         ospfVirtIfStatus OBJECT-TYPE
             SYNTAX   Validation
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "This variable displays the validity or invalidity of
                the entry.  Setting it to 'invalid' has the effect of
                rendering it inoperative.  The internal effect (row
                removal) is implementation dependent."
             DEFVAL   { valid }
             ::= { ospfVirtIfEntry 10 }

         --  OSPF Neighbor Table

         --      The OSPF Neighbor Table describes all neighbors in
         --      the locality of the subject router.

         ospfNbrTable OBJECT-TYPE
             SYNTAX   SEQUENCE OF OspfNbrEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "A table of non-virtual neighbor information."
             REFERENCE
                "OSPF Version 2, Section 10 The Neighbor Data
                Structure"

    Baker & Coltun                                                 [Page 34]

    RFC 1253                   OSPF Version 2 MIB                August 1991

             ::= { ospf 10 }

         ospfNbrEntry OBJECT-TYPE
             SYNTAX   OspfNbrEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "The information regarding a single neighbor."
             REFERENCE
                "OSPF Version 2, Section 10 The Neighbor Data
                Structure"
             INDEX { ospfNbrIpAddr, ospfNbrAddressLessIndex }
             ::= { ospfNbrTable 1 }

         OspfNbrEntry ::=
             SEQUENCE {
                 ospfNbrIpAddr
                     IpAddress,
                 ospfNbrAddressLessIndex
                     InterfaceIndex,
                 ospfNbrRtrId
                     RouterID,
                 ospfNbrOptions
                     INTEGER,
                 ospfNbrPriority
                     DesignatedRouterPriority,
                 ospfNbrState
                     INTEGER,
                 ospfNbrEvents
                     Counter,
                 ospfNbrLSRetransQLen
                     Gauge,
                 ospfNBMANbrStatus
                     Validation
             }

         ospfNbrIpAddr OBJECT-TYPE
             SYNTAX   IpAddress
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The IP address of this neighbor."
             ::= { ospfNbrEntry 1 }

         ospfNbrAddressLessIndex OBJECT-TYPE
             SYNTAX   InterfaceIndex
             ACCESS   read-write
             STATUS   mandatory

    Baker & Coltun                                                 [Page 35]

    RFC 1253                   OSPF Version 2 MIB                August 1991

             DESCRIPTION
                " On an interface having an IP Address, zero.  On
                addressless interfaces, the corresponding value of
                ifIndex in the Internet Standard MIB.  On row creation,
                this can be derived from the instance."
             ::= { ospfNbrEntry 2 }

         ospfNbrRtrId OBJECT-TYPE
             SYNTAX   RouterID
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "A 32-bit integer (represented as a type IpAddress)
                uniquely identifying the neighboring router in the
                Autonomous System."
             DEFVAL   { '00000000'H }    -- 0.0.0.0
             ::= { ospfNbrEntry 3 }

         ospfNbrOptions OBJECT-TYPE
             SYNTAX   INTEGER
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "A Bit Mask corresponding to the neighbor's options
                field.

                Bit 0, if set, indicates that the area accepts and
                operates on external information; if zero, it is a stub
                area.

                Bit 1, if set, indicates that the system will operate
                on Type of Service metrics other than TOS 0.  If zero,
                the neighbor will ignore all metrics except the TOS 0
                metric."
             REFERENCE
                "OSPF Version 2, Section 12.1.2 Options"
             DEFVAL { 0 }
             ::= { ospfNbrEntry 4 }

         ospfNbrPriority OBJECT-TYPE
             SYNTAX   DesignatedRouterPriority
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "The priority of this neighbor in the designated router
                election algorithm.  The value 0 signifies that the
                neighbor is not eligible to become the designated
                router on this particular network."

    Baker & Coltun                                                 [Page 36]

    RFC 1253                   OSPF Version 2 MIB                August 1991

             DEFVAL { 1 }
             ::= { ospfNbrEntry 5 }

         ospfNbrState OBJECT-TYPE
             SYNTAX   INTEGER {
                         down (1),
                         attempt (2),
                         init (3),
                         twoWay (4),
                         exchangeStart (5),
                         exchange (6),
                         loading (7),
                         full (8)
                      }
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The State of the relationship with this Neighbor."
             REFERENCE
                "OSPF Version 2, Section 10.1 Neighbor States"
             DEFVAL   { down }
             ::= { ospfNbrEntry 6 }

         ospfNbrEvents OBJECT-TYPE
             SYNTAX   Counter
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The number of times this neighbor relationship has
                changed state, or an error has occurred."
             DEFVAL   { 0 }
             ::= { ospfNbrEntry 7 }

         ospfNbrLSRetransQLen OBJECT-TYPE
             SYNTAX   Gauge
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The current length of the retransmission queue."
             DEFVAL   { 0 }
             ::= { ospfNbrEntry 8 }

         ospfNBMANbrStatus OBJECT-TYPE
             SYNTAX   Validation
             ACCESS   read-write
             STATUS   mandatory
             DESCRIPTION
                "This variable displays the validity or invalidity of

    Baker & Coltun                                                 [Page 37]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                the entry.  Setting it to 'invalid' has the effect of
                rendering it inoperative.  The internal effect (row
                removal) is implementation dependent."
             DEFVAL { valid }
             ::= { ospfNbrEntry 9 }

         --  OSPF Virtual Neighbor Table

         --      This table describes all virtual neighbors.
         --      Since Virtual Links are configured in the
         --      virtual interface table, this table is read-only.

         ospfVirtNbrTable OBJECT-TYPE
             SYNTAX   SEQUENCE OF OspfVirtNbrEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "A table of virtual neighbor information."
             REFERENCE
                "OSPF Version 2, Section 15  Virtual Links"
             ::= { ospf 11 }

         ospfVirtNbrEntry OBJECT-TYPE
             SYNTAX   OspfVirtNbrEntry
             ACCESS   not-accessible
             STATUS   mandatory
             DESCRIPTION
                "Virtual neighbor information."
             INDEX { ospfVirtNbrArea, ospfVirtNbrRtrId }
             ::= { ospfVirtNbrTable 1 }

         OspfVirtNbrEntry ::=
             SEQUENCE {
                 ospfVirtNbrArea
                     AreaID,
                 ospfVirtNbrRtrId
                     RouterID,
                 ospfVirtNbrIpAddr
                     IpAddress,
                 ospfVirtNbrOptions
                     INTEGER,
                 ospfVirtNbrState
                     INTEGER,
                 ospfVirtNbrEvents
                     Counter,
                 ospfVirtNbrLSRetransQLen
                     Gauge

    Baker & Coltun                                                 [Page 38]

    RFC 1253                   OSPF Version 2 MIB                August 1991

             }

         ospfVirtNbrArea OBJECT-TYPE
             SYNTAX   AreaID
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The Transit Area Identifier."
             ::= { ospfVirtNbrEntry 1 }

         ospfVirtNbrRtrId OBJECT-TYPE
             SYNTAX   RouterID
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "A 32-bit integer uniquely identifying the neighboring
                router in the Autonomous System."
             ::= { ospfVirtNbrEntry 2 }

         ospfVirtNbrIpAddr OBJECT-TYPE
             SYNTAX   IpAddress
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The IP address this Virtual Neighbor is using."
             ::= { ospfVirtNbrEntry 3 }

         ospfVirtNbrOptions OBJECT-TYPE
             SYNTAX   INTEGER
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "A bit map corresponding to the neighbor's options
                field.  Thus, Bit 1, if set, indicates that the
                neighbor supports Type of Service Routing; if zero, no
                metrics other than TOS 0 are in use by the neighbor."
             ::= { ospfVirtNbrEntry 4 }

         ospfVirtNbrState OBJECT-TYPE
             SYNTAX   INTEGER {
                         down (1),
                         attempt (2),
                         init (3),
                         twoWay (4),
                         exchangeStart (5),
                         exchange (6),
                         loading (7),
                         full (8)

    Baker & Coltun                                                 [Page 39]

    RFC 1253                   OSPF Version 2 MIB                August 1991

                      }
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The state of the Virtual Neighbor Relationship."
             ::= { ospfVirtNbrEntry 5 }

         ospfVirtNbrEvents OBJECT-TYPE
             SYNTAX   Counter
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The number of times this virtual link has changed its
                state, or an error has occurred."
             ::= { ospfVirtNbrEntry 6 }

         ospfVirtNbrLSRetransQLen OBJECT-TYPE
             SYNTAX   Gauge
             ACCESS   read-only
             STATUS   mandatory
             DESCRIPTION
                "The current length of the retransmission queue."
             ::= { ospfVirtNbrEntry 7 }

         END

    6.  Acknowledgements

       This document was produced by the OSPF Working Group, of which the
       Chairman is John Moy of Proteon.

       In addition, the comments of the following individuals are also
       acknowledged:

              John Moy                Proteon, Inc
              Dino Farinacci          3COM
              Stan Froyd              Advanced Computer Communications
              Steve Willis            Wellfleet
              John Burress            Wellfleet
              Keith McCloghrie        Hughes LAN Systems

    7.  References

       [1] Cerf, V., "IAB Recommendations for the Development of Internet
           Network Management Standards", RFC 1052, NRI, April 1988.

       [2] Cerf, V., "Report of the Second Ad Hoc Network Management Review
           Group", RFC 1109, NRI, August 1989.

    Baker & Coltun                                                 [Page 40]

    RFC 1253                   OSPF Version 2 MIB                August 1991

       [3] Rose M., and K. McCloghrie, "Structure and Identification of
           Management Information for TCP/IP-based internets", 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", RFC 1157, SNMP Research,
           Performance Systems International, Performance Systems
           International, MIT Laboratory for Computer Science, May 1990.

       [6] Rose M., Editor, "Management Information Base for Network
           Management of TCP/IP-based internets: MIB-II", RFC 1213,
           Performance Systems International, March 1991.

       [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",
           RFC 1212, Performance Systems International, Hughes LAN Systems,
           March 1991.

      [10] Moy, J., Editor, "The OSPF Specification, Version 2", RFC 1247,
           Proteon, Inc., July 1991.

    8.  Security Considerations

       Security issues are not discussed in this memo.

    Baker & Coltun                                                 [Page 41]

    RFC 1253                   OSPF Version 2 MIB                August 1991

    9.  Authors' Addresses

       Fred Baker
       Advanced Computer Communications
       720 Santa Barbara Street
       Santa Barbara, California  93101

       Phone: (805) 963-9431
       EMail:  fbaker@acc.com

       Rob Coltun
       Computer Science Center
       Computer and Space Sciences Building
       College Park, Maryland 20742

       Phone: (301) 921-8600
       EMail: rcoltun@ni.umd.edu

       Or send comments to ospf@trantor.umd.edu.

    Baker & Coltun                                                 [Page 42]