Internet-Draft                                              B. Haberman
 Document: draft-ietf-ipv6-rfc2096-update-05.txt        Caspian Networks
 Expires:  February 2004                                    M. Wasserman
                                                               Windriver
                                                             August 2003
 
                           IP Forwarding Table MIB
 
 Status of this Memo
 
    This document is an Internet-Draft and is in full conformance with
    all provisions of Section 10 of RFC2026.
 
    Internet-Drafts are working documents of the Internet Engineering
    Task Force (IETF), its areas, and its working groups.  Note that
    other groups may also distribute working documents as Internet-
    Drafts.
 
    Internet-Drafts are draft documents valid for a maximum of six
    months and may be updated, replaced, or obsoleted by other
    documents at any time.  It is inappropriate to use Internet-Drafts
    as reference material or to cite them other than as "work in
    progress."
 
    The list of current Internet-Drafts can be accessed at
         http://www.ietf.org/ietf/1id-abstracts.txt
    The list of Internet-Draft Shadow Directories can be accessed at
         http://www.ietf.org/shadow.html.
 
    This document is a product of the IPv6 MIB Revision Design Team and
    it is a working item of the IPv6 Working Group.  Comments should be
    addressed to the editors, or to the IPv6 Working Group mailing list
    at ipng@sunroof.eng.sun.com.
 
 Abstract
 
    This document defines a portion of the Management Information Base
    (MIB) for use with network management protocols in the Internet
    community.  In particular, it describes managed objects related to
    the forwarding of Internet Protocol (IP) packets in an IP version-
    independent manner.  This document obsoletes RFC 2096.
 
 Copyright Notice
 
    Copyright (C) The Internet Society (2003).  All Rights Reserved.
 
 
 
 
 
 
 
 
 
 
 
    Haberman, Wasserman  Expires February 2004                       1
    IP Forwarding Table MIB                                 August 2003
 
 Table of Contents
 
    1  Conventions Used In This Document..............................5
    2  The Internet-Standard Management Framework.....................5
    3  Overview.......................................................5
    4  Definitions....................................................7
    5  Security Considerations.......................................30
    6  Intellectual Property.........................................31
    7  Changes from RFC 2096.........................................31
    8  Normative References..........................................32
    9  Informative References........................................32
    10 Authors and Acknowledgements..................................33
    11 Editors' Contact Information..................................33
    12 Full Copyright Statement......................................33
 
 Revision History
 
    [Note to RFC Editor: Please remove prior to publication]
 
 
    Changes from draft-ietf-ipv6-rfc2096-update-04.txt:
 
    28 Aug 2003   Corrected copyright statement in DESCRIPTION clause
 
                  Added inetCidrRouteNumber to
                  inetForwardCidrRouteGroup conformance statement
 
                  Removed SIZE constraints for inetCidrRouteDest and
                  inetCidrRouteNextHop
 
                  Added constraints statement to DESCRIPTION clause of
                  inetCidrRouteEntry
 
                  Added Intellectual Property section per requirements
                  of RFC 2026
 
                  Removed reference to RFC 2026
 
                  Removed ipForwardCompliance2
 
                  Changed definition of inetCidrRouteAge from Integer32
                  to Gauge32
 
 
    Changes from draft-ietf-ipv6-rfc2096-update-03.txt:
 
    27 Jun 2003   Updated text to DESCRIPTION of inetCidrRouteDiscards
 
                  Re-instated inetCidrRouteNumber
 
                  Added references for IF-MIB, IP-MIB, and IANA-
                  RTPROTO-MIB
 
    Haberman, Wasserman  Expires February 2004                       2
    IP Forwarding Table MIB                                 August 2003
 
 
                  Changed reference to RFC 2096 from normative to
                  informative
 
                  Added RFC editor note to remove Revision History at
                  publication time
 
                  Updated REVISION clause
 
                  Added section describing changes from RFC 2096
 
                  Added REVISION clause for original publication as RFC
                  1354
 
                  Added MIB Copyright statement to DESCRIPTION
 
 
    Changes from draft-ietf-ipv6-rfc2096-update-02.txt:
 
     16 Jan 2003   Changed lower-case 'h' to upper-case 'H' in hex
                   number.
 
                   Updated REVISION and LAST UPDATED dates.
     13 Jun 2003   Changed inetCidrRouteDscp to inetCidrRoutePolicy.
 
                   Updated MIB Boilerplate.
     17 Jun 2003   Added read-only compliance statement.
 
                   Added text to DESCRIPTION clause for
                   inetCidrRouteStatus to indicate a row cannot be
                   modified when it is active.
 
                   Removed numbered references from DESCRIPTION clauses.
 
                   Removed Unsigned32 from IMPORTS list.
 
                   Changed section numbers to conform with ID-nits.
 
                   Split references into normative/informative.
 
                   Updated security section.
 
    Changes from draft-ietf-ipv6-rfc2096-update-01.txt:
 
     02 Nov 2002   Fixed bugs that caused the MIB not to compile.
 
                   Changed the type of inetCidrRouteDscp to Dscp.
 
                   Improved the revision information.
 
                   Removed inetCidrRouteNumber and inetCidrRouteWeight.
 
                   Other editorial changes.
 
 
    Haberman, Wasserman  Expires February 2004                       3
    IP Forwarding Table MIB                                 August 2003
 
    Changes from draft-ietf-ipv6-rfc-2096-update-00.txt:
 
     22 Aug 2002   Minor editorial changes and clean-up
 
    Changes from draft-ietf-ipngwg-rfc2096-update-00.txt:
 
     27 Jun 2002   Added inetCidrRouteDscp index and inetCidrRouteWeight
                   object to the inetCidrRouteTable.
 
                   Restored inetCidrRouteNextHopType variable (may be
                   different from inetCidrRouteDestType, due to global
                   vs. non-global distinction in new InetAddress TCs).
 
                   Removed inetCidrRouteInstance object. Use to identify
                   a conceptual routing table is obviated by new
                   InetAddress types and inclusion of DSCP index.
 
                   Changed editor, moved author information to end,
                   several editorial changes.
 
                   Changed name to draft-ietf-ipv6-rfc-2096-update-*.txt
     13 Jul 2002   Removed inetCidrRouteNextHopType.
 
    Changes from draft-ops-rfc2096-update-00.txt:
 
     12 Jul 2001   Renamed to IPNG working group draft
                   Added scopes to the uses of instance
                   Added inetCidrRouteDiscards to replace
                   ipRoutingDiscards
                   Fixed some remaining ipCidr*/inetCidr* confusion in
                   DESCRIPTIONs
 
    Changes from first draft posted to v6mib mailing list:
 
     23 Feb 2001   Updated MODULE-IDENTITY
 
                   Deleted inetCidrRouteTos, add inetCidrRouteInstance
                   in INDEX of inetCidrRouteTable.
 
                   Used InterfaceIndex, InetAddressPrefixLength and
                   InetAutonomousSystemNumber TC's, and limited the SIZE
                   of inetCidrRouteDest and inetCidrRouteNextHop
 
                   Updated conformance info.  Added copyright and table
                   of contents.
 
 
 
 
 
 
 
 
 
 
    Haberman, Wasserman  Expires February 2004                       4
    IP Forwarding Table MIB                                 August 2003
 
 1  Conventions Used In This Document
 
    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].
 
 2  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].
 
 3  Overview
 
    The MIB consists of one current table and two current global
    objects.
 
         1. The object inetCidrRouteNumber indicates the number of
            current routes.  This is primarily to avoid having to read
            the table in order to determine this number.
 
         2. The object inetCidrRouteDiscards counts the number of valid
            routes that were discarded from inetCidrRouteTable for any
            reason.  This object replaces the ipRoutingDiscards and
            ipv6DiscardedRoutes objects.
 
         3. The inetCidrRouteTable provides the ability to display IP
            version-independent multipath CIDR routes.
 
    In addition, there is one deprecated table and object, and one
    obsolete table and object, representing previous revisions of this
    MIB.
 
         1. The obsolete object ipForwardNumber represents the number of
            entries in the obsolete ipForwardTable.
 
         2. The obsolete ipForwardTable updates the RFC 1213
            ipRouteTable to display multipath IP Routes.  This is in
            turn obsoleted by the ipCidrRouteTable.
 
         3. The deprecated object ipCidrRouteNumber represents the
            number of entries in the deprecated ipCidrRouteTable.
 
 
 
    Haberman, Wasserman  Expires February 2004                       5
    IP Forwarding Table MIB                                 August 2003
 
         4. The deprecated ipCidrRouteTable updates the RFC 1213
            ipRouteTable to display multipath IP Routes having the same
            network number but differing network masks.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
    Haberman, Wasserman  Expires February 2004                       6
    IP Forwarding Table MIB                                 August 2003
 
 
 4  Definitions
 
    IP-FORWARD-MIB DEFINITIONS ::= BEGIN
 
    IMPORTS
        MODULE-IDENTITY, OBJECT-TYPE,
        IpAddress, Integer32, Gauge32,
        Counter32                          FROM SNMPv2-SMI
        RowStatus                          FROM SNMPv2-TC
        MODULE-COMPLIANCE, OBJECT-GROUP    FROM SNMPv2-CONF
        InterfaceIndex                     FROM IF-MIB
        ip                                 FROM IP-MIB
        IANAipRouteProtocol                FROM IANA-RTPROTO-MIB
        InetAddress, InetAddressType,
        InetAddressPrefixLength,
        InetAutonomousSystemNumber         FROM INET-ADDRESS-MIB;
 
    ipForward MODULE-IDENTITY
        LAST-UPDATED "200308281500Z"
        ORGANIZATION
               "IETF IPv6 Working Group
                http://www.ietf.org/html.charters/ipv6-charter.html"
        CONTACT-INFO
               "Editor:
                Margaret Wasserman
                Wind River
                10 Tara Blvd, Suite 330
                Nashua, NH 03062
 
                Phone: +1 603 897-2067
                Email: mrw@windriver.com
 
                Brian Haberman
                Caspian Networks
                753 Bridgewater Drive
                Sykesville, MD  21784
 
                Phone: +1 410 552-1421
                Email: brian@innovationslab.net
 
                Send comments to <ipng@sunroof.eng.sun.com>"
    -- RFC Ed: please verify mailing list address at publication
    -- and delete this note
        DESCRIPTION
               "The MIB module for the management of CIDR multipath IP
                Routes.
 
                Copyright (C) The Internet Society (2003). This version
                of this MIB module is a part of RFC xxxx; see the RFC
                itself for full legal notices."
        -- RFC Ed : replace xxxx with actual RFC number & remove note
 
        REVISION      "200308281500Z"
 
    Haberman, Wasserman  Expires February 2004                       7
    IP Forwarding Table MIB                                 August 2003
 
        DESCRIPTION
               "IPv4/v6 version-independent revision.  Minimal changes
                were made to the original RFC 2096 MIB, to allow easy
                upgrade of existing IPv4 implementations to the
                version-independent MIB.  These changes include:
 
                Adding inetCidrRouteDiscards as a replacement for the
                deprecated ipRoutingDiscards and ipv6DiscardedRoutes
                objects.
 
                Adding a new conformance statement to support the
                implementation of the IP Forwarding MIB in a
                read-only mode.
 
                Published as RFC xxxx."
        -- RFC Ed : replace xxxx with actual RFC number & remove note
 
        REVISION      "199609190000Z"
        DESCRIPTION
               "Revised to support CIDR routes.
                Published as RFC 2096."
 
        REVISION      "199207022156Z"
        DESCRIPTION
               "Initial version, published as RFC 1354."
        ::= { ip 24 }
 
    inetCidrRouteNumber OBJECT-TYPE
        SYNTAX     Gauge32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
               "The number of current inetCidrRouteTable entries that
                are not invalid."
    ::= { ipForward 6 }
 
    inetCidrRouteDiscards OBJECT-TYPE
        SYNTAX     Counter32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
               "The number of entries in the inetCidrRouteTable which
                were chosen to be discarded even though they are valid.
                One possible reason for discarding such an entry could
                be to free-up buffer space for other routing entries."
        ::= { ipForward 8 }
 
    --  Inet CIDR Route Table
 
    --  The Inet CIDR Route Table deprecates and replaces the
    --  ipCidrRoute Table currently in the IP Forwarding Table MIB.
    --  It adds IP protocol independence.
 
    inetCidrRouteTable OBJECT-TYPE
 
    Haberman, Wasserman  Expires February 2004                       8
    IP Forwarding Table MIB                                 August 2003
 
        SYNTAX     SEQUENCE OF InetCidrRouteEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
               "This entity's IP Routing table."
        REFERENCE
               "RFC 1213 Section 6.6, The IP Group"
        ::= { ipForward 7 }
 
    inetCidrRouteEntry OBJECT-TYPE
        SYNTAX     InetCidrRouteEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
               "A particular route to a particular destination, under a
                particular policy.
 
                Dynamically created rows will survive an agent reboot.
 
                Implementers need to be aware that if the total number
                of elements (octets or sub-identifiers) in
                inetCidrRouteDest, inetCidrRoutePolicy, and
                inetCidrRouteNextHop exceeds 111 then OIDs of column
                instances in this table will have more than 128 sub-
                identifiers and cannot be accessed using SNMPv1,
                SNMPv2c, or SNMPv3."
        INDEX {
            inetCidrRouteDestType,
            inetCidrRouteDest,
            inetCidrRoutePfxLen,
            inetCidrRoutePolicy,
            inetCidrRouteNextHopType,
            inetCidrRouteNextHop
            }
        ::= { inetCidrRouteTable 1 }
 
    InetCidrRouteEntry ::= SEQUENCE {
            inetCidrRouteDestType     InetAddressType,
            inetCidrRouteDest         InetAddress,
            inetCidrRoutePfxLen       InetAddressPrefixLength,
            inetCidrRoutePolicy       OBJECT IDENTIFIER,
            inetCidrRouteNextHopType  InetAddressType,
            inetCidrRouteNextHop      InetAddress,
            inetCidrRouteIfIndex      InterfaceIndex,
            inetCidrRouteType         INTEGER,
            inetCidrRouteProto        IANAipRouteProtocol,
            inetCidrRouteAge          Gauge32,
            inetCidrRouteNextHopAS    InetAutonomousSystemNumber,
            inetCidrRouteMetric1      Integer32,
            inetCidrRouteMetric2      Integer32,
            inetCidrRouteMetric3      Integer32,
            inetCidrRouteMetric4      Integer32,
            inetCidrRouteMetric5      Integer32,
            inetCidrRouteStatus       RowStatus
 
    Haberman, Wasserman  Expires February 2004                       9
    IP Forwarding Table MIB                                 August 2003
 
        }
 
    inetCidrRouteDestType OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
               "The type of the inetCidrRouteDest address, as defined
                in the InetAddress MIB [RFC3291]."
        ::= { inetCidrRouteEntry 1 }
 
    inetCidrRouteDest OBJECT-TYPE
        SYNTAX     InetAddress
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
               "The destination IP address of this route.
 
                Any assignment (implicit or otherwise) of an instance
                of this object to a value x MUST be rejected if the
                bitwise logical-AND of x with the value of the mask
                formed from the corresponding instance of the
                inetCidrRoutePfxLen object is not equal to x."
        ::= { inetCidrRouteEntry 2 }
 
    inetCidrRoutePfxLen OBJECT-TYPE
        SYNTAX     InetAddressPrefixLength
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
               "Indicates the number of leading one bits which form the
                mask to be logical-ANDed with the destination address
                before being compared to the value in the
                inetCidrRouteDest field.
 
                Any assignment (implicit or otherwise) of an instance
                of this object to a value x MUST be rejected if the
                bitwise logical-AND of the mask formed from x with the
                value of the corresponding instance of the
                inetCidrRouteDest object is not equal to
                inetCidrRouteDest."
        ::= { inetCidrRouteEntry 3 }
 
    inetCidrRoutePolicy OBJECT-TYPE
        SYNTAX     OBJECT IDENTIFIER
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
               "Represents the general set of conditions that would
                cause the selection of one multipath route (set of next
                hops for a given destination) over another (referred to
                as policy).  The value { 0 0 } shall be used for the
                default policy or if no particular policy applies."
        ::= { inetCidrRouteEntry 4 }
 
    Haberman, Wasserman  Expires February 2004                      10
    IP Forwarding Table MIB                                 August 2003
 
 
    inetCidrRouteNextHopType OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
               "The type of the inetCidrRouteNextHop address, as
                defined in the InetAddress MIB [RFC3291].
 
                Value should be set to unknown(0) for non-remote
                routes."
        ::= { inetCidrRouteEntry 5 }
 
    inetCidrRouteNextHop OBJECT-TYPE
        SYNTAX     InetAddress
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
               "On remote routes, the address of the next system en
                route.  For non-remote routes, a zero length string."
        ::= { inetCidrRouteEntry 6 }
 
    inetCidrRouteIfIndex OBJECT-TYPE
        SYNTAX     InterfaceIndex
        MAX-ACCESS read-create
        STATUS     current
        DESCRIPTION
               "The ifIndex value which identifies the local interface
                through which the next hop of this route should be
                reached."
        ::= { inetCidrRouteEntry 7 }
 
    inetCidrRouteType OBJECT-TYPE
        SYNTAX     INTEGER {
                    other    (1), -- not specified by this MIB
                    reject   (2), -- route which discards traffic and
                                  --   returns ICMP notification
                    local    (3), -- local interface
                    remote   (4), -- remote destination
                    blackhole(5)  -- route which discards traffic
                                  --   silently
                 }
        MAX-ACCESS read-create
        STATUS     current
        DESCRIPTION
               "The type of route.  Note that local(3) refers to a
                route for which the next hop is the final destination;
                remote(4)refers to a route for which the next hop is
                not the final destination.
 
                Routes which do not result in traffic forwarding or
                rejection should not be displayed even if the
                implementation keeps them stored internally.
 
 
    Haberman, Wasserman  Expires February 2004                      11
    IP Forwarding Table MIB                                 August 2003
 
                reject(2) refers to a route which, if matched, discards
                the message as unreachable and returns a notification
                (e.g. ICMP error) to the message sender.  This is used
                in some protocols as a means of correctly aggregating
                routes.
 
                blackhole(5) refers to a route which, if matched,
                discards the message silently."
        ::= { inetCidrRouteEntry 8 }
 
    inetCidrRouteProto OBJECT-TYPE
        SYNTAX     IANAipRouteProtocol
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
               "The routing mechanism via which this route was learned.
                Inclusion of values for gateway routing protocols is
                not intended to imply that hosts should support those
                protocols."
        ::= { inetCidrRouteEntry 9 }
 
    inetCidrRouteAge OBJECT-TYPE
        SYNTAX     Gauge32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
               "The number of seconds since this route was last updated
                or otherwise determined to be correct.  Note that no
                semantics of 'too old' can be implied except through
                knowledge of the routing protocol by which the route
                was learned."
        ::= { inetCidrRouteEntry 10 }
 
    inetCidrRouteNextHopAS OBJECT-TYPE
        SYNTAX     InetAutonomousSystemNumber
        MAX-ACCESS read-create
        STATUS     current
        DESCRIPTION
               "The Autonomous System Number of the Next Hop.  The
                semantics of this object are determined by the routing-
                protocol specified in the route's inetCidrRouteProto
                value. When this object is unknown or not relevant its
                value should be set to zero."
        DEFVAL { 0 }
        ::= { inetCidrRouteEntry 11 }
 
    inetCidrRouteMetric1 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     current
        DESCRIPTION
               "The primary routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's inetCidrRouteProto
 
    Haberman, Wasserman  Expires February 2004                      12
    IP Forwarding Table MIB                                 August 2003
 
                value.  If this metric is not used, its value should be
                set to -1."
        DEFVAL { -1 }
        ::= { inetCidrRouteEntry 12 }
 
    inetCidrRouteMetric2 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     current
        DESCRIPTION
               "An alternate routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's inetCidrRouteProto
                value.  If this metric is not used, its value should be
                set to -1."
        DEFVAL { -1 }
        ::= { inetCidrRouteEntry 13 }
 
    inetCidrRouteMetric3 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     current
        DESCRIPTION
               "An alternate routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's inetCidrRouteProto
                value.  If this metric is not used, its value should be
                set to -1."
        DEFVAL { -1 }
        ::= { inetCidrRouteEntry 14 }
 
    inetCidrRouteMetric4 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     current
        DESCRIPTION
               "An alternate routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's inetCidrRouteProto
                value.  If this metric is not used, its value should be
                set to -1."
        DEFVAL { -1 }
        ::= { inetCidrRouteEntry 15 }
 
    inetCidrRouteMetric5 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     current
        DESCRIPTION
               "An alternate routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's inetCidrRouteProto
                value.  If this metric is not used, its value should be
                set to -1."
 
    Haberman, Wasserman  Expires February 2004                      13
    IP Forwarding Table MIB                                 August 2003
 
        DEFVAL { -1 }
        ::= { inetCidrRouteEntry 16 }
 
    inetCidrRouteStatus OBJECT-TYPE
        SYNTAX     RowStatus
        MAX-ACCESS read-create
        STATUS     current
        DESCRIPTION
               "The row status variable, used according to row
                installation and removal conventions.
 
                A row entry cannot be modified when the status is
                marked as active(1)."
        ::= { inetCidrRouteEntry 17 }
 
    --  Conformance information
 
    ipForwardConformance
         OBJECT IDENTIFIER ::= { ipForward 5 }
 
    ipForwardGroups
         OBJECT IDENTIFIER ::= { ipForwardConformance 1 }
 
    ipForwardCompliances
         OBJECT IDENTIFIER ::= { ipForwardConformance 2 }
 
    --  Compliance statements
 
    ipForwardFullCompliance MODULE-COMPLIANCE
        STATUS     current
        DESCRIPTION
               "When this MIB is implemented for read-create, the
                implementation can claim full compliance."
       MODULE -- this module
       MANDATORY-GROUPS { inetForwardCidrRouteGroup }
       ::= { ipForwardCompliances 3 }
 
    ipForwardReadOnlyCompliance MODULE-COMPLIANCE
        STATUS     current
        DESCRIPTION
               "When this MIB is implemented without support for read-
                create (i.e. in read-only mode), the implementation can
                claim read-only compliance."
       MODULE -- this module
       MANDATORY-GROUPS { inetForwardCidrRouteGroup }
 
       OBJECT      inetCidrRouteIfIndex
       MIN-ACCESS  read-only
       DESCRIPTION
          "Write access is not required."
 
       OBJECT      inetCidrRouteType
       MIN-ACCESS  read-only
       DESCRIPTION
 
    Haberman, Wasserman  Expires February 2004                      14
    IP Forwarding Table MIB                                 August 2003
 
          "Write access is not required."
 
       OBJECT      inetCidrRouteNextHopAS
       MIN-ACCESS  read-only
       DESCRIPTION
          "Write access is not required."
 
       OBJECT      inetCidrRouteMetric1
       MIN-ACCESS  read-only
       DESCRIPTION
          "Write access is not required."
 
       OBJECT      inetCidrRouteMetric2
       MIN-ACCESS  read-only
       DESCRIPTION
          "Write access is not required."
 
       OBJECT      inetCidrRouteMetric3
       MIN-ACCESS  read-only
       DESCRIPTION
          "Write access is not required."
 
       OBJECT      inetCidrRouteMetric4
       MIN-ACCESS  read-only
       DESCRIPTION
          "Write access is not required."
 
       OBJECT      inetCidrRouteMetric5
       MIN-ACCESS  read-only
       DESCRIPTION
          "Write access is not required."
 
       OBJECT      inetCidrRouteStatus
       MIN-ACCESS  read-only
       DESCRIPTION
          "Write access is not required."
 
       ::= { ipForwardCompliances 4 }
 
    -- units of conformance
 
    inetForwardCidrRouteGroup OBJECT-GROUP
        OBJECTS { inetCidrRouteDiscards,
                  inetCidrRouteIfIndex, inetCidrRouteType,
                  inetCidrRouteProto, inetCidrRouteAge,
                  inetCidrRouteNextHopAS, inetCidrRouteMetric1,
                  inetCidrRouteMetric2, inetCidrRouteMetric3,
                  inetCidrRouteMetric4, inetCidrRouteMetric5,
                  inetCidrRouteStatus, inetCidrRouteNumber
            }
        STATUS     current
        DESCRIPTION
               "The IP version-independent CIDR Route Table."
        ::= { ipForwardGroups 4 }
 
    Haberman, Wasserman  Expires February 2004                      15
    IP Forwarding Table MIB                                 August 2003
 
 
    --  Deprecated Objects
 
    ipCidrRouteNumber OBJECT-TYPE
        SYNTAX     Gauge32
        MAX-ACCESS read-only
        STATUS     deprecated
        DESCRIPTION
               "The number of current ipCidrRouteTable entries that are
                not invalid.  This object is deprecated in favor of
                inetCidrRouteNumber and the inetCidrRouteTable."
        ::= { ipForward 3 }
 
    --  IP CIDR Route Table
 
    --  The IP CIDR Route Table obsoletes and replaces the ipRoute
    --  Table current in MIB-I and MIB-II and the IP Forwarding Table.
    --  It adds knowledge of the autonomous system of the next hop,
    --  multiple next hops, and policy routing, and Classless
    --  Inter-Domain Routing.
 
    ipCidrRouteTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF IpCidrRouteEntry
        MAX-ACCESS not-accessible
        STATUS     deprecated
        DESCRIPTION
               "This entity's IP Routing table.  This table has been
                deprecated in favor of the IP version neutral
                inetCidrRouteTable."
        REFERENCE
               "RFC 1213 Section 6.6, The IP Group"
        ::= { ipForward 4 }
 
    ipCidrRouteEntry OBJECT-TYPE
        SYNTAX     IpCidrRouteEntry
        MAX-ACCESS not-accessible
        STATUS     deprecated
        DESCRIPTION
               "A particular route to a particular destination, under a
                particular policy."
        INDEX {
            ipCidrRouteDest,
            ipCidrRouteMask,
            ipCidrRouteTos,
            ipCidrRouteNextHop
            }
        ::= { ipCidrRouteTable 1 }
 
    IpCidrRouteEntry ::= SEQUENCE {
            ipCidrRouteDest       IpAddress,
            ipCidrRouteMask       IpAddress,
            ipCidrRouteTos        Integer32,
            ipCidrRouteNextHop    IpAddress,
            ipCidrRouteIfIndex    Integer32,
 
    Haberman, Wasserman  Expires February 2004                      16
    IP Forwarding Table MIB                                 August 2003
 
            ipCidrRouteType       INTEGER,
            ipCidrRouteProto      INTEGER,
            ipCidrRouteAge        Integer32,
            ipCidrRouteInfo       OBJECT IDENTIFIER,
            ipCidrRouteNextHopAS  Integer32,
            ipCidrRouteMetric1    Integer32,
            ipCidrRouteMetric2    Integer32,
            ipCidrRouteMetric3    Integer32,
            ipCidrRouteMetric4    Integer32,
            ipCidrRouteMetric5    Integer32,
            ipCidrRouteStatus     RowStatus
        }
 
    ipCidrRouteDest OBJECT-TYPE
        SYNTAX     IpAddress
        MAX-ACCESS read-only
        STATUS     deprecated
        DESCRIPTION
               "The destination IP address of this route.
 
                This object may not take a Multicast (Class D) address
                value.
 
                Any assignment (implicit or otherwise) of an instance
                of this object to a value x must be rejected if the
                bitwise logical-AND of x with the value of the
                corresponding instance of the ipCidrRouteMask object is
                not equal to x."
        ::= { ipCidrRouteEntry 1 }
 
    ipCidrRouteMask OBJECT-TYPE
        SYNTAX     IpAddress
        MAX-ACCESS read-only
        STATUS     deprecated
        DESCRIPTION
               "Indicate the mask to be logical-ANDed with the
                destination address before being compared to the value
                in the ipCidrRouteDest field.  For those systems that
                do not support arbitrary subnet masks, an agent
                constructs the value of the ipCidrRouteMask by
                reference to the IP Address Class.
 
                Any assignment (implicit or otherwise) of an instance
                of this object to a value x must be rejected if the
                bitwise logical-AND of x with the value of the
                corresponding instance of the ipCidrRouteDest object is
                not equal to ipCidrRouteDest."
        ::= { ipCidrRouteEntry 2 }
 
    -- The following convention is included for specification
    -- of TOS Field contents.  At this time, the Host Requirements
    -- and the Router Requirements documents disagree on the width
    -- of the TOS field.  This mapping describes the Router
    -- Requirements mapping, and leaves room to widen the TOS field
 
    Haberman, Wasserman  Expires February 2004                      17
    IP Forwarding Table MIB                                 August 2003
 
    -- without impact to fielded systems.
 
    ipCidrRouteTos OBJECT-TYPE
        SYNTAX     Integer32 (0..2147483647)
        MAX-ACCESS read-only
        STATUS     deprecated
        DESCRIPTION
               "The policy specifier is the IP TOS Field.  The encoding
                of IP TOS is as specified by the following convention.
                Zero indicates the default path if no more specific
                policy applies.
 
                +-----+-----+-----+-----+-----+-----+-----+-----+
                |                 |                       |     |
                |   PRECEDENCE    |    TYPE OF SERVICE    |  0  |
                |                 |                       |     |
                +-----+-----+-----+-----+-----+-----+-----+-----+
 
                             IP TOS                IP TOS
                   Field     Policy      Field     Policy
                   Contents    Code      Contents    Code
                   0 0 0 0  ==>   0      0 0 0 1  ==>   2
                   0 0 1 0  ==>   4      0 0 1 1  ==>   6
                   0 1 0 0  ==>   8      0 1 0 1  ==>  10
                   0 1 1 0  ==>  12      0 1 1 1  ==>  14
                   1 0 0 0  ==>  16      1 0 0 1  ==>  18
                   1 0 1 0  ==>  20      1 0 1 1  ==>  22
                   1 1 0 0  ==>  24      1 1 0 1  ==>  26
                   1 1 1 0  ==>  28      1 1 1 1  ==>  30"
        ::= { ipCidrRouteEntry 3 }
 
    ipCidrRouteNextHop OBJECT-TYPE
        SYNTAX     IpAddress
        MAX-ACCESS read-only
        STATUS     deprecated
        DESCRIPTION
               "On remote routes, the address of the next system en
                route; Otherwise, 0.0.0.0."
        ::= { ipCidrRouteEntry 4 }
 
    ipCidrRouteIfIndex OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     deprecated
        DESCRIPTION
               "The ifIndex value which identifies  the local interface
                through which the next hop of this route should be
                reached."
        DEFVAL { 0 }
        ::= { ipCidrRouteEntry 5 }
 
    ipCidrRouteType OBJECT-TYPE
        SYNTAX     INTEGER {
                    other    (1), -- not specified by this MIB
 
    Haberman, Wasserman  Expires February 2004                      18
    IP Forwarding Table MIB                                 August 2003
 
                    reject   (2), -- route which discards traffic
                    local    (3), -- local interface
                    remote   (4)  -- remote destination
                 }
        MAX-ACCESS read-create
        STATUS     deprecated
        DESCRIPTION
               "The type of route.  Note that local(3) refers to a
                route for which the next hop is the final destination;
                remote(4) refers to a route for which the next hop is
                not the final destination.
 
                Routes which do not result in traffic forwarding or
                rejection should not be displayed even if the
                implementation keeps them stored internally.
 
                reject (2) refers to a route which, if matched,
                discards the message as unreachable. This is used in
                some protocols as a means of correctly aggregating
                routes."
        ::= { ipCidrRouteEntry 6 }
 
    ipCidrRouteProto OBJECT-TYPE
        SYNTAX     INTEGER {
                    other     (1),  -- not specified
                    local     (2),  -- local interface
                    netmgmt   (3),  -- static route
                    icmp      (4),  -- result of ICMP Redirect
 
                            -- the following are all dynamic
                            -- routing protocols
                    egp        (5),  -- Exterior Gateway Protocol
                    ggp        (6),  -- Gateway-Gateway Protocol
                    hello      (7),  -- FuzzBall HelloSpeak
                    rip        (8),  -- Berkeley RIP or RIP-II
                    isIs       (9),  -- Dual IS-IS
                    esIs       (10), -- ISO 9542
                    ciscoIgrp  (11), -- Cisco IGRP
                    bbnSpfIgp  (12), -- BBN SPF IGP
                    ospf       (13), -- Open Shortest Path First
                    bgp        (14), -- Border Gateway Protocol
                    idpr       (15), -- InterDomain Policy Routing
                    ciscoEigrp (16)  -- Cisco EIGRP
                 }
        MAX-ACCESS read-only
        STATUS     deprecated
        DESCRIPTION
               "The routing mechanism via which this route was learned.
                Inclusion of values for gateway routing protocols is
                not intended to imply that hosts should support those
                protocols."
        ::= { ipCidrRouteEntry 7 }
 
    ipCidrRouteAge OBJECT-TYPE
 
    Haberman, Wasserman  Expires February 2004                      19
    IP Forwarding Table MIB                                 August 2003
 
        SYNTAX     Integer32
        MAX-ACCESS read-only
        STATUS     deprecated
        DESCRIPTION
               "The number of seconds since this route was last updated
                or otherwise determined to be correct.  Note that no
                semantics of `too old' can be implied except through
                knowledge of the routing protocol by which the route
                was learned."
        DEFVAL  { 0 }
        ::= { ipCidrRouteEntry 8 }
 
    ipCidrRouteInfo OBJECT-TYPE
        SYNTAX     OBJECT IDENTIFIER
        MAX-ACCESS read-create
        STATUS     deprecated
        DESCRIPTION
               "A reference to MIB definitions specific to the
                particular routing protocol which is responsible for
                this route, as determined by the value specified in the
                route's ipCidrRouteProto value.  If this information is
                not present, its value should be set to the OBJECT
                IDENTIFIER { 0 0 }, which is a syntactically valid
                object identifier, and any implementation conforming to
                ASN.1 and the Basic Encoding Rules must be able to
                generate and recognize this value."
        ::= { ipCidrRouteEntry 9 }
 
    ipCidrRouteNextHopAS OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     deprecated
        DESCRIPTION
               "The Autonomous System Number of the Next Hop.  The
                semantics of this object are determined by the routing-
                protocol specified in the route's ipCidrRouteProto
                value. When this object is unknown or not relevant its
                value should be set to zero."
        DEFVAL { 0 }
        ::= { ipCidrRouteEntry 10 }
 
    ipCidrRouteMetric1 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     deprecated
        DESCRIPTION
               "The primary routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's ipCidrRouteProto
                value.  If this metric is not used, its value should be
                set to -1."
        DEFVAL { -1 }
        ::= { ipCidrRouteEntry 11 }
 
 
    Haberman, Wasserman  Expires February 2004                      20
    IP Forwarding Table MIB                                 August 2003
 
    ipCidrRouteMetric2 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     deprecated
        DESCRIPTION
               "An alternate routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's ipCidrRouteProto
                value.  If this metric is not used, its value should be
                set to -1."
        DEFVAL { -1 }
        ::= { ipCidrRouteEntry 12 }
 
    ipCidrRouteMetric3 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     deprecated
        DESCRIPTION
               "An alternate routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's ipCidrRouteProto
                value.  If this metric is not used, its value should be
                set to -1."
        DEFVAL { -1 }
        ::= { ipCidrRouteEntry 13 }
 
    ipCidrRouteMetric4 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     deprecated
        DESCRIPTION
               "An alternate routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's ipCidrRouteProto
                value.  If this metric is not used, its value should be
                set to -1."
        DEFVAL { -1 }
        ::= { ipCidrRouteEntry 14 }
 
    ipCidrRouteMetric5 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     deprecated
        DESCRIPTION
               "An alternate routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's ipCidrRouteProto
                value.  If this metric is not used, its value should be
                set to -1."
        DEFVAL { -1 }
        ::= { ipCidrRouteEntry 15 }
 
    ipCidrRouteStatus OBJECT-TYPE
        SYNTAX     RowStatus
 
    Haberman, Wasserman  Expires February 2004                      21
    IP Forwarding Table MIB                                 August 2003
 
        MAX-ACCESS read-create
        STATUS     deprecated
        DESCRIPTION
               "The row status variable, used according to row
                installation and removal conventions."
        ::= { ipCidrRouteEntry 16 }
 
 
 
    -- compliance statements
 
    ipForwardCompliance MODULE-COMPLIANCE
        STATUS     deprecated
        DESCRIPTION
               "The compliance statement for SNMPv2 entities which
                implement the ipForward MIB."
 
       MODULE  -- this module
       MANDATORY-GROUPS { ipForwardCidrRouteGroup }
 
       ::= { ipForwardCompliances 1 }
 
    -- units of conformance
 
    ipForwardCidrRouteGroup OBJECT-GROUP
        OBJECTS { ipCidrRouteNumber,
                  ipCidrRouteDest, ipCidrRouteMask, ipCidrRouteTos,
                  ipCidrRouteNextHop, ipCidrRouteIfIndex,
                  ipCidrRouteType, ipCidrRouteProto, ipCidrRouteAge,
                  ipCidrRouteInfo,ipCidrRouteNextHopAS,
                  ipCidrRouteMetric1, ipCidrRouteMetric2,
                  ipCidrRouteMetric3, ipCidrRouteMetric4,
                  ipCidrRouteMetric5, ipCidrRouteStatus
            }
        STATUS     deprecated
        DESCRIPTION
               "The CIDR Route Table."
        ::= { ipForwardGroups 3 }
 
    -- Obsoleted Definitions - Objects
 
    ipForwardNumber OBJECT-TYPE
        SYNTAX     Gauge32
        MAX-ACCESS read-only
        STATUS     obsolete
        DESCRIPTION
               "The number of current ipForwardTable entries that are
                not invalid."
        ::= { ipForward 1 }
 
    --  IP Forwarding Table
 
    --  The IP Forwarding Table obsoletes and replaces the ipRoute
    --  Table current in MIB-I and MIB-II.  It adds knowledge of
 
    Haberman, Wasserman  Expires February 2004                      22
    IP Forwarding Table MIB                                 August 2003
 
    --  the autonomous system of the next hop, multiple next hop
    --  support, and policy routing support.
 
    ipForwardTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF IpForwardEntry
        MAX-ACCESS not-accessible
        STATUS     obsolete
        DESCRIPTION
               "This entity's IP Routing table."
        REFERENCE
               "RFC 1213 Section 6.6, The IP Group"
        ::= { ipForward 2 }
 
    ipForwardEntry OBJECT-TYPE
        SYNTAX     IpForwardEntry
        MAX-ACCESS not-accessible
        STATUS     obsolete
        DESCRIPTION
               "A particular route to a particular destination, under a
                particular policy."
        INDEX {
            ipForwardDest,
            ipForwardProto,
            ipForwardPolicy,
            ipForwardNextHop
            }
        ::= { ipForwardTable 1 }
 
    IpForwardEntry ::= SEQUENCE {
            ipForwardDest       IpAddress,
            ipForwardMask       IpAddress,
            ipForwardPolicy     Integer32,
            ipForwardNextHop    IpAddress,
            ipForwardIfIndex    Integer32,
            ipForwardType       INTEGER,
            ipForwardProto      INTEGER,
            ipForwardAge        Integer32,
            ipForwardInfo       OBJECT IDENTIFIER,
            ipForwardNextHopAS  Integer32,
            ipForwardMetric1    Integer32,
            ipForwardMetric2    Integer32,
            ipForwardMetric3    Integer32,
            ipForwardMetric4    Integer32,
            ipForwardMetric5    Integer32
        }
 
    ipForwardDest OBJECT-TYPE
        SYNTAX     IpAddress
        MAX-ACCESS read-only
        STATUS     obsolete
        DESCRIPTION
               "The destination IP address of this route.  An entry
                with a value of 0.0.0.0 is considered a default route.
 
 
    Haberman, Wasserman  Expires February 2004                      23
    IP Forwarding Table MIB                                 August 2003
 
                This object may not take a Multicast (Class D) address
                value.
 
                Any assignment (implicit or otherwise) of an instance
                of this object to a value x must be rejected if the
                bitwise logical-AND of x with the value of the
                corresponding instance of the ipForwardMask object is
                not equal to x."
        ::= { ipForwardEntry 1 }
 
    ipForwardMask OBJECT-TYPE
        SYNTAX     IpAddress
        MAX-ACCESS read-create
        STATUS     obsolete
        DESCRIPTION
               "Indicate the mask to be logical-ANDed with the
                destination address before being compared to the value
                in the ipForwardDest field.  For those systems that do
                not support arbitrary subnet masks, an agent constructs
                the value of the ipForwardMask by reference to the IP
                Address Class.
 
                Any assignment (implicit or otherwise) of an instance
                of this object to a value x must be rejected if the
                bitwise logical-AND of x with the value of the
                corresponding instance of the ipForwardDest object is
                not equal to ipForwardDest."
        DEFVAL { '00000000'H }      -- 0.0.0.0
        ::= { ipForwardEntry 2 }
 
    -- The following convention is included for specification
    -- of TOS Field contents.  At this time, the Host Requirements
    -- and the Router Requirements documents disagree on the width
    -- of the TOS field.  This mapping describes the Router
    -- Requirements mapping, and leaves room to widen the TOS field
    -- without impact to fielded systems.
 
    ipForwardPolicy OBJECT-TYPE
        SYNTAX     Integer32 (0..2147483647)
        MAX-ACCESS read-only
        STATUS     obsolete
        DESCRIPTION
               "The general set of conditions that would cause
                the selection of one multipath route (set of
                next hops for a given destination) is referred
                to as 'policy'.
 
                Unless the mechanism indicated by ipForwardProto
                specifies otherwise, the policy specifier is
                the IP TOS Field.  The encoding of IP TOS is as
                specified by the following convention.  Zero
                indicates the default path if no more specific
                policy applies.
 
 
    Haberman, Wasserman  Expires February 2004                      24
    IP Forwarding Table MIB                                 August 2003
 
                +-----+-----+-----+-----+-----+-----+-----+-----+
                |                 |                       |     |
                |   PRECEDENCE    |    TYPE OF SERVICE    |  0  |
                |                 |                       |     |
                +-----+-----+-----+-----+-----+-----+-----+-----+
 
 
 
                             IP TOS                IP TOS
                   Field     Policy      Field     Policy
                   Contents    Code      Contents    Code
                   0 0 0 0  ==>   0      0 0 0 1  ==>   2
                   0 0 1 0  ==>   4      0 0 1 1  ==>   6
                   0 1 0 0  ==>   8      0 1 0 1  ==>  10
                   0 1 1 0  ==>  12      0 1 1 1  ==>  14
                   1 0 0 0  ==>  16      1 0 0 1  ==>  18
                   1 0 1 0  ==>  20      1 0 1 1  ==>  22
                   1 1 0 0  ==>  24      1 1 0 1  ==>  26
                   1 1 1 0  ==>  28      1 1 1 1  ==>  30
 
                Protocols defining 'policy' otherwise must either
                define a set of values which are valid for
                this object or must implement an integer-instanced
                policy table for which this object's
                value acts as an index."
        ::= { ipForwardEntry 3 }
 
    ipForwardNextHop OBJECT-TYPE
        SYNTAX     IpAddress
        MAX-ACCESS read-only
        STATUS     obsolete
        DESCRIPTION
               "On remote routes, the address of the next system en
                route; Otherwise, 0.0.0.0."
        ::= { ipForwardEntry 4 }
 
    ipForwardIfIndex OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     obsolete
        DESCRIPTION
               "The ifIndex value which identifies the local interface
                through which the next hop of this route should be
                reached."
        DEFVAL { 0 }
        ::= { ipForwardEntry 5 }
 
    ipForwardType OBJECT-TYPE
        SYNTAX     INTEGER {
                    other    (1), -- not specified by this MIB
                    invalid  (2), -- logically deleted
                    local    (3), -- local interface
                    remote   (4)  -- remote destination
                 }
 
    Haberman, Wasserman  Expires February 2004                      25
    IP Forwarding Table MIB                                 August 2003
 
        MAX-ACCESS read-create
        STATUS     obsolete
        DESCRIPTION
               "The type of route.  Note that local(3) refers to a
                route for which the next hop is the final destination;
                remote(4) refers to a route for which the next hop is
                not the final destination.
 
                Setting this object to the value invalid(2) has the
                effect of invalidating the corresponding entry in the
                ipForwardTable object.  That is, it effectively
                disassociates the destination identified with said
                entry from the route identified with said entry.  It is
                an implementation-specific matter as to whether the
                agent removes an invalidated entry from the table.
                Accordingly, management stations must be prepared to
                receive tabular information from agents that
                corresponds to entries not currently in use.  Proper
                interpretation of such entries requires examination of
                the relevant ipForwardType object."
        DEFVAL { invalid }
        ::= { ipForwardEntry 6 }
 
    ipForwardProto OBJECT-TYPE
        SYNTAX     INTEGER {
                    other     (1),  -- not specified
                    local     (2),  -- local interface
                    netmgmt   (3),  -- static route
                    icmp      (4),  -- result of ICMP Redirect
 
                            -- the following are all dynamic
                            -- routing protocols
                    egp       (5),  -- Exterior Gateway Protocol
                    ggp       (6),  -- Gateway-Gateway Protocol
                    hello     (7),  -- FuzzBall HelloSpeak
                    rip       (8),  -- Berkeley RIP or RIP-II
                    is-is     (9),  -- Dual IS-IS
                    es-is     (10), -- ISO 9542
                    ciscoIgrp (11), -- Cisco IGRP
                    bbnSpfIgp (12), -- BBN SPF IGP
                    ospf      (13), -- Open Shortest Path First
                    bgp       (14), -- Border Gateway Protocol
                    idpr      (15)  -- InterDomain Policy Routing
                 }
        MAX-ACCESS read-only
        STATUS     obsolete
        DESCRIPTION
               "The routing mechanism via which this route was learned.
                Inclusion of values for gateway routing protocols is
                not intended to imply that hosts should support those
                protocols."
        ::= { ipForwardEntry 7 }
 
    ipForwardAge OBJECT-TYPE
 
    Haberman, Wasserman  Expires February 2004                      26
    IP Forwarding Table MIB                                 August 2003
 
        SYNTAX     Integer32
        MAX-ACCESS read-only
        STATUS     obsolete
        DESCRIPTION
               "The number of seconds since this route was last updated
                or otherwise determined to be correct.  Note that no
                semantics of `too old' can be implied except through
                knowledge of the routing protocol by which the route
                was learned."
        DEFVAL  { 0 }
        ::= { ipForwardEntry 8 }
 
    ipForwardInfo OBJECT-TYPE
        SYNTAX     OBJECT IDENTIFIER
        MAX-ACCESS read-create
        STATUS     obsolete
        DESCRIPTION
               "A reference to MIB definitions specific to the
                particular routing protocol which is responsible for
                this route, as determined by the value specified in the
                route's ipForwardProto value.  If this information is
                not present, its value should be set to the OBJECT
                IDENTIFIER { 0 0 }, which is a syntactically valid
                object identifier, and any implementation conforming to
                ASN.1 and the Basic Encoding Rules must be able to
                generate and recognize this value."
        ::= { ipForwardEntry 9 }
 
    ipForwardNextHopAS OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     obsolete
        DESCRIPTION
               "The Autonomous System Number of the Next Hop.  When
                this is unknown or not relevant to the protocol
                indicated by ipForwardProto, zero."
        DEFVAL { 0 }
        ::= { ipForwardEntry 10 }
 
    ipForwardMetric1 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     obsolete
        DESCRIPTION
               "The primary routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's ipForwardProto value.
                If this metric is not used, its value should be set to
                -1."
        DEFVAL { -1 }
        ::= { ipForwardEntry 11 }
 
    ipForwardMetric2 OBJECT-TYPE
        SYNTAX     Integer32
 
    Haberman, Wasserman  Expires February 2004                      27
    IP Forwarding Table MIB                                 August 2003
 
        MAX-ACCESS read-create
        STATUS     obsolete
        DESCRIPTION
               "An alternate routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's ipForwardProto value.
                If this metric is not used, its value should be set to
                -1."
        DEFVAL { -1 }
        ::= { ipForwardEntry 12 }
 
    ipForwardMetric3 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     obsolete
        DESCRIPTION
               "An alternate routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's ipForwardProto value.
                If this metric is not used, its value should be set to
                -1."
        DEFVAL { -1 }
        ::= { ipForwardEntry 13 }
 
    ipForwardMetric4 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     obsolete
        DESCRIPTION
               "An alternate routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's ipForwardProto value.
                If this metric is not used, its value should be set to
                -1."
        DEFVAL { -1 }
        ::= { ipForwardEntry 14 }
 
    ipForwardMetric5 OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-create
        STATUS     obsolete
        DESCRIPTION
               "An alternate routing metric for this route.  The
                semantics of this metric are determined by the routing-
                protocol specified in the route's ipForwardProto value.
                If this metric is not used, its value should be set to
                -1."
        DEFVAL { -1 }
        ::= { ipForwardEntry 15 }
 
    -- Obsoleted Definitions - Groups
    -- compliance statements
 
    ipForwardOldCompliance MODULE-COMPLIANCE
 
    Haberman, Wasserman  Expires February 2004                      28
    IP Forwarding Table MIB                                 August 2003
 
        STATUS     obsolete
        DESCRIPTION
               "The compliance statement for SNMP entities which
                implement the ipForward MIB."
 
       MODULE  -- this module
       MANDATORY-GROUPS { ipForwardMultiPathGroup }
 
       ::= { ipForwardCompliances 2 }
 
    ipForwardMultiPathGroup OBJECT-GROUP
        OBJECTS { ipForwardNumber,
                  ipForwardDest, ipForwardMask, ipForwardPolicy,
                  ipForwardNextHop, ipForwardIfIndex, ipForwardType,
                  ipForwardProto, ipForwardAge, ipForwardInfo,
                  ipForwardNextHopAS,
                  ipForwardMetric1, ipForwardMetric2, ipForwardMetric3,
                  ipForwardMetric4, ipForwardMetric5
            }
        STATUS     obsolete
        DESCRIPTION
               "IP Multipath Route Table."
        ::= { ipForwardGroups 2 }
 
    END
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
    Haberman, Wasserman  Expires February 2004                      29
    IP Forwarding Table MIB                                 August 2003
 
 
 5  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.  These are the tables and objects and their
    sensitivity/vulnerability:
 
       1. The inetCidrRouteTable contains routing and forwarding
         information that is critical to the operation of the network
         node (especially routers).  Allowing unauthenticated write
         access to this table can compromise the validity of the
         forwarding information.
 
    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.  These are the tables and objects
    and their sensitivity/vulnerability:
 
       1. The inetCidrRouteTable contains routing and forwarding
         information that can be used to compromise a network.
         Specifically, this table can be used to construct a map of the
         network in preparation for a denial-of-service attack on the
         network infrastructure.
       2. The inetCidrRouteProto object identifies the routing protocols
         in use within a network.  This information can be used to
         determine how a denial-of-service attack should be launched.
 
    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.
 
 
 
    Haberman, Wasserman  Expires February 2004                      30
    IP Forwarding Table MIB                                 August 2003
 
 6  Intellectual Property
 
    The IETF takes no position regarding the validity or scope of any
    intellectual property or other rights that might be claimed to
    pertain to the implementation or use of the technology described in
    this document or the extent to which any license under such rights
    might or might not be available; neither does it represent that it
    has made any effort to identify any such rights.  Information on
    the IETF's procedures with respect to rights in standards-track and
    standards-related documentation can be found in BCP-11.  Copies of
    claims of rights made available for publication and any assurances
    of licenses to be made available, or the result of an attempt made
    to obtain a general license or permission for the use of such
    proprietary rights by implementors or users of this specification
    can be obtained from the IETF Secretariat.
 
    The IETF invites any interested party to bring to its attention any
    copyrights, patents or patent applications, or other proprietary
    rights which may cover technology that may be required to practice
    this standard.  Please address the information to the IETF
    Executive Director.
 
 7  Changes from RFC 2096
 
    This document updates RFC 2096 in the following ways:
 
       1. Utilized the InetAddress TC to support IP version-independent
         implementations of the forwarding MIB.  This gives common
         forwarding MIB support for IPv4 and IPv6.
       2. Created a read-only conformance statement to support
         implementations that only wish to retrieve data.
       3. Created the inetCidrRouteDiscards object to replace the
         deprecated ipRoutingDiscards and ipv6DiscardedRoutes objects.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
    Haberman, Wasserman  Expires February 2004                      31
    IP Forwarding Table MIB                                 August 2003
 
 
 8  Normative References
 
    [RFC2119] S. Bradner, "Key words for use in RFCs to Indicate
              Requirement Levels", RFC 2119, BCP14, March 1999.
 
    [RFC2578] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
              Rose, M. and S. Waldbusser, "Structure of Management
              Information Version 2 (SMIv2)", STD 58, RFC 2578, April
              1999.
 
    [RFC2579] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
              Rose, M. and S. Waldbusser, "Textual Conventions for
              SMIv2", STD 58, RFC 2579, April 1999.
 
    [RFC2580] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
              Rose, M. and S. Waldbusser, "Conformance Statements for
              SMIv2", STD 58, RFC 2580, April 1999.
 
    [RFC3291] Daniele, M., Haberman, B., Routhier, S., Schoenwaelder,
              J., "Textual Conventions for Internet Network Addresses",
              RFC 3291, May 2002.
    -- RFC Ed : An update to RFC 3291 is in the works, in the case that
    -- draft-ietf-ops-rfc3291bis is published before or at the same
    -- time as this document, please update this reference and the two
    -- citations in the document.  Afterwards, please remove this note.
 
    [RFC2863] McCloghrie, K., and Kastenholz, F., "The Interfaces Group
              MIB", RFC 2863, June 2000.
 
    [2011upd] Routhier, S., "Management Information Base for the
              Internet Protocol (IP),
              draft-ietf-ipv6-rfc2011-update-02.txt, February 2003.
 
    [RTPROTO] IANA, "IP Route Protocol MIB",
              http://www.iana.org/assignments/ianaiprouteprotocol-mib,
              September 2000.
 
 9  Informative References
 
    [RFC3410] Case, J., Mundy, R., Partain, D. and B. Stewart,
              "Introduction and Applicability Statements for Internet-
              Standard Management Framework", RFC 3410, December 2002.
 
    [RFC2096] Baker, F., "IP Forwarding Table MIB", RFC 2096, January
              1997.
 
 
 
 
 
 
 
 
 
    Haberman, Wasserman  Expires February 2004                      32
    IP Forwarding Table MIB                                 August 2003
 
 
 10 Authors and Acknowledgements
 
    This document was based on RFC 2096 [RFC2096].
 
    The following people provided text for this version of the
    document, or were authors of previous versions:
 
    Fred Baker, Cisco
    Bill Fenner, AT&T Research
    Brian Haberman, Caspian Networks
    Juergen Schoenwalder, TU Braunschweig
    Dave Thaler, Microsoft
    Margaret Wasserman, Wind River
 
    Dario Accornero, Mark Adam, Qing Li and Shawn Routhier reviewed the
    document and provided helpful feedback.
 
    Mike Heard provided valuable feedback as the MIB Doctor for this
    document.
 
 11 Editors' Contact Information
 
    Comments or questions regarding this document should be sent to:
 
    Brian Haberman
    Caspian Networks
    753 Bridgewater Drive              Phone:  +1 410-552-1421
    Sykesville, MD 21784  USA          Email:  brian@innovationslab.net
 
 
    Margaret Wasserman
    Wind River
    10 Tara Blvd., Suite 330           Phone:  +1 603-897-2067
    Nashua, NH  03062  USA             Email:  mrw@windriver.com
 
 
 12 Full Copyright Statement
 
    Copyright (C) The Internet Society (2003). All Rights Reserved.
 
    This document and translations of it may be copied and furnished to
    others, and derivative works that comment on or otherwise explain
    it or assist in its implementation may be prepared, copied,
    published and distributed, in whole or in part, without restriction
    of any kind, provided that the above copyright notice and this
    paragraph are included on all such copies and derivative works.
    However, this document itself may not be modified in any way, such
    as by removing the copyright notice or references to the Internet
    Society or other Internet organizations, except as needed for the
    purpose of developing Internet standards in which case the
    procedures for copyrights defined in the Internet Standards process
    must be followed, or as required to translate it into languages
    other than English.
 
    Haberman, Wasserman  Expires February 2004                      33
    IP Forwarding Table MIB                                 August 2003
 
 
    The limited permissions granted above are perpetual and will not be
    revoked by the Internet Society or its successors or assigns.
 
    This document and the information contained herein is provided on
    an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET
    ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
    INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
    INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
    WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
    Haberman, Wasserman  Expires February 2004                      34