RFC 4292 - IP Forwarding Table MIB

时间:2006-11-01 来源: 作者: 点击:
NetworkWorkingGroup B.Haberman RequestforComments:4292JohnsHopkinsUniversity Obsoletes:2096 April2006 Category:StandardsTrack IPForwardingTableMIB StatusofThisMemo ThisdocumentspecifiesanInternetstandardstrackprotocolforthe Internetcommunity,andreque
  Network Working Group                                            B. Haberman
Request for Comments: 4292                      Johns Hopkins University
Obsoletes: 2096                                                              April 2006
Category: Standards Track

                        IP Forwarding Table MIB

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) The Internet Society (2006).

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.

Table of Contents

   1. Introduction ....................................................2
   2. Conventions Used In This Document ...............................2
   3. The Internet-Standard Management Framework ......................2
   4. Overview ........................................................2
      4.1. Relationship to Other MIBs .................................3
           4.1.1. RFC 1213 ............................................3
           4.1.2. RFC 1354 ............................................3
           4.1.3. RFC 2096 ............................................3
           4.1.4. RFC 2011 and 2465 ...................................3
   5. Definitions .....................................................3
   6. Security Considerations ........................................30
   7. Changes from RFC 2096 ..........................................31
   8. Normative References ...........................................32
   9. Informative References .........................................32
   10. Authors and Acknowledgements ..................................33

1.  Introduction

   This document defines a portion of the Management Information Base
   (MIB) for use in managing objects related to the forwarding of
   Internet Protocol (IP) packets in an IP version-independent manner.

   It should be noted that the MIB definition described herein does not
   support multiple instances based on the same address family type.
   However, it does support an instance of the MIB per address family.

2.  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].

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

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

4.1.  Relationship to Other MIBs

   This MIB definition contains several deprecated and obsolete tables
   and objects.  The following subsections describe the relationship
   between these objects and other MIB modules.

4.1.1.  RFC 1213

   The ipRouteTable object was originally defined in RFC 1213 [RFC1213].
   It was updated by ipForwardTable in RFC 1354 [RFC1354].

4.1.2.  RFC 1354

   The ipForwardTable object replaced the ipRouteTable object from RFC
   1213.  It was in turn obsoleted by the ipCidrRouteTable defined in
   RFC 2096 [RFC2096].

   In addition, RFC 1354 introduced ipForwardNumber.  This object
   reflects the number of entries found in ipForwardTable.  It was
   obsoleted by ipCidrRouteNumber, defined in RFC 2096.

4.1.3.  RFC 2096

   In RFC 2096, the ipCidrRouteTable and ipCidrRouteNumber were
   introduced.  The ipCidrRouteTable object supports multipath IP routes
   having the same network number but differing network masks.  The
   number of entries in that table is reflected in ipCidrRouteNumber.
   These objects are deprecated by the definitions contained in this MIB
   definition.

4.1.4.  RFC 2011 and 2465

   RFC 2011 [RFC2011] contains the ipRoutingDiscards object, which
   counts the number of valid routes that have been removed from the
   ipCidrRouteTable object.  The corresponding ipv6DiscardedRoutes
   object is defined in RFC 2465 [RFC2465].  These objects are
   deprecated in favor of the version-independent object
   inetCidrRouteDiscards defined in this MIB.

5.  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
       InterfaceIndexOrZero               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 "200602010000Z"
       ORGANIZATION
              "IETF IPv6 Working Group
               http://www.ietf.org/html.charters/ipv6-charter.html"
       CONTACT-INFO
              "Editor:
               Brian Haberman
               Johns Hopkins University - Applied Physics Laboratory
               Mailstop 17-S442
               11100 Johns Hopkins Road
               Laurel MD,  20723-6099  USA

               Phone: +1-443-778-1319
               Email: brian@innovationslab.net

               Send comments to <ipv6@ietf.org>"
       DESCRIPTION
              "The MIB module for the management of CIDR multipath IP
               Routes.

               Copyright (C) The Internet Society (2006).  This version
               of this MIB module is a part of RFC 4292; see the RFC
               itself for full legal notices."

       REVISION      "200602010000Z"
       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.

               The inetCidrRouteTable replaces the IPv4-specific
               ipCidrRouteTable, its related objects, and related
               conformance statements.

               Published as RFC 4292."

       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 valid route entries discarded from the
               inetCidrRouteTable.  Discarded route entries do not
               appear in the inetCidrRouteTable.  One possible reason
               for discarding an entry would be to free-up buffer space
               for other route table 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
       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 (as reflected in the
               inetCidrRoutePolicy object).

               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      InterfaceIndexOrZero,
           inetCidrRouteType         INTEGER,
           inetCidrRouteProto        IANAipRouteProtocol,
           inetCidrRouteAge          Gauge32,
           inetCidrRouteNextHopAS    InetAutonomousSystemNumber,
           inetCidrRouteMetric1      Integer32,
           inetCidrRouteMetric2      Integer32,
           inetCidrRouteMetric3      Integer32,

           inetCidrRouteMetric4      Integer32,
           inetCidrRouteMetric5      Integer32,
           inetCidrRouteStatus       RowStatus
       }

   inetCidrRouteDestType OBJECT-TYPE
       SYNTAX     InetAddressType
       MAX-ACCESS not-accessible
       STATUS     current
       DESCRIPTION
              "The type of the inetCidrRouteDest address, as defined
               in the InetAddress MIB.

               Only those address types that may appear in an actual
               routing table are allowed as values of this object."
       REFERENCE "RFC 4001"
       ::= { inetCidrRouteEntry 1 }

   inetCidrRouteDest OBJECT-TYPE
       SYNTAX     InetAddress
       MAX-ACCESS not-accessible
       STATUS     current
       DESCRIPTION
              "The destination IP address of this route.

               The type of this address is determined by the value of
               the inetCidrRouteDestType object.

               The values for the index objects inetCidrRouteDest and
               inetCidrRoutePfxLen must be consistent.  When the value
               of inetCidrRouteDest (excluding the zone index, if one
               is present) is x, then the bitwise logical-AND
               of x with the value of the mask formed from the
               corresponding index object inetCidrRoutePfxLen MUST be
               equal to x.  If not, then the index pair is not
               consistent and an inconsistentName error must be
               returned on SET or CREATE requests."

       ::= { inetCidrRouteEntry 2 }

   inetCidrRoutePfxLen OBJECT-TYPE
       SYNTAX     InetAddressPrefixLength
       MAX-ACCESS not-accessible
       STATUS     current
       DESCRIPTION
              "Indicates the number of leading one bits that form the
               mask to be logical-ANDed with the destination address
               before being compared to the value in the

               inetCidrRouteDest field.

               The values for the index objects inetCidrRouteDest and
               inetCidrRoutePfxLen must be consistent.  When the value
               of inetCidrRouteDest (excluding the zone index, if one
               is present) is x, then the bitwise logical-AND
               of x with the value of the mask formed from the
               corresponding index object inetCidrRoutePfxLen MUST be
               equal to x.  If not, then the index pair is not
               consistent and an inconsistentName error must be
               returned on SET or CREATE requests."

       ::= { inetCidrRouteEntry 3 }

   inetCidrRoutePolicy OBJECT-TYPE
       SYNTAX     OBJECT IDENTIFIER
       MAX-ACCESS not-accessible
       STATUS     current
       DESCRIPTION
              "This object is an opaque object without any defined
               semantics.  Its purpose is to serve as an additional
               index that may delineate between multiple entries to
               the same destination.  The value { 0 0 } shall be used
               as the default value for this object."
       ::= { inetCidrRouteEntry 4 }

   inetCidrRouteNextHopType OBJECT-TYPE
       SYNTAX     InetAddressType
       MAX-ACCESS not-accessible
       STATUS     current
       DESCRIPTION
              "The type of the inetCidrRouteNextHop address, as
               defined in the InetAddress MIB.

               Value should be set to unknown(0) for non-remote
               routes.

               Only those address types that may appear in an actual
               routing table are allowed as values of this object."
       REFERENCE "RFC 4001"
       ::= { 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.

               The type of this address is determined by the value of
               the inetCidrRouteNextHopType object."
       ::= { inetCidrRouteEntry 6 }

   inetCidrRouteIfIndex OBJECT-TYPE
       SYNTAX     InterfaceIndexOrZero
       MAX-ACCESS read-create
       STATUS     current
       DESCRIPTION
              "The ifIndex value that identifies the local interface
               through which the next hop of this route should be
               reached.  A value of 0 is valid and represents the
               scenario where no interface is specified."
       ::= { inetCidrRouteEntry 7 }

   inetCidrRouteType OBJECT-TYPE
       SYNTAX     INTEGER {
                   other    (1), -- not specified by this MIB
                   reject   (2), -- route that discards traffic and
                                 --   returns ICMP notification
                   local    (3), -- local interface
                   remote   (4), -- remote destination
                   blackhole(5)  -- route that 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 that 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 that, 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 that, 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
               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
------分隔线----------------------------
顶一下
(0)
0%
踩一下
(1)
100%
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
推荐内容