RFC5643

From RFC-Wiki

Network Working Group D. Joyal, Ed. Request for Comments: 5643 Nortel Category: Standards Track V. Manral, Ed.

                                                         IP Infusion
                                                         August 2009
            Management Information Base for OSPFv3

Abstract

This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in IPv6-based internets. In particular, it defines objects for managing the Open Shortest Path First (OSPF) Routing Protocol for IPv6, otherwise known as OSPF version 3 (OSPFv3).

Status of This Memo

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

Copyright Notice

Copyright (c) 2009 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents in effect on the date of publication of this document (http://trustee.ietf.org/license-info). Please review these documents carefully, as they describe your rights and restrictions with respect to this document.

This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English.

  4.3. Area-Scope, Link-Scope, and AS-Scope Link State Database ...8
  4.7. Neighbor, Configured Neighbor, and Virtual Neighbor

The Internet-Standard Management Framework

For a detailed overview of the documents that describe the current Internet-Standard Management Framework, please refer to section 7 of RFC 3410 RFC3410.

Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. MIB objects are generally accessed through the Simple Network Management Protocol (SNMP). Objects in the MIB are defined using the mechanisms defined in the Structure of Management Information (SMI). This memo specifies a MIB module that is compliant to the SMIv2, which is described in STD 58, RFC 2578 RFC2578, STD 58, RFC 2579 RFC2579 and STD 58, RFC 2580 RFC2580.

Overview

This memo defines a portion of the Management Information Base (MIB) for managing the Open Shortest Path First Routing Protocol for IPv6 RFC5340, otherwise known as OSPF version 3 (OSPFv3). Though the fundamental mechanisms of OSPF version 2 (OSPFv2) RFC2328 remain unchanged in OSPFv3, some changes were necessary due to differences in IP address size and in protocol semantics between IPv4 and IPv6. In many cases, where the protocol operations have not changed from OSPFv2, the specification for OSPFv3 does not restate the details but instead refers to the relevant sections in the OSPFv2 specification. This MIB module follows along the same lines and includes Reference clauses referring to the OSPFv2 specification when applicable.

IPv6 Interfaces

IPv6 interfaces attach to links RFC2460. A link is roughly defined as the layer below IPv6 (e.g., Ethernet, IPv4 Tunnel). One or more IPv6 prefixes can be associated with an IPv6 interface. IPv6 interfaces and the prefixes associated with those interfaces can be configured via the IP-MIB RFC4293. IPv6 interfaces are configured in the IPv6 Interface Table and IPv6 prefixes are configured in the Internet Address Prefix Table. An IPv6 interface is identified by a unique index value. IPv6 Address Prefix Table entries associated with an IPv6 interface reference the interface's index.

Whereas an Interface Identifier in OSPFv2 is a local IPv4 address or MIB-2 interface index, an OSPFv3 Interface Identifier is an IPv6 interface index. For example, the index value of an OSPFv3 Interface Table entry is the IPv6 interface index of the IPv6 interface over which OSPFv3 is configured to operate.

Addressing Semantics

Router ID, Area ID, and Link State ID remain at the OSPFv2 size of 32 bits. To ensure uniqueness, a router running both IPv4 and IPv6 concurrently can continue to use a local IPv4 host address, represented as an unsigned 32-bit value, as the OSPFv3 Router ID. Otherwise, the Router ID must be selected using another method (e.g., administratively assigned).

Router ID, Area ID, and Link State ID do not have addressing semantics in OSPFv3, so their syntax is changed to Unsigned32. The Router ID index component comes before the Link State ID index component in the OSPFv3 MIB module because the lack of addressing semantics in Link State IDs makes them less unique identifiers than the Router ID. It is more useful to do partial Object Identifier (OID) lookups extending to the Router ID rather than the Link State ID.

Authentication

In OSPFv3, authentication has been removed from the protocol itself. MIB objects related to authentication are not carried forward from the OSPFv2 MIB module.

Type of Service

OSPFv2 MIB module objects related to Type of Service (ToS) are not carried forward to the OSPFv3 MIB module.

Flooding Scope

Flooding scope for link state advertisements (LSAs) has been generalized and is now explicitly encoded in the LSA's LS type field. The action to take upon receipt of unknown LSA types is also encoded in the LS type field RFC5340. The OSPFv3 MIB module defines three Link State Database tables, one each for Area-scope LSAs, Link-scope LSAs, and Autonomous System (AS)-scope LSAs.

Virtual Links

Since addressing semantics have been removed from router-LSAs in OSPFv3, virtual links now need to be assigned an Interface ID for advertisement in Hello packets and in router-LSAs. A read-only object has been added to the Virtual Interface Table entry to view the assigned Interface ID.

Neighbors

The OSPFv3 Neighbor Table is a read-only table that contains information learned from Hellos received from neighbors, including configured neighbors. The OSPFv3 Configured Neighbor Table contains entries for manually configured neighbors for use on non-broadcast multi-access (NBMA) and Point-to-Multipoint interface types.

OSPFv3 Counters

This MIB module defines several counters, namely:

  - ospfv3OriginateNewLsas and ospfv3RxNewLsas in the
    ospfv3GeneralGroup
  - ospfv3AreaSpfRuns and ospfv3AreaNssaTranslatorEvents in the
    ospfv3AreaTable
  - ospfv3IfEvents in the ospfv3IfTable
  - ospfv3VirtIfEvents in the ospfv3VirtIfTable
  - ospfv3NbrEvents in the ospfv3NbrTable
  - ospfv3VirtNbrEvents in the ospfv3VirtNbrTable

As a best practice, a management entity, when reading these counters, should use the discontinuity object, ospfv3DiscontinuityTime, to determine if an event that would invalidate the management entity understanding of the counters has occurred. A restart of the OSPFv3 routing process is an example of a discontinuity event.

Multiple OSPFv3 Instances

SNMPv3 supports "contexts" that can be used to implement MIB views on multiple OSPFv3 instances on the same system. See RFC3411 or its successors for details.

2.10. Notifications

Notifications define a set of notifications, objects, and mechanisms to enhance the ability to manage IP internetworks that use OSPFv3 as their Interior Gateway Protocol (IGP).

2.11. Conventions

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 RFC2119.

OSPFv3 Notification Overview

Introduction

OSPFv3 is an event-driven routing protocol, where an event can be a change in an OSPFv3 interface's link-level status, the expiration of an OSPFv3 timer, or the reception of an OSPFv3 protocol packet. Many of the actions that OSPFv3 takes as a result of these events will result in a change of the routing topology.

As routing topologies become large and complex, it is often difficult to locate the source of a topology change or unpredicted routing path by polling a large number or routers. Because of the difficulty of polling a large number of devices, a more prudent approach is for devices to notify a network manager of potentially critical OSPF events using SNMP notifications.

The ospfv3NotificationEnable object provides a coarse level of control over the generation of OSPFv3 notifications. It can be used to completely enable or disable generation of OSPFv3 notifications. Fine-grain control of individual notifications can be accomplished by utilizing the objects defined in RFC 3413 RFC3413, specifically those described in Section 6.

Ignoring Initial Activity

The majority of critical events occur when OSPFv3 is enabled on a router, at which time the Designated Router is elected and neighbor adjacencies are formed. During this initial period, a potential flood of notifications is unnecessary since the events are expected. To avoid unnecessary notifications, a router should not originate expected OSPFv3 interface-related notifications until two of that interface's dead timer intervals have elapsed. The expected OSPFv3 interface notifications are ospfv3IfStateChange, ospfv3VirtIfStateChange, ospfv3NbrStateChange, and ospfv3VirtNbrStateChange.

Throttling Notifications

The mechanism for throttling the notifications is similar to the mechanism explained in RFC 1224 RFC1224. The basic premise of the throttling mechanism is that of a sliding window, defined in seconds

and with an upper bound on the number of notifications that may be generated within this window. Note that unlike RFC 1224, notifications are not sent to inform the network manager that the throttling mechanism has kicked in.

A single window should be used to throttle all OSPFv3 notifications types except for the ospfv3LsdbOverflow and the ospfv3LsdbApproachingOverflow notifications, which should not be throttled. For example, with a window time of 3, an upper bound of 3, and events to cause notifications 1, 2, 3, and 4 (4 notifications within a 3-second period), the 4th notification should not be generated.

Appropriate values are 7 notifications with a window time of 10 seconds.

One Notification per OSPFv3 Event

Several of the notifications defined in this MIB module are generated as the result of finding an unusual condition while parsing an OSPFv3 packet or processing a timer event. There may be more than one unusual condition detected while handling the event. For example, a Link State Update packet may contain several retransmitted link state advertisements (LSAs), or a retransmitted database description packet may contain several database description entries. To limit the number of notifications and variables, OSPFv3 should generate at most one notification per OSPFv3 event. Only the variables associated with the first unusual condition should be included with the notification. Similarly, if more than one type of unusual condition is encountered while parsing the packet, only the first event will generate a notification.

Polling Event Counters

Many of the tables in the OSPFv3 MIB module contain generalized event counters. By enabling the notifications defined in this document, a network manager can obtain more specific information about these events. A network manager may want to poll these event counters and enable OSPFv3 notifications when a particular counter starts increasing abnormally.

Structure of the OSPFv3 MIB Module

The MIB is composed of the following sections:

    General Variables
    Area Table
    Area-Scope Link State Database
    Link-Scope Link State Databases (non-virtual and virtual)
    AS-Scope Link State Database
    Host Table
    Interface Table
    Virtual Interface Table
    Neighbor Table
    Configured Neighbor Table
    Virtual Neighbor Table
    Area Aggregate Table
    Notifications

General Variables

The General Variables are global to the OSPFv3 Process.

Area Table

The Area Data Structure describes the OSPFv3 Areas that the router participates in.

Area-Scope, Link-Scope, and AS-Scope Link State Database

The link state databases are provided primarily to provide detailed information for network debugging. There are separate tables for Link-scope LSAs received over non-virtual and virtual interfaces.

Host Table

The Host Table is provided to view configured Host Route information.

Interface Table

The Interface Table describes the various IPv6 links on which OSPFv3 is configured.

Virtual Interface Table

The Virtual Interface Table describes virtual OSPFv3 links.

Neighbor, Configured Neighbor, and Virtual Neighbor Tables

The Neighbor Table, the Configured Neighbor Table, and the Virtual Neighbor Table describe the neighbors to the OSPFv3 Process.

Area Aggregate Table

The Area Aggregate Table describes prefixes, which summarize routing information for export outside of an Area.

Notifications

Notifications are defined for OSPFv3 events. Several objects are defined specifically as variables to be used with notifications.

Definitions

OSPFV3-MIB DEFINITIONS ::= BEGIN
IMPORTS
        MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, mib-2,
        Counter32, Gauge32, Integer32, Unsigned32
                FROM SNMPv2-SMI
        TEXTUAL-CONVENTION, TruthValue, RowStatus, TimeStamp
                FROM SNMPv2-TC
        MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
                FROM SNMPv2-CONF
        InterfaceIndex
                FROM IF-MIB
        InetAddressType, InetAddress, InetAddressPrefixLength,
        InetAddressIPv6
                FROM INET-ADDRESS-MIB
        Metric, BigMetric, Status,
        HelloRange, DesignatedRouterPriority
                FROM OSPF-MIB;
ospfv3MIB MODULE-IDENTITY
        LAST-UPDATED "200908130000Z"
        ORGANIZATION "IETF OSPF Working Group"
        CONTACT-INFO
            "WG E-Mail: [email protected]
             WG Chairs: Acee Lindem
                        [email protected]
                        Abhay Roy
                        [email protected]
             Editors:   Dan Joyal
                        Nortel
                        600 Technology Park Drive
                        Billerica, MA  01821, USA
                        [email protected]
                        Vishwas Manral
                        IP Infusion
                        Almora, Uttarakhand
                        India
                        [email protected]"
         DESCRIPTION
            "The MIB module for OSPF version 3.
             Copyright (c) 2009 IETF Trust and the persons
             identified as authors of the code.  All rights
             reserved.
             Redistribution and use in source and binary forms, with
             or without modification, are permitted provided that
             the following conditions are met:
             - Redistributions of source code must retain the above
               copyright notice, this list of conditions and the
               following disclaimer.
            - Redistributions in binary form must reproduce the
              above copyright notice, this list of conditions and
              the following disclaimer in the documentation and/or
              other materials provided with the distribution.
            - Neither the name of Internet Society, IETF or IETF
              Trust, nor the names of specific contributors, may be
              used to endorse or promote products derived from this
              software without specific prior written permission.
              THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
              CONTRIBUTORS 'AS IS' AND ANY EXPRESS OR IMPLIED
              WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
              WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
              PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL
              THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY
              DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
              CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
              PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
              USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
              HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
              IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
              NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
              USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
              POSSIBILITY OF SUCH DAMAGE.
              This version of this MIB module is part of RFC 5643;
              see the RFC itself for full legal notices."
         REVISION "200908130000Z"
         DESCRIPTION
             "Initial version, published as RFC 5643"
         ::= { mib-2 191 }
-- Textual conventions
Ospfv3UpToRefreshIntervalTC ::= TEXTUAL-CONVENTION
         DISPLAY-HINT "d"
         STATUS        current
         DESCRIPTION
              "The values one might be able to configure for
              variables bounded by the Refresh Interval."
         REFERENCE
              "OSPF Version 2, Appendix B, Architectural Constants"
         SYNTAX      Unsigned32 (1..1800)
Ospfv3DeadIntervalRangeTC ::= TEXTUAL-CONVENTION
         DISPLAY-HINT "d"
         STATUS        current
         DESCRIPTION
              "The range, in seconds, of dead interval value."
         REFERENCE
              "OSPF for IPv6, Appendix C.3, Router Interface
              Parameters"
         SYNTAX      Unsigned32 (1..'FFFF'h)
Ospfv3RouterIdTC ::= TEXTUAL-CONVENTION
         DISPLAY-HINT "d"
         STATUS      current
         DESCRIPTION
              "A 32-bit, unsigned integer uniquely identifying the
              router in the Autonomous System.  To ensure
              uniqueness, this may default to the value of one of
              the router's IPv4 host addresses if IPv4 is
              configured on the router."
         REFERENCE
              "OSPF for IPv6, Appendix C.1, Global Parameters"
         SYNTAX      Unsigned32 (1..'FFFFFFFF'h)
Ospfv3LsIdTC ::= TEXTUAL-CONVENTION
         DISPLAY-HINT "d"
         STATUS      current
         DESCRIPTION
              "A unique 32-bit identifier of the piece of the
              routing domain that is being described by a link
              state advertisement.  In contrast to OSPFv2, the
              Link State ID (LSID) has no addressing semantics."
         REFERENCE
              "OSPF Version 2, Section 12.1.4, Link State ID"
         SYNTAX      Unsigned32 (1..'FFFFFFFF'h)
Ospfv3AreaIdTC ::= TEXTUAL-CONVENTION
         DISPLAY-HINT "d"
         STATUS      current
         DESCRIPTION
              "An OSPFv3 Area Identifier.  A value of zero
              identifies the backbone area."
         REFERENCE
              "OSPF for IPv6, Appendix C.3 Router Interface
              Parameters"
         SYNTAX      Unsigned32 (0..'FFFFFFFF'h)
Ospfv3IfInstIdTC ::= TEXTUAL-CONVENTION
         DISPLAY-HINT "d"
         STATUS      current
         DESCRIPTION
              "An OSPFv3 Interface Instance ID."
         REFERENCE
              "OSPF for IPv6, Appendix C.3, Router Interface
              Parameters"
         SYNTAX      Unsigned32 (0..255)
Ospfv3LsaSequenceTC ::= TEXTUAL-CONVENTION
         DISPLAY-HINT "d"
         STATUS      current
         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"
         SYNTAX      Integer32
Ospfv3LsaAgeTC ::= TEXTUAL-CONVENTION
         DISPLAY-HINT "d"
         STATUS      current
         DESCRIPTION
            "The age of the link state advertisement in
            seconds.  The high-order bit of the LS age
            field is considered the DoNotAge bit for
            support of on-demand circuits."
         REFERENCE
            "OSPF Version 2, Section 12.1.1, LS age;
             Extending OSPF to Support Demand Circuits,
             Section 2.2, The LS age field"
         SYNTAX      Unsigned32 (0..3600 | 32768..36368)
-- Top-level structure of MIB
ospfv3Notifications  OBJECT IDENTIFIER ::= { ospfv3MIB 0 }
ospfv3Objects        OBJECT IDENTIFIER ::= { ospfv3MIB 1 }
ospfv3Conformance    OBJECT IDENTIFIER ::= { ospfv3MIB 2 }
-- OSPFv3 General Variables
-- These parameters apply globally to the Router's
-- OSPFv3 Process.
ospfv3GeneralGroup OBJECT IDENTIFIER ::= { ospfv3Objects 1 }
ospfv3RouterId OBJECT-TYPE
        SYNTAX         Ospfv3RouterIdTC
        MAX-ACCESS     read-write
        STATUS         current
        DESCRIPTION
            "A 32-bit unsigned integer uniquely identifying
            the router in the Autonomous System.  To ensure
            uniqueness, this may default to the 32-bit
            unsigned integer representation of one of
            the router's IPv4 interface addresses (if IPv4
            is configured on the router).
            This object is persistent, and when written, the
            entity SHOULD save the change to non-volatile
            storage."
        REFERENCE
              "OSPF for IPv6, Appendix C.1, Global Parameters"
        ::= { ospfv3GeneralGroup 1 }
ospfv3AdminStatus OBJECT-TYPE
        SYNTAX          Status
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "The administrative status of OSPFv3 in the
            router.  The value 'enabled' denotes that the
            OSPFv3 Process is active on at least one
            interface; 'disabled' disables it on all
            interfaces.
            This object is persistent, and when written, the
            entity SHOULD save the change to non-volatile
            storage."
        ::= { ospfv3GeneralGroup 2 }
ospfv3VersionNumber OBJECT-TYPE
        SYNTAX          INTEGER { version3 (3) }
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The version number of OSPF for IPv6 is 3."
        ::= { ospfv3GeneralGroup 3 }
ospfv3AreaBdrRtrStatus OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "A flag to denote whether this router is an area
            border router.  The value of this object is true (1)
            when the router is an area border router."
        REFERENCE
            "OSPF Version 2, Section 3, Splitting the AS into
            Areas"
        ::= { ospfv3GeneralGroup 4 }
ospfv3ASBdrRtrStatus OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "A flag to note whether this router is
            configured as an Autonomous System border router.
            This object is persistent, and when written, the
            entity SHOULD save the change to non-volatile
            storage."
        REFERENCE
            "OSPF Version 2, Section 3.3, Classification of
            routers"
        ::= { ospfv3GeneralGroup 5 }
ospfv3AsScopeLsaCount OBJECT-TYPE
        SYNTAX          Gauge32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The number of AS-scope (e.g., AS-External) link state
            advertisements in the link state database."
        ::= { ospfv3GeneralGroup 6 }
ospfv3AsScopeLsaCksumSum OBJECT-TYPE
        SYNTAX          Unsigned32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The 32-bit unsigned sum of the LS checksums of
            the AS-scoped 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 or
            to compare the link state database of two
            routers."
        ::= { ospfv3GeneralGroup 7 }
ospfv3OriginateNewLsas OBJECT-TYPE
        SYNTAX          Counter32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The number of new link state advertisements
            that have been originated.  This number is
            incremented each time the router originates a new
            LSA.
            Discontinuities in the value of this counter
            can occur at re-initialization of the management
            system and at other times as indicated by the
            value of ospfv3DiscontinuityTime."
        ::= { ospfv3GeneralGroup 8 }
ospfv3RxNewLsas OBJECT-TYPE
        SYNTAX          Counter32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The number of link state advertisements
            received that are determined to be new
            instantiations.  This number does not include
            newer instantiations of self-originated link state
            advertisements.
            Discontinuities in the value of this counter
            can occur at re-initialization of the management
            system and at other times as indicated by the
            value of ospfv3DiscontinuityTime."
        ::= { ospfv3GeneralGroup 9 }
ospfv3ExtLsaCount OBJECT-TYPE
        SYNTAX          Gauge32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
             "The number of External (LS type 0x4005) in the
             link state database."
        ::= { ospfv3GeneralGroup 10 }
ospfv3ExtAreaLsdbLimit OBJECT-TYPE
        SYNTAX          Integer32 (-1..'7FFFFFFF'h)
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "The maximum number of non-default
            AS-external-LSA entries that can be stored in the
            link state database.  If the value is -1, then
            there is no limit.
            When the number of non-default AS-external-LSAs
            in a router's link state database reaches
            ospfv3ExtAreaLsdbLimit, the router enters Overflow
            state.  The router never holds more than
            ospfv3ExtAreaLsdbLimit non-default AS-external-LSAs
            in its database.  ospfv3ExtAreaLsdbLimit MUST be set
            identically in all routers attached to the OSPFv3
            backbone and/or any regular OSPFv3 area (i.e.,
            OSPFv3 stub areas and not-so-stubby-areas (NSSAs)
            are excluded).
            This object is persistent, and when written, the
            entity SHOULD save the change to non-volatile
            storage."
        ::= { ospfv3GeneralGroup 11 }
ospfv3ExitOverflowInterval OBJECT-TYPE
        SYNTAX          Unsigned32
        UNITS           "seconds"
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "The number of seconds that, after entering
            Overflow state, a router will attempt to leave
            Overflow state.  This allows the router to again
            originate non-default, AS-External-LSAs.  When
            set to 0, the router will not leave Overflow
            state until restarted.
            This object is persistent, and when written, the
            entity SHOULD save the change to non-volatile
            storage."
        ::= { ospfv3GeneralGroup 12 }
ospfv3DemandExtensions OBJECT-TYPE
        SYNTAX         TruthValue
        MAX-ACCESS     read-write
        STATUS         current
        DESCRIPTION
            "The router's support for demand circuits.
            The value of this object is true (1) when
            demand circuits are supported.
            This object is persistent, and when written, the
            entity SHOULD save the change to non-volatile
            storage."
        REFERENCE
            "OSPF Version 2; Extending OSPF to Support Demand
            Circuits"
        ::= { ospfv3GeneralGroup 13 }
ospfv3ReferenceBandwidth OBJECT-TYPE
       SYNTAX       Unsigned32
       UNITS        "kilobits per second"
       MAX-ACCESS   read-write
       STATUS       current
       DESCRIPTION
           "Reference bandwidth in kilobits per second for
           calculating default interface metrics.  The
           default value is 100,000 KBPS (100 MBPS).
           This object is persistent, and when written, the
           entity SHOULD save the change to non-volatile
           storage."
       REFERENCE
           "OSPF Version 2, Appendix C.3, Router interface
           parameters"
       DEFVAL { 100000 }
    ::= { ospfv3GeneralGroup 14 }
ospfv3RestartSupport OBJECT-TYPE
       SYNTAX       INTEGER { none(1),
                              plannedOnly(2),
                              plannedAndUnplanned(3)
                         }
       MAX-ACCESS   read-write
       STATUS       current
       DESCRIPTION
           "The router's support for OSPF graceful restart.
           Options include no restart support, only planned
           restarts, or both planned and unplanned restarts.
           This object is persistent, and when written, the
           entity SHOULD save the change to non-volatile
           storage."
       REFERENCE "Graceful OSPF Restart, Appendix B.1, Global
                    Parameters (Minimum subset)"
       ::= { ospfv3GeneralGroup 15 }
ospfv3RestartInterval OBJECT-TYPE
       SYNTAX       Ospfv3UpToRefreshIntervalTC
       UNITS        "seconds"
       MAX-ACCESS   read-write
       STATUS       current
       DESCRIPTION
           "Configured OSPF graceful restart timeout interval.
           This object is persistent, and when written, the
           entity SHOULD save the change to non-volatile
           storage."
       REFERENCE "Graceful OSPF Restart, Appendix B.1, Global
                 Parameters (Minimum subset)"
       DEFVAL { 120 }
       ::= { ospfv3GeneralGroup 16 }
ospfv3RestartStrictLsaChecking OBJECT-TYPE
      SYNTAX       TruthValue
      MAX-ACCESS   read-write
      STATUS       current
      DESCRIPTION
         "Indicates if strict LSA checking is enabled for
         graceful restart.  A value of true (1) indicates that
         strict LSA checking is enabled.
         This object is persistent, and when written,
         the entity SHOULD save the change to non-volatile
         storage."
      REFERENCE "Graceful OSPF Restart, Appendix B.2, Global
                Parameters (Optional)"
      DEFVAL { true }
      ::= { ospfv3GeneralGroup 17 }
ospfv3RestartStatus OBJECT-TYPE
       SYNTAX       INTEGER { notRestarting(1),
                              plannedRestart(2),
                              unplannedRestart(3)
                            }
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
          "The current status of OSPF graceful restart capability."
       ::= { ospfv3GeneralGroup 18 }
ospfv3RestartAge OBJECT-TYPE
       SYNTAX       Ospfv3UpToRefreshIntervalTC
       UNITS        "seconds"
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
          "Remaining time in the current OSPF graceful restart
          interval."
       ::= { ospfv3GeneralGroup 19 }
ospfv3RestartExitReason OBJECT-TYPE
       SYNTAX       INTEGER { none(1),
                              inProgress(2),
                              completed(3),
                              timedOut(4),
                              topologyChanged(5)
                            }
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
          "Describes the outcome of the last attempt at a
          graceful restart.
          none:            no restart has yet been attempted.
          inProgress:      a restart attempt is currently underway.
          completed:       the last restart completed successfully.
          timedOut:        the last restart timed out.
          topologyChanged: the last restart was aborted due to
                           a topology change."
    ::= { ospfv3GeneralGroup 20 }
ospfv3NotificationEnable OBJECT-TYPE
       SYNTAX TruthValue
       MAX-ACCESS read-write
       STATUS current
       DESCRIPTION
           "This object provides a coarse level of control
            over the generation of OSPFv3 notifications.
            If this object is set to true (1), then it enables
            the generation of OSPFv3 notifications.  If it is
            set to false (2), these notifications are not
            generated.
            This object is persistent, and when written, the
            entity SHOULD save the change to non-volatile
            storage."
   ::= { ospfv3GeneralGroup 21 }

ospfv3StubRouterSupport OBJECT-TYPE

    SYNTAX       TruthValue
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The router's support for stub router functionality.  An
        object value of true (1) indicates that stub router
        functionality is supported."
    REFERENCE
        "OSPF Stub Router Advertisement"
    ::= { ospfv3GeneralGroup 22 }
ospfv3StubRouterAdvertisement OBJECT-TYPE
    SYNTAX       INTEGER {
                       doNotAdvertise(1),
                       advertise(2)
                       }
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "This object controls the advertisement of
        stub LSAs by the router.  The value
        doNotAdvertise (1) will result in the advertisement
        of standard LSAs and is the default value.
        This object is persistent, and when written,
        the entity SHOULD save the change to non-volatile
        storage."
    REFERENCE
        "OSPF Stub Router Advertisement, Section 2, Proposed
        Solution"
    DEFVAL { doNotAdvertise }
    ::= { ospfv3GeneralGroup 23 }

ospfv3DiscontinuityTime OBJECT-TYPE

   SYNTAX     TimeStamp
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
      "The value of sysUpTime on the most recent occasion
       at which any one of this MIB's counters suffered
       a discontinuity.
       If no such discontinuities have occurred since the last
       re-initialization of the local management subsystem,
       then this object contains a zero value."
   ::= { ospfv3GeneralGroup 24 }
 ospfv3RestartTime OBJECT-TYPE
     SYNTAX     TimeStamp
     MAX-ACCESS read-only
     STATUS     current
     DESCRIPTION
        "The value of sysUpTime on the most recent occasion
         at which the ospfv3RestartExitReason was updated."
     ::= { ospfv3GeneralGroup 25 }
-- The OSPFv3 Area Data Structure contains information
-- regarding the various areas.  The interfaces and
-- virtual links are configured as part of these areas.
-- Area 0, by definition, is the backbone area.
ospfv3AreaTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF Ospfv3AreaEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "Information describing the configured
            parameters and cumulative statistics of the router's
            attached areas.  The interfaces and
            virtual links are configured as part of these areas.
            Area 0, by definition, is the backbone area."
        REFERENCE
            "OSPF Version 2, Section 6, The Area Data
            Structure"
        ::= { ospfv3Objects 2 }
ospfv3AreaEntry OBJECT-TYPE
        SYNTAX          Ospfv3AreaEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "Information describing the configured
            parameters and cumulative statistics of one of the
            router's attached areas.
            The information in this table is persistent,
            and when written, the entity SHOULD save the a
            change to non-volatile storage."
        INDEX           { ospfv3AreaId }
        ::= { ospfv3AreaTable 1 }
Ospfv3AreaEntry ::= SEQUENCE {
        ospfv3AreaId
                Ospfv3AreaIdTC,
        ospfv3AreaImportAsExtern
                INTEGER,
        ospfv3AreaSpfRuns
                Counter32,
        ospfv3AreaBdrRtrCount
                Gauge32,
        ospfv3AreaAsBdrRtrCount
                Gauge32,
        ospfv3AreaScopeLsaCount
                Gauge32,
        ospfv3AreaScopeLsaCksumSum
                Unsigned32,
        ospfv3AreaSummary
                INTEGER,
        ospfv3AreaRowStatus
                RowStatus,
        ospfv3AreaStubMetric
                BigMetric,
        ospfv3AreaNssaTranslatorRole
                INTEGER,
        ospfv3AreaNssaTranslatorState
                INTEGER,
        ospfv3AreaNssaTranslatorStabInterval
                Unsigned32,
        ospfv3AreaNssaTranslatorEvents
                Counter32,
        ospfv3AreaStubMetricType
                INTEGER,
        ospfv3AreaTEEnabled
                TruthValue
        }
ospfv3AreaId OBJECT-TYPE
        SYNTAX          Ospfv3AreaIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "A 32-bit unsigned integer uniquely identifying an area.
            Area ID 0 is used for the OSPFv3 backbone."
        REFERENCE
            "OSPF Version 2, Appendix C.2, Area parameters"
        ::= { ospfv3AreaEntry 1 }
ospfv3AreaImportAsExtern OBJECT-TYPE
        SYNTAX          INTEGER {
                        importExternal(1),   -- normal area
                        importNoExternal(2), -- stub area
                        importNssa(3)        -- not-so-stubby-area
                        }
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "Indicates whether an area is a stub area, NSSA, or
            standard area.  AS-scope LSAs are not imported into stub
            areas or NSSAs.  NSSAs import AS-External data as NSSA
            LSAs that have Area-scope."
        REFERENCE
            "OSPF Version 2, Appendix C.2, Area parameters"
        DEFVAL { importExternal }
        ::= { ospfv3AreaEntry 2 }
ospfv3AreaSpfRuns OBJECT-TYPE
        SYNTAX          Counter32
        MAX-ACCESS      read-only
        STATUS          current
        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.
            Discontinuities in the value of this counter
            can occur at re-initialization of the management
            system and at other times as indicated by the
            value of ospfv3DiscontinuityTime."
        ::= { ospfv3AreaEntry 3 }
ospfv3AreaBdrRtrCount OBJECT-TYPE
        SYNTAX          Gauge32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The total number of area border routers
            reachable within this area.  This is initially zero,
            and is calculated in each Shortest Path First (SPF)
            pass."
        DEFVAL { 0 }
        ::= { ospfv3AreaEntry 4 }
ospfv3AreaAsBdrRtrCount OBJECT-TYPE
        SYNTAX          Gauge32
        MAX-ACCESS      read-only
        STATUS          current
        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 }
        ::= { ospfv3AreaEntry 5 }
ospfv3AreaScopeLsaCount OBJECT-TYPE
        SYNTAX          Gauge32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The total number of Area-scope link state
            advertisements in this area's link state
            database."
         DEFVAL { 0 }
        ::= { ospfv3AreaEntry 6 }
ospfv3AreaScopeLsaCksumSum OBJECT-TYPE
        SYNTAX          Unsigned32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The 32-bit unsigned sum of the Area-scope link state
            advertisements' LS checksums contained in this
            area's link state database.  The sum can be used
            to determine if there has been a change in a
            router's link state database or to compare the
            link state database of two routers."
        ::= { ospfv3AreaEntry 7 }
ospfv3AreaSummary OBJECT-TYPE
        SYNTAX          INTEGER {
                        noAreaSummary(1),
                        sendAreaSummary(2)
                        }
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The variable ospfv3AreaSummary controls the
            import of Inter-Area LSAs into stub and
            NSSA areas.  It has no effect on other areas.
            If it is noAreaSummary, the router will neither
            originate nor propagate Inter-Area LSAs into the
            stub or NSSA area.  It will only advertise a
            default route.
            If it is sendAreaSummary, the router will both
            summarize and propagate Inter-Area LSAs."
        DEFVAL   { sendAreaSummary }
        ::= { ospfv3AreaEntry 8 }
ospfv3AreaRowStatus OBJECT-TYPE
        SYNTAX          RowStatus
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "This object permits management of the table by
            facilitating actions such as row creation,
            construction, and destruction.
            The value of this object has no effect on
            whether other objects in this conceptual row can be
            modified."
        ::= { ospfv3AreaEntry 9 }
ospfv3AreaStubMetric OBJECT-TYPE
        SYNTAX          BigMetric
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The metric value advertised for the default route
            into stub and NSSA areas.  By default, this equals the
            least metric among the interfaces to other areas."
        ::= { ospfv3AreaEntry 10 }
ospfv3AreaNssaTranslatorRole OBJECT-TYPE
        SYNTAX          INTEGER { always(1), candidate(2) }
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "Indicates an NSSA border router's policy to
            perform NSSA translation of NSSA-LSAs into
            AS-External-LSAs."
        DEFVAL { candidate }
        ::= { ospfv3AreaEntry 11 }
ospfv3AreaNssaTranslatorState OBJECT-TYPE
        SYNTAX          INTEGER {
                        enabled(1),
                        elected(2),
                        disabled(3)
                        }
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
             "Indicates if and how an NSSA border router is
             performing NSSA translation of NSSA-LSAs into
             AS-External-LSAs.  When this object is set to
             'enabled', the NSSA border router's
             ospfv3AreaNssaTranslatorRole has been set to 'always'.
             When this object is set to 'elected', a candidate
             NSSA border router is translating NSSA-LSAs into
             AS-External-LSAs.  When this object is set to
             'disabled', a candidate NSSA Border router is NOT
             translating NSSA-LSAs into AS-External-LSAs."
        ::= { ospfv3AreaEntry 12 }
ospfv3AreaNssaTranslatorStabInterval OBJECT-TYPE
        SYNTAX          Unsigned32
        UNITS           "seconds"
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The stability interval defined as the number of
            seconds after an elected translator determines its
            services are no longer required that it should
            continue to perform its translation duties."
        DEFVAL { 40 }
        ::= { ospfv3AreaEntry 13 }
ospfv3AreaNssaTranslatorEvents OBJECT-TYPE
        SYNTAX          Counter32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "Indicates the number of Translator state changes
            that have occurred since the last start-up of the
            OSPFv3 routing process.
            Discontinuities in the value of this counter
            can occur at re-initialization of the management
            system and at other times as indicated by the
            value of ospfv3DiscontinuityTime."
        ::= { ospfv3AreaEntry 14 }
ospfv3AreaStubMetricType OBJECT-TYPE
        SYNTAX       INTEGER {
                        ospfv3Metric(1),   -- OSPF Metric
                        comparableCost(2), -- external type 1
                        nonComparable(3)   -- external type 2
                        }
        MAX-ACCESS   read-create
        STATUS       current
        DESCRIPTION
            "This variable assigns the type of metric
            advertised as a default route."
        DEFVAL { ospfv3Metric }
        ::= { ospfv3AreaEntry 15 }
ospfv3AreaTEEnabled OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
               "Indicates whether or not traffic engineering
               is enabled in the area.  The object is set
               to the value true (1) to enable traffic engineering.
               Traffic engineering is disabled by default."
        DEFVAL { false }
        ::= { ospfv3AreaEntry 16 }
-- OSPFv3 AS-Scope Link State Database
ospfv3AsLsdbTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF Ospfv3AsLsdbEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The OSPFv3 Process's AS-scope link state database
            (LSDB).  The LSDB contains the AS-scope link state
            advertisements from throughout the areas that the
            device is attached to."
        ::= { ospfv3Objects 3 }
ospfv3AsLsdbEntry OBJECT-TYPE
        SYNTAX          Ospfv3AsLsdbEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "A single AS-scope link state advertisement."
        INDEX           { ospfv3AsLsdbType,
                          ospfv3AsLsdbRouterId,
                          ospfv3AsLsdbLsid }
        ::= { ospfv3AsLsdbTable 1 }
Ospfv3AsLsdbEntry ::= SEQUENCE {
        ospfv3AsLsdbType
                Unsigned32,
        ospfv3AsLsdbRouterId
                Ospfv3RouterIdTC,
        ospfv3AsLsdbLsid
                Ospfv3LsIdTC,
        ospfv3AsLsdbSequence
                Ospfv3LsaSequenceTC,
        ospfv3AsLsdbAge
                Ospfv3LsaAgeTC,
        ospfv3AsLsdbChecksum
                Integer32,
        ospfv3AsLsdbAdvertisement
                OCTET STRING,
        ospfv3AsLsdbTypeKnown
                TruthValue
        }
ospfv3AsLsdbType OBJECT-TYPE
        SYNTAX          Unsigned32(0..'FFFFFFFF'h)
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The type of the link state advertisement.
            Each link state type has a separate
            advertisement format.  AS-scope LSAs not recognized
            by the router may be stored in the database."
        ::= { ospfv3AsLsdbEntry 1 }
ospfv3AsLsdbRouterId OBJECT-TYPE
        SYNTAX          Ospfv3RouterIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The 32-bit number that uniquely identifies the
            originating router in the Autonomous System."
        REFERENCE
            "OSPF Version 2, Appendix C.1, Global parameters"
        ::= { ospfv3AsLsdbEntry 2 }
ospfv3AsLsdbLsid OBJECT-TYPE
        SYNTAX          Ospfv3LsIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The Link State ID is an LS type-specific field
            containing a unique identifier;
            it identifies the piece of the routing domain
            that is being described by the advertisement.
            In contrast to OSPFv2, the LSID has no
            addressing semantics."
        ::= { ospfv3AsLsdbEntry 3 }
-- 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.
ospfv3AsLsdbSequence OBJECT-TYPE
        SYNTAX          Ospfv3LsaSequenceTC
        MAX-ACCESS      read-only
        STATUS          current
        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"
        ::= { ospfv3AsLsdbEntry 4 }
ospfv3AsLsdbAge OBJECT-TYPE
        SYNTAX          Ospfv3LsaAgeTC
        UNITS           "seconds"
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "This field is the age of the link state
            advertisement in seconds.  The high-order bit
            of the LS age field is considered the DoNotAge
            bit for support of on-demand circuits."
        REFERENCE
            "OSPF Version 2, Section 12.1.1, LS age;
             Extending OSPF to Support Demand Circuits,
             Section 2.2, The LS age field."
        ::= { ospfv3AsLsdbEntry 5 }
ospfv3AsLsdbChecksum OBJECT-TYPE
        SYNTAX          Integer32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "This field is the checksum of the complete
            contents of the advertisement, excepting the
            age field.  The age 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"
        ::= { ospfv3AsLsdbEntry 6 }
ospfv3AsLsdbAdvertisement OBJECT-TYPE
        SYNTAX          OCTET STRING (SIZE (1..65535))
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The entire link state advertisement, including
            its header."
        ::= { ospfv3AsLsdbEntry 7 }
ospfv3AsLsdbTypeKnown OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The value true (1) indicates that the LSA type
            is recognized by this router."
        ::= { ospfv3AsLsdbEntry 8 }
 --  OSPFv3 Area-Scope Link State Database
ospfv3AreaLsdbTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF Ospfv3AreaLsdbEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The OSPFv3 Process's Area-scope LSDB.
            The LSDB contains the Area-scope link state
            advertisements from throughout the area that the
            device is attached to."
        ::= { ospfv3Objects 4 }
ospfv3AreaLsdbEntry OBJECT-TYPE
        SYNTAX          Ospfv3AreaLsdbEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "A single Area-scope link state advertisement."
        INDEX           { ospfv3AreaLsdbAreaId,
                          ospfv3AreaLsdbType,
                          ospfv3AreaLsdbRouterId,
                          ospfv3AreaLsdbLsid }
        ::= { ospfv3AreaLsdbTable 1 }
Ospfv3AreaLsdbEntry ::= SEQUENCE {
        ospfv3AreaLsdbAreaId
                Ospfv3AreaIdTC,
        ospfv3AreaLsdbType
                Unsigned32,
        ospfv3AreaLsdbRouterId
                Ospfv3RouterIdTC,
        ospfv3AreaLsdbLsid
                Ospfv3LsIdTC,
        ospfv3AreaLsdbSequence
                Ospfv3LsaSequenceTC,
        ospfv3AreaLsdbAge
                Ospfv3LsaAgeTC,
        ospfv3AreaLsdbChecksum
                Integer32,
        ospfv3AreaLsdbAdvertisement
                OCTET STRING,
        ospfv3AreaLsdbTypeKnown
                TruthValue
        }
ospfv3AreaLsdbAreaId OBJECT-TYPE
        SYNTAX          Ospfv3AreaIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The 32-bit identifier of the Area from which the
            LSA was received."
        REFERENCE
            "OSPF Version 2, Appendix C.2, Area parameters"
        ::= { ospfv3AreaLsdbEntry 1 }
ospfv3AreaLsdbType OBJECT-TYPE
        SYNTAX          Unsigned32(0..'FFFFFFFF'h)
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The type of the link state advertisement.
            Each link state type has a separate
            advertisement format.  Area-scope LSAs unrecognized
            by the router are also stored in this database."
        ::= { ospfv3AreaLsdbEntry 2 }
ospfv3AreaLsdbRouterId OBJECT-TYPE
        SYNTAX          Ospfv3RouterIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The 32-bit number that uniquely identifies the
            originating router in the Autonomous System."
        REFERENCE
            "OSPF Version 2, Appendix C.1, Global parameters"
        ::= { ospfv3AreaLsdbEntry 3 }
ospfv3AreaLsdbLsid OBJECT-TYPE
        SYNTAX          Ospfv3LsIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The Link State ID is an LS type-specific field
            containing a unique identifier;
            it identifies the piece of the routing domain
            that is being described by the advertisement.
            In contrast to OSPFv2, the LSID has no
            addressing semantics."
        ::= { ospfv3AreaLsdbEntry 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.
ospfv3AreaLsdbSequence OBJECT-TYPE
        SYNTAX          Ospfv3LsaSequenceTC
        MAX-ACCESS      read-only
        STATUS          current
        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"
        ::= { ospfv3AreaLsdbEntry 5 }
ospfv3AreaLsdbAge OBJECT-TYPE
        SYNTAX          Ospfv3LsaAgeTC
        UNITS           "seconds"
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "This field is the age of the link state
            advertisement in seconds.  The high-order bit
            of the LS age field is considered the DoNotAge
            bit for support of on-demand circuits."
        REFERENCE
            "OSPF Version 2, Section 12.1.1, LS age;
             Extending OSPF to Support Demand Circuits,
             Section 2.2, The LS age field."
        ::= { ospfv3AreaLsdbEntry 6 }
ospfv3AreaLsdbChecksum OBJECT-TYPE
        SYNTAX          Integer32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "This field is the checksum of the complete
            contents of the advertisement, excepting the
            age field.  The age 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"
        ::= { ospfv3AreaLsdbEntry 7 }
ospfv3AreaLsdbAdvertisement OBJECT-TYPE
        SYNTAX          OCTET STRING (SIZE (1..65535))
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The entire link state advertisement, including
            its header."
        ::= { ospfv3AreaLsdbEntry 8 }
ospfv3AreaLsdbTypeKnown OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The value true (1) indicates that the LSA type is
            recognized by this router."
        ::= { ospfv3AreaLsdbEntry 9 }
-- OSPFv3 Link-Scope Link State Database, for non-virtual interfaces
ospfv3LinkLsdbTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF Ospfv3LinkLsdbEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The OSPFv3 Process's Link-scope LSDB for non-virtual
            interfaces.  The LSDB contains the Link-scope link
            state advertisements from the interfaces that the
            device is attached to."
        ::= { ospfv3Objects 5 }
ospfv3LinkLsdbEntry OBJECT-TYPE
        SYNTAX          Ospfv3LinkLsdbEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "A single Link-scope link state advertisement."
        INDEX           { ospfv3LinkLsdbIfIndex,
                          ospfv3LinkLsdbIfInstId,
                          ospfv3LinkLsdbType,
                          ospfv3LinkLsdbRouterId,
                          ospfv3LinkLsdbLsid }
        ::= { ospfv3LinkLsdbTable 1 }
Ospfv3LinkLsdbEntry ::= SEQUENCE {
        ospfv3LinkLsdbIfIndex
                InterfaceIndex,
        ospfv3LinkLsdbIfInstId
                Ospfv3IfInstIdTC,
        ospfv3LinkLsdbType
                Unsigned32,
        ospfv3LinkLsdbRouterId
                Ospfv3RouterIdTC,
        ospfv3LinkLsdbLsid
                Ospfv3LsIdTC,
        ospfv3LinkLsdbSequence
                Ospfv3LsaSequenceTC,
        ospfv3LinkLsdbAge
                Ospfv3LsaAgeTC,
        ospfv3LinkLsdbChecksum
                Integer32,
        ospfv3LinkLsdbAdvertisement
                OCTET STRING,
        ospfv3LinkLsdbTypeKnown
                TruthValue
        }
ospfv3LinkLsdbIfIndex OBJECT-TYPE
        SYNTAX         InterfaceIndex
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION
            "The identifier of the link from which the LSA
            was received."
        ::= { ospfv3LinkLsdbEntry 1 }
ospfv3LinkLsdbIfInstId OBJECT-TYPE
        SYNTAX         Ospfv3IfInstIdTC
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION
            "The identifier of the interface instance from
            which the LSA was received."
        ::= { ospfv3LinkLsdbEntry 2 }
ospfv3LinkLsdbType OBJECT-TYPE
        SYNTAX          Unsigned32(0..'FFFFFFFF'h)
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The type of the link state advertisement.
            Each link state type has a separate
            advertisement format.  Link-scope LSAs unrecognized
            by the router are also stored in this database."
        ::= { ospfv3LinkLsdbEntry 3 }
ospfv3LinkLsdbRouterId OBJECT-TYPE
        SYNTAX          Ospfv3RouterIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The 32-bit number that uniquely identifies the
            originating router in the Autonomous System."
        REFERENCE
            "OSPF Version 2, Appendix C.1, Global parameters"
        ::= { ospfv3LinkLsdbEntry 4 }
ospfv3LinkLsdbLsid OBJECT-TYPE
        SYNTAX        Ospfv3LsIdTC
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
            "The Link State ID is an LS type-specific field
            containing a unique identifier;
            it identifies the piece of the routing domain
            that is being described by the advertisement.
            In contrast to OSPFv2, the LSID has no
            addressing semantics.  However, in OSPFv3
            the Link State ID always contains the flooding
            scope of the LSA."
        ::= { ospfv3LinkLsdbEntry 5 }
-- 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.
ospfv3LinkLsdbSequence OBJECT-TYPE
        SYNTAX          Ospfv3LsaSequenceTC
        MAX-ACCESS      read-only
        STATUS          current
        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"
        ::= { ospfv3LinkLsdbEntry 6 }
ospfv3LinkLsdbAge OBJECT-TYPE
        SYNTAX          Ospfv3LsaAgeTC
        UNITS           "seconds"
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "This field is the age of the link state
            advertisement in seconds.  The high-order bit
            of the LS age field is considered the DoNotAge
            bit for support of on-demand circuits."
        REFERENCE
            "OSPF Version 2, Section 12.1.1, LS age;
             Extending OSPF to Support Demand Circuits,
             Section 2.2, The LS age field."
        ::= { ospfv3LinkLsdbEntry 7 }
ospfv3LinkLsdbChecksum OBJECT-TYPE
        SYNTAX          Integer32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "This field is the checksum of the complete
            contents of the advertisement, excepting the
            age field.  The age 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"
        ::= { ospfv3LinkLsdbEntry 8 }
ospfv3LinkLsdbAdvertisement OBJECT-TYPE
        SYNTAX          OCTET STRING (SIZE (1..65535))
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The entire link state advertisement, including
            its header."
        ::= { ospfv3LinkLsdbEntry 9 }
ospfv3LinkLsdbTypeKnown OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The value true (1) indicates that the LSA type is
            recognized by this router."
        ::= { ospfv3LinkLsdbEntry 10 }
-- OSPF Host Table
ospfv3HostTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF Ospfv3HostEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The Host/Metric Table indicates what hosts are
            directly attached to the router and their
            corresponding metrics."
        REFERENCE
            "OSPF Version 2, Appendix C.7, Host route
            parameters"
        ::= { ospfv3Objects 6 }
ospfv3HostEntry OBJECT-TYPE
        SYNTAX          Ospfv3HostEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "A metric to be advertised when a given host is
            reachable.
            The information in this table is persistent, and
            when written, the entity SHOULD save the change
            to non-volatile storage."
        INDEX           { ospfv3HostAddressType,
                          ospfv3HostAddress }
        ::= { ospfv3HostTable 1 }
Ospfv3HostEntry ::= SEQUENCE {
        ospfv3HostAddressType
                InetAddressType,
        ospfv3HostAddress
                InetAddress,
        ospfv3HostMetric
                Metric,
        ospfv3HostRowStatus
                RowStatus,
        ospfv3HostAreaID
                Ospfv3AreaIdTC
        }
ospfv3HostAddressType OBJECT-TYPE
        SYNTAX          InetAddressType
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The address type of ospfv3HostAddress.  Only IPv6
            global address type is expected."
        REFERENCE
            "OSPF Version 2, Appendix C.7, Host route
            parameters"
        ::= { ospfv3HostEntry 1 }
ospfv3HostAddress OBJECT-TYPE
        SYNTAX          InetAddress
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The IPv6 address of the host.  Must be an
            IPv6 global address."
        REFERENCE
            "OSPF Version 2, Appendix C.7, Host route
            parameters"
        ::= { ospfv3HostEntry 2 }
ospfv3HostMetric OBJECT-TYPE
        SYNTAX          Metric
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The metric to be advertised."
        REFERENCE
            "OSPF Version 2, Appendix C.7, Host route
            parameters"
        ::= { ospfv3HostEntry 3 }
ospfv3HostRowStatus OBJECT-TYPE
        SYNTAX          RowStatus
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "This object permits management of the table by
            facilitating actions such as row creation,
            construction, and destruction.
            The value of this object has no effect on
            whether other objects in this conceptual row can be
            modified."
        ::= { ospfv3HostEntry 4 }
ospfv3HostAreaID OBJECT-TYPE
        SYNTAX          Ospfv3AreaIdTC
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The Area the host entry is to be found within.
            By default, the area for the subsuming OSPFv3
            interface, or Area 0 if there is no subsuming
            interface."
        REFERENCE
            "OSPF Version 2, Appendix C.2, Area parameters"
        ::= { ospfv3HostEntry 5 }
-- OSPFv3 Interface Table
ospfv3IfTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF Ospfv3IfEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The OSPFv3 Interface Table describes the
            interfaces from the viewpoint of OSPFv3."
        REFERENCE
            "OSPF for IPv6, Appendix C.3, Router Interface
            Parameters"
        ::= { ospfv3Objects 7 }
ospfv3IfEntry OBJECT-TYPE
        SYNTAX          Ospfv3IfEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The OSPFv3 Interface Entry describes one
            interface from the viewpoint of OSPFv3.
            The information in this table is persistent,
            and when written, the entity SHOULD save the
            change to non-volatile storage."
        INDEX           { ospfv3IfIndex,
                          ospfv3IfInstId }
        ::= { ospfv3IfTable 1 }
Ospfv3IfEntry ::= SEQUENCE {
        ospfv3IfIndex
                InterfaceIndex,
        ospfv3IfInstId
                Ospfv3IfInstIdTC,
        ospfv3IfAreaId
                Ospfv3AreaIdTC,
        ospfv3IfType
                INTEGER,
        ospfv3IfAdminStatus
                Status,
        ospfv3IfRtrPriority
                DesignatedRouterPriority,
        ospfv3IfTransitDelay
                Ospfv3UpToRefreshIntervalTC,
        ospfv3IfRetransInterval
                Ospfv3UpToRefreshIntervalTC,
        ospfv3IfHelloInterval
                HelloRange,
        ospfv3IfRtrDeadInterval
                 Ospfv3DeadIntervalRangeTC,
        ospfv3IfPollInterval
                Unsigned32,
        ospfv3IfState
                INTEGER,
        ospfv3IfDesignatedRouter
                Ospfv3RouterIdTC,
        ospfv3IfBackupDesignatedRouter
                Ospfv3RouterIdTC,
        ospfv3IfEvents
                Counter32,
        ospfv3IfRowStatus
                RowStatus,
        ospfv3IfDemand
                TruthValue,
        ospfv3IfMetricValue
                Metric,
        ospfv3IfLinkScopeLsaCount
                Gauge32,
        ospfv3IfLinkLsaCksumSum
                Unsigned32,
        ospfv3IfDemandNbrProbe
                TruthValue,
        ospfv3IfDemandNbrProbeRetransLimit
                Unsigned32,
        ospfv3IfDemandNbrProbeInterval
                Unsigned32,
        ospfv3IfTEDisabled
                TruthValue,
        ospfv3IfLinkLSASuppression
                TruthValue
        }
ospfv3IfIndex OBJECT-TYPE
        SYNTAX          InterfaceIndex
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The interface index of this OSPFv3 interface.
            It corresponds to the interface index of the
            IPv6 interface on which OSPFv3 is configured."
        ::= { ospfv3IfEntry 1 }
ospfv3IfInstId OBJECT-TYPE
        SYNTAX          Ospfv3IfInstIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "Enables multiple interface instances of OSPFv3
            to be run over a single link.  Each interface
            instance would be assigned a separate ID.  This ID
            has local link significance only."
        ::= { ospfv3IfEntry 2 }
ospfv3IfAreaId OBJECT-TYPE
        SYNTAX          Ospfv3AreaIdTC
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "A 32-bit integer uniquely identifying the area
            to which the interface connects.  Area ID
            0 is used for the OSPFv3 backbone."
        DEFVAL          { 0 }
        ::= { ospfv3IfEntry 3 }
ospfv3IfType OBJECT-TYPE
        SYNTAX          INTEGER {
                        broadcast(1),
                        nbma(2),
                        pointToPoint(3),
                        pointToMultipoint(5)
                        }
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The OSPFv3 interface type."
        ::= { ospfv3IfEntry 4 }
ospfv3IfAdminStatus OBJECT-TYPE
        SYNTAX          Status
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The OSPFv3 interface's administrative status.
            The value formed on the interface; the interface
            will be advertised as an internal route to some
            area.  The value 'disabled' denotes that the
            interface is external to OSPFv3.
            Note that a value of 'disabled' for the object
            ospfv3AdminStatus will override a value of
            'enabled' for the interface."
        DEFVAL          { enabled }
        ::= { ospfv3IfEntry 5 }
ospfv3IfRtrPriority OBJECT-TYPE
        SYNTAX          DesignatedRouterPriority
        MAX-ACCESS      read-create
        STATUS          current
        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 }
        ::= { ospfv3IfEntry 6 }
ospfv3IfTransitDelay OBJECT-TYPE
        SYNTAX          Ospfv3UpToRefreshIntervalTC
        UNITS           "seconds"
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The estimated number of seconds it takes to transmit
            a Link State Update packet over this interface.  LSAs
            contained in the update packet must have their age
            incremented by this amount before transmission.  This
            value should take into account the transmission and
            propagation delays of the interface."
        REFERENCE
            "OSPF for IPv6, Appendix C.3, Router Interface
            Parameters."
        DEFVAL          { 1 }
        ::= { ospfv3IfEntry 7 }
ospfv3IfRetransInterval OBJECT-TYPE
        SYNTAX          Ospfv3UpToRefreshIntervalTC
        UNITS           "seconds"
        MAX-ACCESS      read-create
        STATUS          current
        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 }
        ::= { ospfv3IfEntry 8 }
ospfv3IfHelloInterval OBJECT-TYPE
        SYNTAX          HelloRange
        UNITS           "seconds"
        MAX-ACCESS      read-create
        STATUS          current
        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 }
        ::= { ospfv3IfEntry 9 }
ospfv3IfRtrDeadInterval OBJECT-TYPE
        SYNTAX          Ospfv3DeadIntervalRangeTC
        UNITS           "seconds"
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The number of seconds that a router's Hello
            packets have not been seen before its
            neighbors declare the router down on the interface.
            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 }
        ::= { ospfv3IfEntry 10 }
ospfv3IfPollInterval OBJECT-TYPE
        SYNTAX          Unsigned32
        UNITS           "seconds"
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The larger time interval, in seconds, between
            the Hello packets sent to an inactive,
            non-broadcast multi-access neighbor."
        DEFVAL          { 120 }
        ::= { ospfv3IfEntry 11 }
ospfv3IfState OBJECT-TYPE
        SYNTAX          INTEGER {
                        down(1),
                        loopback(2),
                        waiting(3),
                        pointToPoint(4),
                        designatedRouter(5),
                        backupDesignatedRouter(6),
                        otherDesignatedRouter(7),
                        standby(8)
                        }
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The OSPFv3 interface state.  An interface may be
            in standby state if there are multiple interfaces
            on the link and another interface is active.  The
            interface may be in Down state if the underlying
            IPv6 interface is down or if the admin status is
            'disabled' either globally or for the interface."
        ::= { ospfv3IfEntry 12 }
ospfv3IfDesignatedRouter OBJECT-TYPE
        SYNTAX          Ospfv3RouterIdTC
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The Router ID of the Designated Router."
        ::= { ospfv3IfEntry 13 }
ospfv3IfBackupDesignatedRouter OBJECT-TYPE
        SYNTAX          Ospfv3RouterIdTC
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The Router ID of the Backup Designated
            Router."
        ::= { ospfv3IfEntry 14 }
ospfv3IfEvents OBJECT-TYPE
        SYNTAX          Counter32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The number of times this OSPFv3 interface has
            changed its state or an error has occurred.
            Discontinuities in the value of this counter
            can occur at re-initialization of the management
            system and at other times as indicated by the
            value of ospfv3DiscontinuityTime."
        ::= { ospfv3IfEntry 15 }
 ospfv3IfRowStatus OBJECT-TYPE
        SYNTAX          RowStatus
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "This object permits management of the table by
            facilitating actions such as row creation,
            construction, and destruction.
            The value of this object has no effect on
            whether other objects in this conceptual row can be
            modified."
        ::= { ospfv3IfEntry 16 }
ospfv3IfDemand OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "Indicates whether Demand OSPFv3 procedures
            (Hello suppression to FULL neighbors and
            setting the DoNotAge flag on propagated LSAs)
            should be performed on this interface."
        DEFVAL { false }
        ::= { ospfv3IfEntry 17 }
ospfv3IfMetricValue OBJECT-TYPE
        SYNTAX          Metric
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The metric assigned to this interface.
             The default value of the metric is
             'Reference Bandwidth / ifSpeed'.  The value
             of the reference bandwidth can be set
             in the ospfv3ReferenceBandwidth object."
        ::= { ospfv3IfEntry 18 }
 ospfv3IfLinkScopeLsaCount OBJECT-TYPE
        SYNTAX          Gauge32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The total number of Link-scope link state
            advertisements in this link's link state
            database."
        ::= { ospfv3IfEntry 19 }
 ospfv3IfLinkLsaCksumSum OBJECT-TYPE
        SYNTAX          Unsigned32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The 32-bit unsigned sum of the Link-scope link state
            advertisements' LS checksums contained in this
            link's link state database.  The sum can be used
            to determine if there has been a change in a
            router's link state database or to compare the
            link state database of two routers."
        ::= { ospfv3IfEntry 20 }
ospfv3IfDemandNbrProbe OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
               "Indicates whether or not neighbor probing is
               enabled to determine whether or not the neighbor
               is inactive.  Neighbor probing is disabled by
               default."
        DEFVAL { false }
        ::= { ospfv3IfEntry 21 }

ospfv3IfDemandNbrProbeRetransLimit OBJECT-TYPE

       SYNTAX       Unsigned32
       MAX-ACCESS   read-create
       STATUS       current
       DESCRIPTION
          "The number of consecutive LSA retransmissions before
          the neighbor is deemed inactive and the neighbor
          adjacency is brought down."
       DEFVAL          { 10 }
       ::= { ospfv3IfEntry 22}

ospfv3IfDemandNbrProbeInterval OBJECT-TYPE

       SYNTAX       Unsigned32
       UNITS        "seconds"
       MAX-ACCESS   read-create
       STATUS       current
       DESCRIPTION
          "Defines how often the neighbor will be probed."
       DEFVAL          { 120 }
       ::= { ospfv3IfEntry 23 }
ospfv3IfTEDisabled OBJECT-TYPE
       SYNTAX          TruthValue
       MAX-ACCESS      read-create
       STATUS          current
       DESCRIPTION
          "Indicates whether or not traffic engineering
          is disabled on the interface when traffic
          engineering is enabled in the area where the
          interface is attached.  The object is set
          to the value true (1) to disable traffic engineering
          on the interface.  Traffic engineering is enabled
          by default on the interface when traffic engineering
          is enabled in the area where the interface is
          attached."
       DEFVAL { false }
       ::= { ospfv3IfEntry 24 }
ospfv3IfLinkLSASuppression OBJECT-TYPE
       SYNTAX          TruthValue
       MAX-ACCESS      read-create
       STATUS          current
       DESCRIPTION
          "Specifies whether or not link LSA origination is
          suppressed for broadcast or NBMA interface types.
          The object is set to value true (1) to suppress
          the origination."
       REFERENCE
            "OSPF for IPv6, Appendix C.3, Router Interface
                Parameters"
       DEFVAL { false }
       ::= { ospfv3IfEntry 25 }
-- OSPFv3 Virtual Interface Table
ospfv3VirtIfTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF Ospfv3VirtIfEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "Information about this router's virtual
            interfaces that the OSPFv3 Process is configured
            to carry on."
        REFERENCE
            "OSPF for IPv6, Appendix C.4, Virtual Link
            Parameters"
        ::= { ospfv3Objects 8 }
ospfv3VirtIfEntry OBJECT-TYPE
        SYNTAX          Ospfv3VirtIfEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "Information about a single virtual interface.
            The information in this table is persistent,
            and when written, the entity SHOULD save the
            change to non-volatile storage."
        INDEX           { ospfv3VirtIfAreaId,
                          ospfv3VirtIfNeighbor }
        ::= { ospfv3VirtIfTable 1 }
Ospfv3VirtIfEntry ::= SEQUENCE {
        ospfv3VirtIfAreaId
                Ospfv3AreaIdTC,
        ospfv3VirtIfNeighbor
                Ospfv3RouterIdTC,
        ospfv3VirtIfIndex
                InterfaceIndex,
        ospfv3VirtIfInstId
                Ospfv3IfInstIdTC,
        ospfv3VirtIfTransitDelay
                Ospfv3UpToRefreshIntervalTC,
        ospfv3VirtIfRetransInterval
                Ospfv3UpToRefreshIntervalTC,
        ospfv3VirtIfHelloInterval
                HelloRange,
        ospfv3VirtIfRtrDeadInterval
                Ospfv3DeadIntervalRangeTC,
        ospfv3VirtIfState
                INTEGER,
        ospfv3VirtIfEvents
                Counter32,
        ospfv3VirtIfRowStatus
                RowStatus,
        ospfv3VirtIfLinkScopeLsaCount
                Gauge32,
        ospfv3VirtIfLinkLsaCksumSum
                Unsigned32
        }
ospfv3VirtIfAreaId OBJECT-TYPE
        SYNTAX          Ospfv3AreaIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The transit area that the virtual link
            traverses.  By definition, this is not
            Area 0."
        ::= { ospfv3VirtIfEntry 1 }
ospfv3VirtIfNeighbor OBJECT-TYPE
        SYNTAX          Ospfv3RouterIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The Router ID of the virtual neighbor."
        ::= { ospfv3VirtIfEntry 2 }
ospfv3VirtIfIndex OBJECT-TYPE
        SYNTAX          InterfaceIndex
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The local interface index assigned by the
            OSPFv3 Process to this OSPFv3 virtual interface.
            It is advertised in Hellos sent over the virtual
            link and in the router's router-LSAs."
        ::= { ospfv3VirtIfEntry 3 }
ospfv3VirtIfInstId OBJECT-TYPE
        SYNTAX          Ospfv3IfInstIdTC
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The local Interface Instance ID assigned by the
            OSPFv3 Process to this OSPFv3 virtual interface."
        ::= { ospfv3VirtIfEntry 4 }
ospfv3VirtIfTransitDelay OBJECT-TYPE
        SYNTAX          Ospfv3UpToRefreshIntervalTC
        UNITS           "seconds"
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The estimated number of seconds it takes to
            transmit a Link State Update packet over this
            interface."
        DEFVAL          { 1 }
        ::= { ospfv3VirtIfEntry 5 }
ospfv3VirtIfRetransInterval OBJECT-TYPE
        SYNTAX          Ospfv3UpToRefreshIntervalTC
        UNITS           "seconds"
        MAX-ACCESS      read-create
        STATUS          current
        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.  This
            value should be well over the expected
            round-trip time."
        DEFVAL          { 5 }
        ::= { ospfv3VirtIfEntry 6 }
ospfv3VirtIfHelloInterval OBJECT-TYPE
        SYNTAX          HelloRange
        UNITS           "seconds"
        MAX-ACCESS      read-create
        STATUS          current
        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 }
        ::= { ospfv3VirtIfEntry 7 }
ospfv3VirtIfRtrDeadInterval OBJECT-TYPE
        SYNTAX          Ospfv3DeadIntervalRangeTC
        UNITS           "seconds"
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "The number of seconds that a router's Hello
            packets have not been seen before its
            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 }
        ::= { ospfv3VirtIfEntry 8 }
ospfv3VirtIfState OBJECT-TYPE
        SYNTAX          INTEGER {
                        down(1),
                        pointToPoint(4)
                        }
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "OSPF virtual interface states.  The same encoding
            as the ospfV3IfTable is used."
        ::= { ospfv3VirtIfEntry 9 }
ospfv3VirtIfEvents OBJECT-TYPE
        SYNTAX          Counter32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The number of state changes or error events on
            this virtual link.
            Discontinuities in the value of this counter
            can occur at re-initialization of the management
            system and at other times as indicated by the
            value of ospfv3DiscontinuityTime."
        ::= { ospfv3VirtIfEntry 10 }
ospfv3VirtIfRowStatus OBJECT-TYPE
        SYNTAX          RowStatus
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "This object permits management of the table by
            facilitating actions such as row creation,
            construction, and destruction.
            The value of this object has no effect on
            whether other objects in this conceptual row can be
            modified."
        ::= { ospfv3VirtIfEntry 11 }
ospfv3VirtIfLinkScopeLsaCount OBJECT-TYPE
        SYNTAX          Gauge32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The total number of Link-scope link state
            advertisements in this virtual link's link state
            database."
        ::= { ospfv3VirtIfEntry 12 }
ospfv3VirtIfLinkLsaCksumSum OBJECT-TYPE
        SYNTAX          Unsigned32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The 32-bit unsigned sum of the Link-scope link state
            advertisements' LS checksums contained in this
            virtual link's link state database.  The sum can be used
            to determine if there has been a change in a
            router's link state database or to compare the
            link state database of two routers."
        ::= { ospfv3VirtIfEntry 13 }
-- OSPFv3 Neighbor Table
ospfv3NbrTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF Ospfv3NbrEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "A table describing all neighbors in the
            locality of the OSPFv3 router."
        REFERENCE
            "OSPF Version 2, Section 10, The Neighbor Data
            Structure"
        ::= { ospfv3Objects 9 }
ospfv3NbrEntry OBJECT-TYPE
        SYNTAX          Ospfv3NbrEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The information regarding a single neighbor."
        REFERENCE
            "OSPF Version 2, Section 10, The Neighbor Data
            Structure"
        INDEX           { ospfv3NbrIfIndex,
                          ospfv3NbrIfInstId,
                          ospfv3NbrRtrId }
        ::= { ospfv3NbrTable 1 }
Ospfv3NbrEntry ::= SEQUENCE {
        ospfv3NbrIfIndex
                InterfaceIndex,
        ospfv3NbrIfInstId
                Ospfv3IfInstIdTC,
        ospfv3NbrRtrId
                Ospfv3RouterIdTC,
        ospfv3NbrAddressType
                InetAddressType,
        ospfv3NbrAddress
                InetAddress,
        ospfv3NbrOptions
                Integer32,
        ospfv3NbrPriority
                DesignatedRouterPriority,
        ospfv3NbrState
                INTEGER,
        ospfv3NbrEvents
                Counter32,
        ospfv3NbrLsRetransQLen
                Gauge32,
        ospfv3NbrHelloSuppressed
                TruthValue,
        ospfv3NbrIfId
                InterfaceIndex,
        ospfv3NbrRestartHelperStatus
                INTEGER,
        ospfv3NbrRestartHelperAge
                Ospfv3UpToRefreshIntervalTC,
        ospfv3NbrRestartHelperExitReason
                INTEGER
        }
ospfv3NbrIfIndex OBJECT-TYPE
        SYNTAX          InterfaceIndex
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The Local Link ID of the link over which the
             neighbor can be reached."
        ::= { ospfv3NbrEntry 1 }
ospfv3NbrIfInstId OBJECT-TYPE
        SYNTAX          Ospfv3IfInstIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "Interface instance over which the neighbor
            can be reached.  This ID has local link
            significance only."
        ::= { ospfv3NbrEntry 2 }
ospfv3NbrRtrId OBJECT-TYPE
        SYNTAX          Ospfv3RouterIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "A 32-bit unsigned integer uniquely identifying the
            neighboring router in the Autonomous System."
        ::= { ospfv3NbrEntry 3 }
ospfv3NbrAddressType OBJECT-TYPE
        SYNTAX          InetAddressType
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The address type of ospfv3NbrAddress.  Only IPv6
            addresses without zone index are expected."
        ::= { ospfv3NbrEntry 4 }
ospfv3NbrAddress OBJECT-TYPE
        SYNTAX          InetAddress
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The IPv6 address of the neighbor associated with
            the local link."
        ::= { ospfv3NbrEntry 5 }
ospfv3NbrOptions OBJECT-TYPE
        SYNTAX          Integer32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "A bit mask corresponding to the neighbor's
            options field."
        REFERENCE
            "OSPF for IPv6, Appendix A.2, The Options Field"
        ::= { ospfv3NbrEntry 6 }
ospfv3NbrPriority OBJECT-TYPE
        SYNTAX          DesignatedRouterPriority
        MAX-ACCESS      read-only
        STATUS          current
        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."
        ::= { ospfv3NbrEntry 7 }
ospfv3NbrState OBJECT-TYPE
        SYNTAX          INTEGER {
                        down(1),
                        attempt(2),
                        init(3),
                        twoWay(4),
                        exchangeStart(5),
                        exchange(6),
                        loading(7),
                        full(8)
                        }
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The state of the relationship with this
            neighbor."
        REFERENCE
            "OSPF Version 2, Section 10.1, Neighbor states"
        ::= { ospfv3NbrEntry 8 }
ospfv3NbrEvents OBJECT-TYPE
        SYNTAX          Counter32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The number of times this neighbor relationship
            has changed state or an error has occurred.
            Discontinuities in the value of this counter
            can occur at re-initialization of the management
            system and at other times as indicated by the
            value of ospfv3DiscontinuityTime."
        ::= { ospfv3NbrEntry 9 }
ospfv3NbrLsRetransQLen OBJECT-TYPE
        SYNTAX          Gauge32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The current length of the retransmission
            queue."
        ::= { ospfv3NbrEntry 10 }
ospfv3NbrHelloSuppressed OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "Indicates whether Hellos are being suppressed
            to the neighbor."
        ::= { ospfv3NbrEntry 11 }
ospfv3NbrIfId OBJECT-TYPE
        SYNTAX          InterfaceIndex
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The Interface ID that the neighbor advertises
            in its Hello packets on this link, that is, the
            neighbor's local interface index."
        ::= { ospfv3NbrEntry 12 }
ospfv3NbrRestartHelperStatus OBJECT-TYPE
       SYNTAX       INTEGER { notHelping(1),
                              helping(2)
                            }
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
          "Indicates whether the router is acting
          as a graceful restart helper for the neighbor."
          ::= { ospfv3NbrEntry 13 }
ospfv3NbrRestartHelperAge OBJECT-TYPE
       SYNTAX       Ospfv3UpToRefreshIntervalTC
       UNITS        "seconds"
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
          "Remaining time in current OSPF graceful restart
          interval, if the router is acting as a restart
          helper for the neighbor."
       ::= { ospfv3NbrEntry 14 }
ospfv3NbrRestartHelperExitReason OBJECT-TYPE
       SYNTAX       INTEGER { none(1),
                              inProgress(2),
                              completed(3),
                              timedOut(4),
                              topologyChanged(5)
                            }
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
          "Describes the outcome of the last attempt at acting
          as a graceful restart helper for the neighbor.
          none:            no restart has yet been attempted.
          inProgress:      a restart attempt is currently underway.
          completed:       the last restart completed successfully.
          timedOut:        the last restart timed out.
          topologyChanged: the last restart was aborted due to
                           a topology change."
    ::= { ospfv3NbrEntry 15 }
-- OSPFv3 Configured Neighbor Table
ospfv3CfgNbrTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF Ospfv3CfgNbrEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "A table describing all configured neighbors.
            The Configured Neighbors table just gives
            OSPFv3 information for sending OSPFv3 packets
            to potential neighbors and is typically used
            on NBMA and Point-to-Multipoint networks.
            Once a Hello is received from a neighbor in
            the Configured Neighbor table, an entry for
            that neighbor is created in the Neighbor table
            and adjacency state is maintained there.
            Neighbors on multi-access or Point-to-Point
            networks can use multicast addressing, so only
            Neighbor table entries are created for them."
        REFERENCE
            "OSPF Version 2, Section 10, The Neighbor Data
            Structure"
        ::= { ospfv3Objects 10 }
ospfv3CfgNbrEntry OBJECT-TYPE
        SYNTAX          Ospfv3CfgNbrEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The information regarding a single configured
            neighbor.
            The information in this table is persistent,
            and when written, the entity SHOULD save the
            change to non-volatile storage."
        REFERENCE
            "OSPF Version 2, Section 10, The Neighbor Data
            Structure"
        INDEX           { ospfv3CfgNbrIfIndex,
                          ospfv3CfgNbrIfInstId,
                          ospfv3CfgNbrAddressType,
                          ospfv3CfgNbrAddress }
        ::= { ospfv3CfgNbrTable 1 }
Ospfv3CfgNbrEntry ::= SEQUENCE {
        ospfv3CfgNbrIfIndex
                InterfaceIndex,
        ospfv3CfgNbrIfInstId
                Ospfv3IfInstIdTC,
        ospfv3CfgNbrAddressType
                InetAddressType,
        ospfv3CfgNbrAddress
                InetAddress,
        ospfv3CfgNbrPriority
                DesignatedRouterPriority,
        ospfv3CfgNbrRowStatus
                RowStatus
        }
ospfv3CfgNbrIfIndex OBJECT-TYPE
        SYNTAX          InterfaceIndex
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The Local Link ID of the link over which the
             neighbor can be reached."
        ::= { ospfv3CfgNbrEntry 1 }
ospfv3CfgNbrIfInstId OBJECT-TYPE
        SYNTAX          Ospfv3IfInstIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "Interface instance over which the neighbor
            can be reached.  This ID has local link
            significance only."
        ::= { ospfv3CfgNbrEntry 2 }
ospfv3CfgNbrAddressType OBJECT-TYPE
        SYNTAX          InetAddressType
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The address type of ospfv3NbrAddress.  Only IPv6
            addresses without zone index are expected."
        ::= { ospfv3CfgNbrEntry 3 }
ospfv3CfgNbrAddress OBJECT-TYPE
        SYNTAX          InetAddress
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The IPv6 address of the neighbor associated with
            the local link."
        ::= { ospfv3CfgNbrEntry 4 }
ospfv3CfgNbrPriority OBJECT-TYPE
        SYNTAX          DesignatedRouterPriority
        MAX-ACCESS      read-create
        STATUS          current
        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."
        DEFVAL          { 1 }
        ::= { ospfv3CfgNbrEntry 5 }
ospfv3CfgNbrRowStatus OBJECT-TYPE
        SYNTAX          RowStatus
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "This object permits management of the table by
            facilitating actions such as row creation,
            construction, and destruction.
            The value of this object has no effect on
            whether other objects in this conceptual row can be
            modified."
        ::= { ospfv3CfgNbrEntry 6 }
-- OSPFv3 Virtual Neighbor Table
ospfv3VirtNbrTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF Ospfv3VirtNbrEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "A table describing all virtual neighbors."
        REFERENCE
            "OSPF Version 2, Section 15, Virtual Links"
        ::= { ospfv3Objects 11 }
ospfv3VirtNbrEntry OBJECT-TYPE
        SYNTAX          Ospfv3VirtNbrEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "Virtual neighbor information."
        INDEX           { ospfv3VirtNbrArea,
                          ospfv3VirtNbrRtrId }
        ::= { ospfv3VirtNbrTable 1 }
Ospfv3VirtNbrEntry ::= SEQUENCE {
        ospfv3VirtNbrArea
                Ospfv3AreaIdTC,
        ospfv3VirtNbrRtrId
                Ospfv3RouterIdTC,
        ospfv3VirtNbrIfIndex
                InterfaceIndex,
        ospfv3VirtNbrIfInstId
                Ospfv3IfInstIdTC,
        ospfv3VirtNbrAddressType
                InetAddressType,
        ospfv3VirtNbrAddress
                InetAddress,
        ospfv3VirtNbrOptions
                Integer32,
        ospfv3VirtNbrState
                INTEGER,
        ospfv3VirtNbrEvents
                Counter32,
        ospfv3VirtNbrLsRetransQLen
                Gauge32,
        ospfv3VirtNbrHelloSuppressed
                TruthValue,
        ospfv3VirtNbrIfId
                InterfaceIndex,
        ospfv3VirtNbrRestartHelperStatus
                INTEGER,
        ospfv3VirtNbrRestartHelperAge
                Ospfv3UpToRefreshIntervalTC,
        ospfv3VirtNbrRestartHelperExitReason
                INTEGER
        }
ospfv3VirtNbrArea OBJECT-TYPE
        SYNTAX          Ospfv3AreaIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The transit area Identifier."
        ::= { ospfv3VirtNbrEntry 1 }
ospfv3VirtNbrRtrId OBJECT-TYPE
        SYNTAX          Ospfv3RouterIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "A 32-bit integer uniquely identifying the
            neighboring router in the Autonomous System."
        ::= { ospfv3VirtNbrEntry 2 }
ospfv3VirtNbrIfIndex OBJECT-TYPE
        SYNTAX          InterfaceIndex
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The local Interface ID for the virtual link over
            which the neighbor can be reached."
        ::= { ospfv3VirtNbrEntry 3 }
ospfv3VirtNbrIfInstId OBJECT-TYPE
        SYNTAX          Ospfv3IfInstIdTC
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The interface instance for the virtual link over
            which the neighbor can be reached."
        ::= { ospfv3VirtNbrEntry 4 }
ospfv3VirtNbrAddressType OBJECT-TYPE
        SYNTAX          InetAddressType
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The address type of ospfv3VirtNbrAddress.  Only IPv6
            addresses without zone index are expected."
        ::= { ospfv3VirtNbrEntry 5 }
ospfv3VirtNbrAddress OBJECT-TYPE
        SYNTAX          InetAddress
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The IPv6 address advertised by this virtual neighbor.
            It must be a global scope address."
        ::= { ospfv3VirtNbrEntry 6 }
ospfv3VirtNbrOptions OBJECT-TYPE
        SYNTAX          Integer32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "A bit mask corresponding to the neighbor's options
            field."
        REFERENCE
            "OSPF for IPv6, Appendix A.2, The Options Field"
        ::= { ospfv3VirtNbrEntry 7 }
ospfv3VirtNbrState OBJECT-TYPE
        SYNTAX          INTEGER {
                        down(1),
                        attempt(2),
                        init(3),
                        twoWay(4),
                        exchangeStart(5),
                        exchange(6),
                        loading(7),
                        full(8)
                        }
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The state of the virtual neighbor relationship."
        ::= { ospfv3VirtNbrEntry 8 }
ospfv3VirtNbrEvents OBJECT-TYPE
        SYNTAX          Counter32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The number of times this virtual link has
            changed its state or an error has occurred.
            Discontinuities in the value of this counter
            can occur at re-initialization of the management
            system and at other times as indicated by the
            value of ospfv3DiscontinuityTime."
        ::= { ospfv3VirtNbrEntry 9 }
ospfv3VirtNbrLsRetransQLen OBJECT-TYPE
        SYNTAX          Gauge32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The current length of the retransmission
            queue."
        ::= { ospfv3VirtNbrEntry 10 }
ospfv3VirtNbrHelloSuppressed OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "Indicates whether Hellos are being suppressed
            to the neighbor."
        ::= { ospfv3VirtNbrEntry 11 }
ospfv3VirtNbrIfId OBJECT-TYPE
        SYNTAX          InterfaceIndex
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The Interface ID that the neighbor advertises
            in its Hello packets on this virtual link, that is,
            the neighbor's local Interface ID."
        ::= { ospfv3VirtNbrEntry 12 }

ospfv3VirtNbrRestartHelperStatus OBJECT-TYPE

       SYNTAX       INTEGER { notHelping(1),
                              helping(2)
                            }
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
           "Indicates whether the router is acting
           as a graceful restart helper for the neighbor."
          ::= { ospfv3VirtNbrEntry 13 }
ospfv3VirtNbrRestartHelperAge OBJECT-TYPE
       SYNTAX       Ospfv3UpToRefreshIntervalTC
       UNITS        "seconds"
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
           "Remaining time in the current OSPF graceful restart
           interval, if the router is acting as a restart
           helper for the neighbor."
       ::= { ospfv3VirtNbrEntry 14 }
ospfv3VirtNbrRestartHelperExitReason OBJECT-TYPE
       SYNTAX       INTEGER { none(1),
                              inProgress(2),
                              completed(3),
                              timedOut(4),
                              topologyChanged(5)
                            }
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
           "Describes the outcome of the last attempt at acting
           as a graceful restart helper for the neighbor.
           none:            no restart has yet been attempted.
           inProgress:      a restart attempt is currently underway.
           completed:       the last restart completed successfully.
           timedOut:        the last restart timed out.
           topologyChanged: the last restart was aborted due to
                            a topology change."
    ::= { ospfv3VirtNbrEntry 15 }
--
-- The OSPFv3 Area Aggregate Table
--
ospfv3AreaAggregateTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF Ospfv3AreaAggregateEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The Area Aggregate Table acts as an adjunct
            to the Area Table.  It describes those address
            aggregates that are configured to be propagated
            from an area.  Its purpose is to reduce the amount
            of information that is known beyond an area's
            borders.
            A range of IPv6 prefixes specified by a
            prefix / prefix length pair.  Note that if
            ranges are configured such that one range
            subsumes another range, the most specific
            match is the preferred one."
        ::= { ospfv3Objects 12 }
ospfv3AreaAggregateEntry OBJECT-TYPE
        SYNTAX          Ospfv3AreaAggregateEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "A single area aggregate entry.
            Information in this table is persistent, and
            when this object is written, the entity SHOULD
            save the change to non-volatile storage."
        REFERENCE
            "OSPF Version 2, Appendix C.2, Area parameters"
        INDEX           { ospfv3AreaAggregateAreaID,
                          ospfv3AreaAggregateAreaLsdbType,
                          ospfv3AreaAggregatePrefixType,
                          ospfv3AreaAggregatePrefix,
                          ospfv3AreaAggregatePrefixLength }
        ::= { ospfv3AreaAggregateTable 1 }
Ospfv3AreaAggregateEntry ::= SEQUENCE {
        ospfv3AreaAggregateAreaID
                Ospfv3AreaIdTC,
        ospfv3AreaAggregateAreaLsdbType
                INTEGER,
        ospfv3AreaAggregatePrefixType
                InetAddressType,
        ospfv3AreaAggregatePrefix
                InetAddress,
        ospfv3AreaAggregatePrefixLength
                InetAddressPrefixLength,
        ospfv3AreaAggregateRowStatus
                RowStatus,
        ospfv3AreaAggregateEffect
                INTEGER,
        ospfv3AreaAggregateRouteTag
                Unsigned32
        }
ospfv3AreaAggregateAreaID OBJECT-TYPE
        SYNTAX          Ospfv3AreaIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The area the Address Aggregate is to be found
            within."
        REFERENCE
            "OSPF Version 2, Appendix C.2, Area parameters"
        ::= { ospfv3AreaAggregateEntry 1 }
ospfv3AreaAggregateAreaLsdbType OBJECT-TYPE
        SYNTAX          INTEGER {
                        interAreaPrefixLsa(8195), -- 0x2003
                        nssaExternalLsa(8199)     -- 0x2007
                        }
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The type of the Address Aggregate.  This field
            specifies the Area LSDB type that this Address
            Aggregate applies to."
        REFERENCE
            "OSPF Version 2, Appendix A.4.1, The LSA header"
        ::= { ospfv3AreaAggregateEntry 2 }
ospfv3AreaAggregatePrefixType OBJECT-TYPE
        SYNTAX          InetAddressType
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The prefix type of ospfv3AreaAggregatePrefix.  Only
            IPv6 addresses are expected."
        ::= { ospfv3AreaAggregateEntry 3 }
ospfv3AreaAggregatePrefix OBJECT-TYPE
        SYNTAX          InetAddress (SIZE (0..16))
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The IPv6 prefix."
        REFERENCE
            "OSPF Version 2, Appendix C.2, Area parameters"
        ::= { ospfv3AreaAggregateEntry 4 }
ospfv3AreaAggregatePrefixLength OBJECT-TYPE
        SYNTAX          InetAddressPrefixLength (3..128)
        UNITS           "bits"
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The length of the prefix (in bits).  A prefix can
            not be shorter than 3 bits."
        REFERENCE
            "OSPF Version 2, Appendix C.2, Area parameters"
        ::= { ospfv3AreaAggregateEntry 5 }
ospfv3AreaAggregateRowStatus OBJECT-TYPE
        SYNTAX          RowStatus
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "This object permits management of the table by
            facilitating actions such as row creation,
            construction, and destruction.
            The value of this object has no effect on
            whether other objects in this conceptual row can be
            modified."
        ::= { ospfv3AreaAggregateEntry 6 }
ospfv3AreaAggregateEffect OBJECT-TYPE
        SYNTAX          INTEGER {
                        advertiseMatching(1),
                        doNotAdvertiseMatching(2)
                        }
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "Prefixes subsumed by ranges will either trigger the
            advertisement of the indicated aggregate
            (advertiseMatching) or result in the prefix not
            being advertised at all outside the area."
        DEFVAL          { advertiseMatching }
        ::= { ospfv3AreaAggregateEntry 7 }
ospfv3AreaAggregateRouteTag OBJECT-TYPE
        SYNTAX          Unsigned32
        MAX-ACCESS      read-create
        STATUS          current
        DESCRIPTION
            "This tag is advertised only in the summarized
            As-External LSA when summarizing from NSSA-LSAs to
            AS-External-LSAs."
        DEFVAL         { 0 }
        ::= { ospfv3AreaAggregateEntry 8 }
-- OSPFv3 Link-Scope Link State Database, for virtual interfaces
ospfv3VirtLinkLsdbTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF Ospfv3VirtLinkLsdbEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The OSPFv3 Process's Link-scope LSDB for virtual
            interfaces.  The LSDB contains the Link-scope link
            state advertisements from virtual interfaces."
        ::= { ospfv3Objects 13 }
ospfv3VirtLinkLsdbEntry OBJECT-TYPE
        SYNTAX          Ospfv3VirtLinkLsdbEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "A single Link-scope link state advertisement
            for a virtual interface."
        INDEX           { ospfv3VirtLinkLsdbIfAreaId,
                          ospfv3VirtLinkLsdbIfNeighbor,
                          ospfv3VirtLinkLsdbType,
                          ospfv3VirtLinkLsdbRouterId,
                          ospfv3VirtLinkLsdbLsid }
        ::= { ospfv3VirtLinkLsdbTable 1 }
Ospfv3VirtLinkLsdbEntry ::= SEQUENCE {
        ospfv3VirtLinkLsdbIfAreaId
                Ospfv3AreaIdTC,
        ospfv3VirtLinkLsdbIfNeighbor
                Ospfv3RouterIdTC,
        ospfv3VirtLinkLsdbType
                Unsigned32,
        ospfv3VirtLinkLsdbRouterId
                Ospfv3RouterIdTC,
        ospfv3VirtLinkLsdbLsid
                Ospfv3LsIdTC,
        ospfv3VirtLinkLsdbSequence
                Ospfv3LsaSequenceTC,
        ospfv3VirtLinkLsdbAge
                Ospfv3LsaAgeTC,
        ospfv3VirtLinkLsdbChecksum
                Integer32,
        ospfv3VirtLinkLsdbAdvertisement
                OCTET STRING,
        ospfv3VirtLinkLsdbTypeKnown
                TruthValue
        }
ospfv3VirtLinkLsdbIfAreaId OBJECT-TYPE
        SYNTAX          Ospfv3AreaIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The transit area that the virtual link
            traverses.  By definition, this is not
            Area 0."
        ::= { ospfv3VirtLinkLsdbEntry 1 }
ospfv3VirtLinkLsdbIfNeighbor OBJECT-TYPE
        SYNTAX          Ospfv3RouterIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The Router ID of the virtual neighbor."
        ::= { ospfv3VirtLinkLsdbEntry 2 }
ospfv3VirtLinkLsdbType OBJECT-TYPE
        SYNTAX          Unsigned32(0..'FFFFFFFF'h)
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The type of the link state advertisement.
            Each link state type has a separate
            advertisement format.  Link-scope LSAs unrecognized
            by the router are also stored in this database."
        ::= { ospfv3VirtLinkLsdbEntry 3 }
ospfv3VirtLinkLsdbRouterId OBJECT-TYPE
        SYNTAX          Ospfv3RouterIdTC
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "The 32-bit number that uniquely identifies the
            originating router in the Autonomous System."
        REFERENCE
            "OSPF Version 2, Appendix C.1, Global parameters"
        ::= { ospfv3VirtLinkLsdbEntry 4 }
ospfv3VirtLinkLsdbLsid OBJECT-TYPE
        SYNTAX        Ospfv3LsIdTC
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
            "The Link State ID is an LS type-specific field
            containing a unique identifier;
            it identifies the piece of the routing domain
            that is being described by the advertisement.
            In contrast to OSPFv2, the LSID has no
            addressing semantics."
        ::= { ospfv3VirtLinkLsdbEntry 5 }
-- 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.
ospfv3VirtLinkLsdbSequence OBJECT-TYPE
        SYNTAX          Ospfv3LsaSequenceTC
        MAX-ACCESS      read-only
        STATUS          current
        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"
        ::= { ospfv3VirtLinkLsdbEntry 6 }
ospfv3VirtLinkLsdbAge OBJECT-TYPE
        SYNTAX          Ospfv3LsaAgeTC
        UNITS           "seconds"
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "This field is the age of the link state
            advertisement in seconds.  The high-order bit
            of the LS age field is considered the DoNotAge
            bit for support of on-demand circuits."
        REFERENCE
            "OSPF Version 2, Section 12.1.1, LS age;
             Extending OSPF to Support Demand Circuits,
             Section 2.2, The LS age field."
        ::= { ospfv3VirtLinkLsdbEntry 7 }
ospfv3VirtLinkLsdbChecksum OBJECT-TYPE
        SYNTAX          Integer32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "This field is the checksum of the complete
            contents of the advertisement, excepting the
            age field.  The age 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"
        ::= { ospfv3VirtLinkLsdbEntry 8 }
ospfv3VirtLinkLsdbAdvertisement OBJECT-TYPE
        SYNTAX          OCTET STRING (SIZE (1..65535))
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The entire link state advertisement, including
            its header."
        ::= { ospfv3VirtLinkLsdbEntry 9 }
ospfv3VirtLinkLsdbTypeKnown OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "The value true (1) indicates that the LSA type is
            recognized by this router."
        ::= { ospfv3VirtLinkLsdbEntry 10 }
-- The Ospfv3 Notification Table
-- The Ospfv3 Notification Table records fields that are
-- required for notifications.
ospfv3NotificationEntry OBJECT IDENTIFIER
        ::= { ospfv3Objects 14 }
ospfv3ConfigErrorType OBJECT-TYPE
    SYNTAX       INTEGER {
                    badVersion(1),
                    areaMismatch(2),
                    unknownNbmaNbr(3), -- Router is DR eligible
                    unknownVirtualNbr(4),
                    helloIntervalMismatch(5),
                    deadIntervalMismatch(6),
                    optionMismatch(7),
                    mtuMismatch(8),
                    duplicateRouterId(9),
                    noError(10) }
    MAX-ACCESS   accessible-for-notify
    STATUS   current
    DESCRIPTION
        "Potential types of configuration conflicts.
        Used by the ospfv3ConfigError and
        ospfv3ConfigVirtError notifications."
    ::= { ospfv3NotificationEntry 1 }
ospfv3PacketType OBJECT-TYPE
    SYNTAX       INTEGER {
                    hello(1),
                    dbDescript(2),
                    lsReq(3),
                    lsUpdate(4),
                    lsAck(5),
                    nullPacket(6) }
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        "OSPFv3 packet types."
    ::= { ospfv3NotificationEntry 2 }
ospfv3PacketSrc  OBJECT-TYPE
    SYNTAX       InetAddressIPv6
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        "The IPv6 address of an inbound packet that cannot
        be identified by a neighbor instance.
        Only IPv6 addresses without zone index are expected."
    ::= { ospfv3NotificationEntry 3 }
-- Notification Definitions
-- The notifications need to be throttled so as to not overwhelm the
-- management agent in case of rapid changes to the OSPFv3 module.

ospfv3VirtIfStateChange NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId,  -- The originator of the notification
              ospfv3VirtIfState  -- The new state
       }
    STATUS       current
    DESCRIPTION
        "An ospfv3VirtIfStateChange notification signifies that
        there has been a change in the state of an OSPFv3 virtual
        interface.
        This notification should be generated when the interface
        state regresses (e.g., goes from Point-to-Point to Down)
        or progresses to a terminal state (i.e., Point-to-Point)."
    ::= { ospfv3Notifications 1 }

ospfv3NbrStateChange NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
              ospfv3NbrState  -- The new state
       }
    STATUS       current
    DESCRIPTION
        "An ospfv3NbrStateChange notification signifies that
        there has been a change in the state of a
        non-virtual OSPFv3 neighbor.  This notification should be
        generated when the neighbor state regresses
        (e.g., goes from Attempt or Full to 1-Way or
        Down) or progresses to a terminal state (e.g.,
        2-Way or Full).  When a neighbor transitions
        from or to Full on non-broadcast multi-access
        and broadcast networks, the notification should be
        generated by the Designated Router.  A Designated
        Router transitioning to Down will be noted by
        ospfIfStateChange."
    ::= { ospfv3Notifications 2 }

ospfv3VirtNbrStateChange NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
              ospfv3VirtNbrState  -- The new state
       }
    STATUS       current
    DESCRIPTION
        "An ospfv3VirtNbrStateChange notification signifies
        that there has been a change in the state of an OSPFv3
        virtual neighbor.  This notification should be generated
        when the neighbor state regresses (e.g., goes
        from Attempt or Full to 1-Way or Down) or
        progresses to a terminal state (e.g., Full)."
    ::= { ospfv3Notifications 3 }

ospfv3IfConfigError NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
       ospfv3IfState,         -- State of the interface
       ospfv3PacketSrc,       -- IPv6 address of source
       ospfv3ConfigErrorType, -- Type of error
       ospfv3PacketType       -- Type of packet
       }
    STATUS       current
    DESCRIPTION
        "An ospfv3IfConfigError notification signifies that a
        packet has been received on a non-virtual
        interface from a router whose configuration
        parameters conflict with this router's
        configuration parameters.  Note that the event
        optionMismatch should cause a notification only if it
        prevents an adjacency from forming."
    ::= { ospfv3Notifications 4 }

ospfv3VirtIfConfigError NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
       ospfv3VirtIfState,     -- State of the interface
       ospfv3ConfigErrorType, -- Type of error
       ospfv3PacketType
       }
    STATUS       current
    DESCRIPTION
        "An ospfv3VirtIfConfigError notification signifies that a
        packet has been received on a virtual interface
        from a router whose configuration parameters
        conflict with this router's configuration
        parameters.  Note that the event optionMismatch
        should cause a notification only if it prevents an
        adjacency from forming."
    ::= { ospfv3Notifications 5 }

ospfv3IfRxBadPacket NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
       ospfv3IfState,         -- State of the interface
       ospfv3PacketSrc,       -- The source IPv6 address
       ospfv3PacketType       -- Type of packet
       }
    STATUS       current
    DESCRIPTION
        "An ospfv3IfRxBadPacket notification signifies that an
        OSPFv3 packet that cannot be parsed has been received on a
        non-virtual interface."
    ::= { ospfv3Notifications 6 }

ospfv3VirtIfRxBadPacket NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
      ospfv3VirtIfState,      -- State of the interface
      ospfv3PacketType        -- Type of packet
      }
    STATUS       current
    DESCRIPTION
        "An ospfv3VirtIfRxBadPacket notification signifies
        that an OSPFv3 packet that cannot be parsed has been
        received on a virtual interface."
    ::= { ospfv3Notifications 7 }

ospfv3LsdbOverflow NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
       ospfv3ExtAreaLsdbLimit -- Limit on External LSAs
       }
    STATUS       current
    DESCRIPTION
        "An ospfv3LsdbOverflow notification signifies that the
        number of LSAs in the router's link state
        database has exceeded ospfv3ExtAreaLsdbLimit."
    ::= { ospfv3Notifications 8 }

ospfv3LsdbApproachingOverflow NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
       ospfv3ExtAreaLsdbLimit
       }
    STATUS       current
    DESCRIPTION
        "An ospfv3LsdbApproachingOverflow notification signifies
        that the number of LSAs in the router's
        link state database has exceeded ninety percent of
        ospfv3ExtAreaLsdbLimit."
    ::= { ospfv3Notifications 9 }

ospfv3IfStateChange NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
       ospfv3IfState   -- The new state
       }
    STATUS       current
    DESCRIPTION
        "An ospfv3IfStateChange notification signifies that there
        has been a change in the state of a non-virtual
        OSPFv3 interface.  This notification should be generated
        when the interface state regresses (e.g., goes
        from DR to Down) or progresses to a terminal
        state (i.e., Point-to-Point, DR Other, DR, or
        Backup)."
    ::= { ospfv3Notifications 10 }

ospfv3NssaTranslatorStatusChange NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
       ospfv3AreaNssaTranslatorState  -- new state
       }
    STATUS       current
    DESCRIPTION
        "An ospfv3NssaTranslatorStatusChange notification
        indicates that there has been a change in the router's
        ability to translate OSPFv3 NSSA LSAs into OSPFv3 External
        LSAs.  This notification should be generated when the
        Translator Status transitions from or to any defined
        status on a per-area basis."
    ::= { ospfv3Notifications 11 }

ospfv3RestartStatusChange NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
              ospfv3RestartStatus,  -- new status
              ospfv3RestartInterval,
              ospfv3RestartExitReason
            }
    STATUS       current
    DESCRIPTION
        "An ospfv3RestartStatusChange notification signifies that
        there has been a change in the graceful restart
        state for the router.  This notification should be
        generated when the router restart status
        changes."
    ::= { ospfv3Notifications 12 }

ospfv3NbrRestartHelperStatusChange NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
              ospfv3NbrRestartHelperStatus,  -- new status
              ospfv3NbrRestartHelperAge,
              ospfv3NbrRestartHelperExitReason
            }
    STATUS       current
    DESCRIPTION
        "An ospfv3NbrRestartHelperStatusChange notification
        signifies that there has been a change in the
        graceful restart helper state for the neighbor.
        This notification should be generated when the
        neighbor restart helper status transitions for a neighbor."
    ::= { ospfv3Notifications 13 }

ospfv3VirtNbrRestartHelperStatusChange NOTIFICATION-TYPE

    OBJECTS { ospfv3RouterId, -- The originator of the notification
              ospfv3VirtNbrRestartHelperStatus,  -- new status
              ospfv3VirtNbrRestartHelperAge,
              ospfv3VirtNbrRestartHelperExitReason
            }
    STATUS       current
    DESCRIPTION
        "An ospfv3VirtNbrRestartHelperStatusChange
        notification signifies that there has been a
        change in the graceful restart helper state for
        the virtual neighbor.  This notification should be
        generated when the virtual neighbor restart helper status
        transitions for a virtual neighbor."
    ::= { ospfv3Notifications 14 }
-- Conformance Information
ospfv3Groups      OBJECT IDENTIFIER ::= { ospfv3Conformance 1 }
ospfv3Compliances OBJECT IDENTIFIER ::= { ospfv3Conformance 2 }
-- Compliance Statements
ospfv3FullCompliance MODULE-COMPLIANCE
        STATUS          current
        DESCRIPTION     "The compliance statement"
        MODULE          -- this module
        MANDATORY-GROUPS {
                        ospfv3BasicGroup,
                        ospfv3AreaGroup,
                        ospfv3IfGroup,
                        ospfv3VirtIfGroup,
                        ospfv3NbrGroup,
                        ospfv3CfgNbrGroup,
                        ospfv3VirtNbrGroup,
                        ospfv3AreaAggregateGroup
                        }
        GROUP           ospfv3AsLsdbGroup
        DESCRIPTION
            "This group is required for OSPFv3 systems that
            display their AS-scope link state database."
        GROUP           ospfv3AreaLsdbGroup
        DESCRIPTION
            "This group is required for OSPFv3 systems that
            display their Area-scope link state database."
        GROUP           ospfv3LinkLsdbGroup
        DESCRIPTION
            "This group is required for OSPFv3 systems that
            display their Link-scope link state database
            for non-virtual interfaces."
        GROUP           ospfv3VirtLinkLsdbGroup
        DESCRIPTION
            "This group is required for OSPFv3 systems that
            display their Link-scope link state database
            for virtual interfaces."
        GROUP           ospfv3HostGroup
        DESCRIPTION
            "This group is required for OSPFv3 systems that
            support attached hosts."
        GROUP           ospfv3NotificationObjectGroup
        DESCRIPTION
            "This group is required for OSPFv3 systems that
            support OSPFv3 notifications."
        GROUP           ospfv3NotificationGroup
        DESCRIPTION
            "This group is required for OSPFv3 systems that
            support OSPFv3 notifications."
        OBJECT          ospfv3NbrAddressType
        SYNTAX          InetAddressType { ipv6(2) }
        DESCRIPTION
            "An implementation is only required to support IPv6
            address without zone index."
        OBJECT          ospfv3NbrAddress
        SYNTAX          InetAddress (SIZE (16))
        DESCRIPTION
            "An implementation is only required to support IPv6
            address without zone index."
        OBJECT          ospfv3VirtNbrAddressType
        SYNTAX          InetAddressType { ipv6(2) }
        DESCRIPTION
            "An implementation is only required to support IPv6
            address without zone index."
        OBJECT          ospfv3VirtNbrAddress
        SYNTAX          InetAddress (SIZE (16))
        DESCRIPTION
            "An implementation is only required to support IPv6
            address without zone index."
        ::= { ospfv3Compliances 1 }
   ospfv3ReadOnlyCompliance MODULE-COMPLIANCE
      STATUS     current
      DESCRIPTION
              "When this MIB module is implemented without
              support for read-create (i.e., in read-only
              mode), the implementation can claim read-only
              compliance.  Such a device can then be monitored,
              but cannot be configured with this MIB."
      MODULE -- this module
           MANDATORY-GROUPS {
                   ospfv3BasicGroup,
                   ospfv3AreaGroup,
                   ospfv3IfGroup,
                   ospfv3VirtIfGroup,
                   ospfv3NbrGroup,
                   ospfv3CfgNbrGroup,
                   ospfv3VirtNbrGroup,
                   ospfv3AreaAggregateGroup
                   }
      GROUP           ospfv3AsLsdbGroup
      DESCRIPTION
          "This group is required for OSPFv3 systems that
          display their AS-scope link state database."
      GROUP           ospfv3AreaLsdbGroup
      DESCRIPTION
          "This group is required for OSPFv3 systems that
          display their Area-scope link state database."
      GROUP           ospfv3LinkLsdbGroup
      DESCRIPTION
          "This group is required for OSPFv3 systems that
          display their Link-scope link state database
          for non-virtual interfaces."
      GROUP           ospfv3VirtLinkLsdbGroup
      DESCRIPTION
          "This group is required for OSPFv3 systems that
          display their Link-scope link state database
          for virtual interfaces."
      GROUP           ospfv3HostGroup
      DESCRIPTION
          "This group is required for OSPFv3 systems that
          support attached hosts."
      GROUP           ospfv3NotificationObjectGroup
      DESCRIPTION
          "This group is required for OSPFv3 systems that
          support OSPFv3 notifications."
      GROUP           ospfv3NotificationGroup
      DESCRIPTION
          "This group is required for OSPFv3 systems that
          support OSPFv3 notifications."
      OBJECT ospfv3RouterId
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3AdminStatus
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3ExtAreaLsdbLimit
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3ExitOverflowInterval
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3DemandExtensions
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3ReferenceBandwidth
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3RestartSupport
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3RestartInterval
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3RestartStrictLsaChecking
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3NotificationEnable
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3StubRouterAdvertisement
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3AreaImportAsExtern
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3AreaSummary
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3AreaRowStatus
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3AreaStubMetric
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3AreaNssaTranslatorRole
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3AreaNssaTranslatorStabInterval
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3AreaStubMetricType
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3AreaTEEnabled
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3HostMetric
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3HostRowStatus
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3HostAreaID
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfAreaId
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfType
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfAdminStatus
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfRtrPriority
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfTransitDelay
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfRetransInterval
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfHelloInterval
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfRtrDeadInterval
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfPollInterval
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfRowStatus
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfDemand
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfMetricValue
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfDemandNbrProbe
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfDemandNbrProbeRetransLimit
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfDemandNbrProbeInterval
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfTEDisabled
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3IfLinkLSASuppression
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3VirtIfTransitDelay
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3VirtIfRetransInterval
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3VirtIfHelloInterval
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3VirtIfRtrDeadInterval
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3VirtIfRowStatus
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3CfgNbrPriority
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3CfgNbrRowStatus
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3AreaAggregateRowStatus
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3AreaAggregateEffect
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
      OBJECT ospfv3AreaAggregateRouteTag
      MIN-ACCESS read-only
      DESCRIPTION
           "Write access is not required."
   ::= { ospfv3Compliances 2 }
-- units of conformance
ospfv3BasicGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3RouterId,
                        ospfv3AdminStatus,
                        ospfv3VersionNumber,
                        ospfv3AreaBdrRtrStatus,
                        ospfv3ASBdrRtrStatus,
                        ospfv3AsScopeLsaCount,
                        ospfv3AsScopeLsaCksumSum,
                        ospfv3OriginateNewLsas,
                        ospfv3RxNewLsas,
                        ospfv3ExtLsaCount,
                        ospfv3ExtAreaLsdbLimit,
                        ospfv3ExitOverflowInterval,
                        ospfv3DemandExtensions,
                        ospfv3ReferenceBandwidth,
                        ospfv3RestartSupport,
                        ospfv3RestartInterval,
                        ospfv3RestartStrictLsaChecking,
                        ospfv3RestartStatus,
                        ospfv3RestartAge,
                        ospfv3RestartExitReason,
                        ospfv3NotificationEnable,
                        ospfv3StubRouterSupport,
                        ospfv3StubRouterAdvertisement,
                        ospfv3DiscontinuityTime,
                        ospfv3RestartTime
                        }
        STATUS          current
        DESCRIPTION
            "These objects are used for managing/monitoring
            OSPFv3 global parameters."
        ::= { ospfv3Groups 1 }
ospfv3AreaGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3AreaImportAsExtern,
                        ospfv3AreaSpfRuns,
                        ospfv3AreaBdrRtrCount,
                        ospfv3AreaAsBdrRtrCount,
                        ospfv3AreaScopeLsaCount,
                        ospfv3AreaScopeLsaCksumSum,
                        ospfv3AreaSummary,
                        ospfv3AreaRowStatus,
                        ospfv3AreaStubMetric,
                        ospfv3AreaNssaTranslatorRole,
                        ospfv3AreaNssaTranslatorState,
                        ospfv3AreaNssaTranslatorStabInterval,
                        ospfv3AreaNssaTranslatorEvents,
                        ospfv3AreaStubMetricType,
                        ospfv3AreaTEEnabled
                        }
        STATUS          current
        DESCRIPTION
            "These objects are used for OSPFv3 systems
            supporting areas."
        ::= { ospfv3Groups 2 }
ospfv3AsLsdbGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3AsLsdbSequence,
                        ospfv3AsLsdbAge,
                        ospfv3AsLsdbChecksum,
                        ospfv3AsLsdbAdvertisement,
                        ospfv3AsLsdbTypeKnown
                        }
        STATUS          current
        DESCRIPTION
            "These objects are used for OSPFv3 systems
            that display their AS-scope link state database."
        ::= { ospfv3Groups 3 }
ospfv3AreaLsdbGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3AreaLsdbSequence,
                        ospfv3AreaLsdbAge,
                        ospfv3AreaLsdbChecksum,
                        ospfv3AreaLsdbAdvertisement,
                        ospfv3AreaLsdbTypeKnown
                        }
        STATUS          current
        DESCRIPTION
            "These objects are used for OSPFv3 systems
            that display their Area-scope link state database."
        ::= { ospfv3Groups 4 }
ospfv3LinkLsdbGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3LinkLsdbSequence,
                        ospfv3LinkLsdbAge,
                        ospfv3LinkLsdbChecksum,
                        ospfv3LinkLsdbAdvertisement,
                        ospfv3LinkLsdbTypeKnown
                        }
        STATUS          current
        DESCRIPTION
            "These objects are used for OSPFv3 systems
            that display their Link-scope link state database
            for non-virtual interfaces."
        ::= { ospfv3Groups 5 }
ospfv3HostGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3HostMetric,
                        ospfv3HostRowStatus,
                        ospfv3HostAreaID
                        }
        STATUS          current
        DESCRIPTION
            "These objects are used for OSPFv3 systems
            that support attached hosts."
        ::= { ospfv3Groups 6 }
ospfv3IfGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3IfAreaId,
                        ospfv3IfType,
                        ospfv3IfAdminStatus,
                        ospfv3IfRtrPriority,
                        ospfv3IfTransitDelay,
                        ospfv3IfRetransInterval,
                        ospfv3IfHelloInterval,
                        ospfv3IfRtrDeadInterval,
                        ospfv3IfPollInterval,
                        ospfv3IfState,
                        ospfv3IfDesignatedRouter,
                        ospfv3IfBackupDesignatedRouter,
                        ospfv3IfEvents,
                        ospfv3IfRowStatus,
                        ospfv3IfDemand,
                        ospfv3IfMetricValue,
                        ospfv3IfLinkScopeLsaCount,
                        ospfv3IfLinkLsaCksumSum,
                        ospfv3IfDemandNbrProbe,
                        ospfv3IfDemandNbrProbeRetransLimit,
                        ospfv3IfDemandNbrProbeInterval,
                        ospfv3IfTEDisabled,
                        ospfv3IfLinkLSASuppression
                        }
        STATUS          current
        DESCRIPTION
            "These interface objects are used for
            managing/monitoring OSPFv3 interfaces."
        ::= { ospfv3Groups 7 }
ospfv3VirtIfGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3VirtIfIndex,
                        ospfv3VirtIfInstId,
                        ospfv3VirtIfTransitDelay,
                        ospfv3VirtIfRetransInterval,
                        ospfv3VirtIfHelloInterval,
                        ospfv3VirtIfRtrDeadInterval,
                        ospfv3VirtIfState,
                        ospfv3VirtIfEvents,
                        ospfv3VirtIfRowStatus,
                        ospfv3VirtIfLinkScopeLsaCount,
                        ospfv3VirtIfLinkLsaCksumSum
                        }
        STATUS          current
        DESCRIPTION
            "These virtual interface objects are used for
            managing/monitoring OSPFv3 virtual interfaces."
        ::= { ospfv3Groups 8 }
ospfv3NbrGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3NbrAddressType,
                        ospfv3NbrAddress,
                        ospfv3NbrOptions,
                        ospfv3NbrPriority,
                        ospfv3NbrState,
                        ospfv3NbrEvents,
                        ospfv3NbrLsRetransQLen,
                        ospfv3NbrHelloSuppressed,
                        ospfv3NbrIfId,
                        ospfv3NbrRestartHelperStatus,
                        ospfv3NbrRestartHelperAge,
                        ospfv3NbrRestartHelperExitReason
                        }
        STATUS          current
        DESCRIPTION
            "These neighbor objects are used for
            managing/monitoring OSPFv3 neighbors."
        ::= { ospfv3Groups 9 }
ospfv3CfgNbrGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3CfgNbrPriority,
                        ospfv3CfgNbrRowStatus
                        }
        STATUS          current
        DESCRIPTION
            "These configured neighbor objects are used for
            managing/monitoring OSPFv3-configured neighbors."
        ::= { ospfv3Groups 10 }
ospfv3VirtNbrGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3VirtNbrIfIndex,
                        ospfv3VirtNbrIfInstId,
                        ospfv3VirtNbrAddressType,
                        ospfv3VirtNbrAddress,
                        ospfv3VirtNbrOptions,
                        ospfv3VirtNbrState,
                        ospfv3VirtNbrEvents,
                        ospfv3VirtNbrLsRetransQLen,
                        ospfv3VirtNbrHelloSuppressed,
                        ospfv3VirtNbrIfId,
                        ospfv3VirtNbrRestartHelperStatus,
                        ospfv3VirtNbrRestartHelperAge,
                        ospfv3VirtNbrRestartHelperExitReason
                        }
        STATUS          current
        DESCRIPTION
            "These virtual neighbor objects are used for
            managing/monitoring OSPFv3 virtual neighbors."
        ::= { ospfv3Groups 11 }
ospfv3AreaAggregateGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3AreaAggregateRowStatus,
                        ospfv3AreaAggregateEffect,
                        ospfv3AreaAggregateRouteTag
                        }
        STATUS          current
        DESCRIPTION
            "These area aggregate objects are required for
            aggregating OSPFv3 prefixes for summarization
            across areas."
        ::= { ospfv3Groups 12 }
ospfv3VirtLinkLsdbGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3VirtLinkLsdbSequence,
                        ospfv3VirtLinkLsdbAge,
                        ospfv3VirtLinkLsdbChecksum,
                        ospfv3VirtLinkLsdbAdvertisement,
                        ospfv3VirtLinkLsdbTypeKnown
                        }
        STATUS          current
        DESCRIPTION
            "These objects are used for OSPFv3 systems
            that display their Link-scope link state database
            for virtual interfaces."
        ::= { ospfv3Groups 13 }
ospfv3NotificationObjectGroup OBJECT-GROUP
        OBJECTS         {
                        ospfv3ConfigErrorType,
                        ospfv3PacketType,
                        ospfv3PacketSrc
                        }
        STATUS          current
        DESCRIPTION
            "These objects are used to record notification
            parameters."
        ::= { ospfv3Groups 14 }
ospfv3NotificationGroup NOTIFICATION-GROUP
        NOTIFICATIONS   {
                        ospfv3VirtIfStateChange,
                        ospfv3NbrStateChange,
                        ospfv3VirtNbrStateChange,
                        ospfv3IfConfigError,
                        ospfv3VirtIfConfigError,
                        ospfv3IfRxBadPacket,
                        ospfv3VirtIfRxBadPacket,
                        ospfv3LsdbOverflow,
                        ospfv3LsdbApproachingOverflow,
                        ospfv3IfStateChange,
                        ospfv3NssaTranslatorStatusChange,
                        ospfv3RestartStatusChange,
                        ospfv3NbrRestartHelperStatusChange,
                        ospfv3VirtNbrRestartHelperStatusChange
                        }
        STATUS          current
        DESCRIPTION
            "This group is used for OSPFv3 notifications."
        ::= { ospfv3Groups 15 }
END

Security Considerations

There are a number of management objects defined in this MIB module with a MAX-ACCESS clause of read-write and/or read-create. Such objects may be considered sensitive or vulnerable in some network environments. The support for SET operations in a non-secure environment without proper protection can have a negative effect on network operations. Improper manipulation of the objects represented by this MIB module may result in disruption of network connectivity by administratively disabling the entire OSPFv3 entity or individual interfaces, by deleting configured neighbors, by reducing the limit on External LSAs, by changing ASBR status, by manipulating route aggregation, by manipulating interface and route metrics, by changing Hello interval or dead interval, or by changing interface type. Remote monitoring can be defeated by disabling of SNMP notifications. Performance can be impacted by increasing the limit on External LSAs or changing DR/BDR (Designated Router / Backup Designated Router) priority.

Some of the readable objects in this MIB module (i.e., objects with a MAX-ACCESS other than not-accessible) may be considered sensitive or vulnerable in some network environments. It is thus important to control even GET and/or NOTIFY access to these objects and possibly to even encrypt the values of these objects when sending them over the network via SNMP. Unauthorized access to readable objects in this MIB module allows the discovery of the network topology and operating parameters, which can be used to target further attacks on the network or to gain a competitive business advantage.

SNMP versions prior to SNMPv3 did not include adequate security. Even if the network itself is secure (for example by using IPsec), even then, there is no control as to who on the secure network is allowed to access and GET/SET (read/change/create/delete) the objects in this MIB module.

It is RECOMMENDED that implementers consider the security features as provided by the SNMPv3 framework (see RFC3410, section 8), including full support for the SNMPv3 cryptographic mechanisms (for authentication and privacy).

Further, deployment of SNMP versions prior to SNMPv3 is NOT RECOMMENDED. Instead, it is RECOMMENDED to deploy SNMPv3 and to enable cryptographic security. It is then a customer/operator responsibility to ensure that the SNMP entity giving access to an instance of this MIB module is properly configured to give access to the objects only to those principals (users) that have legitimate rights to indeed GET or SET (change/create/delete) them.

IANA Considerations

The MIB module in this document uses the following IANA-assigned OBJECT IDENTIFIER values recorded in the SMI Numbers registry:

    Descriptor        OBJECT IDENTIFIER value
    ----------        -----------------------
    ospfv3MIB           { mib-2 191 }

Acknowledgements

This document is based on the MIB for OSPF version 2 RFC4750. The editors would like to thank Toshiaki Takada, Ramachandran Radhakrishnan, Harikrishna Golapalli, Mahesh Kurapati, Acee Lindem, Keith McCloghrie, Manish Gupta, Nic Neate, Vanitha N., Vivek Dubey, Ramana Koppula, Boris Benenson, and Hong Zhang for their constructive comments. Special thanks to Joan Cucchiara for her thorough review as the MIB Doctor.

References

Normative References

RFC2119 Bradner, S., "Key words for use in RFCs to Indicate

         Requirement Levels", BCP 14, RFC 2119, March 1997.

RFC2328 Moy, J., "OSPF Version 2", STD 54, RFC 2328, April 1998.

RFC2578 McCloghrie, K., Perkins, D., and J. Schoenwaelder,

         "Structure of Management Information Version 2 (SMIv2)",
         STD 58, RFC 2578, April 1999.

RFC2579 McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Textual

         Conventions for SMIv2", STD 58, RFC 2579, April 1999.

RFC2580 McCloghrie, K., Perkins, D., and J. Schoenwaelder,

         "Conformance Statements for SMIv2", STD 58, RFC 2580, April
         1999.

RFC5340 Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF for

         IPv6", RFC 5340, July 2008.

RFC4293 Routhier, S., Ed., "Management Information Base for the

         Internet Protocol (IP)", RFC 4293, April 2006.

RFC4750 Joyal, D., Ed., Galecki, P., Ed., Giacalone, S., Ed.,

         Coltun, R., and F. Baker, "OSPF Version 2 Management
         Information Base", RFC 4750, December 2006.

Informative References

RFC1224 Steinberg, L., "Techniques for managing asynchronously

         generated alerts", RFC 1224, May 1991.

RFC2460 Deering, S. and R. Hinden, "Internet Protocol, Version 6

         (IPv6) Specification", RFC 2460, December 1998.

RFC3410 Case, J., Mundy, R., Partain, D., and B. Stewart,

         "Introduction and Applicability Statements for Internet-
         Standard Management Framework", RFC 3410, December 2002.

RFC3411 Harrington, D., Presuhn, R., and B. Wijnen, "An

         Architecture for Describing Simple Network Management
         Protocol (SNMP) Management Frameworks", STD 62, RFC 3411,
         December 2002.

RFC3413 Levi, D., Meyer, P., and B. Stewart, "Simple Network

         Management Protocol (SNMP) Applications", STD 62, RFC 3413,
         December 2002.

Contributors' Addresses

Jacek Kwiatkowski Intel Technology Poland ul. Slowackiego 173 80-298 Gdansk, Poland EMail: [email protected]

Sebastian Zwolinski Intel Technology Poland ul. Slowackiego 173 80-298 Gdansk, Poland EMail: [email protected]

Editors' Addresses

Dan Joyal Nortel 600 Technology Park Drive Billerica, MA 01821 EMail: [email protected]

Vishwas Manral IP Infusion Almora, Uttarakhand India EMail: [email protected]