Network Working Group M. Daniele
Request for Comments: 2454 Compaq Computer Corporation
Category: Standards Track December 1998
IP Version 6 Management Information Base
for the User Datagram Protocol
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 (1998). All Rights Reserved.
Abstract
This document is one in the series of documents that define various
MIB objects for IPv6. Specifically, this document is the MIB module
which defines managed objects for implementations of the User
Datagram Protocol (UDP) over IP Version 6 (IPv6).
This document also recommends a specific policy with respect to the
applicability of RFC 2013 for implementations of IPv6. Namely, that
most of managed objects defined in RFC 2013 are independent of which
IP versions underlie UDP, and only the UDP listener information is IP
version-specific.
This memo defines an experimental portion of the Management
Information Base (MIB) for use with network management protocols in
IPv6-based internets.
1. Introduction
A management system contains: several (potentially many) nodes, each
with a processing entity, termed an agent, which has access to
management instrumentation; at least one management station; and, a
management protocol, used to convey management information between
the agents and management stations. Operations of the protocol are
carried out under an administrative framework which defines
authentication, authorization, access control, and privacy policies.
Daniele Standards Track [Page 1]
RFC 2454 UDP MIB for IPv6 December 1998
Management stations execute management applications which monitor and
control managed elements. Managed elements are devices such as
hosts, routers, terminal servers, etc., which are monitored and
controlled via access to their management information.
Management information is viewed as a collection of managed objects,
residing in a virtual information store, termed the Management
Information Base (MIB). Collections of related objects are defined
in MIB modules. These modules are written using a subset of OSI's
Abstract Syntax Notation One (ASN.1) [1], termed the Structure of
Management Information (SMI) [2].
2. Overview
This document is one in the series of documents that define various
MIB objects, and statements of conformance, for IPv6. This document
defines the required instrumentation for implementations of UDP over
IPv6.
3. Transparency of IP versions to UDP
The fact that UDP is carried over IPv6 as opposed to IPv4, is largely
invisible to a UDP implementation. A "UDPng" did not need to be
defined, implementations simply need to support IPv6 addresses.
As such, the managed objects already defined in [UDP MIB] are
sufficient for managing UDP in the presence of IPv6. These objects
are equally applicable whether the managed node supports IPv4 only,
IPv6 only, or both IPv4 and IPv6.
For example, udpInDatagrams counts "The total number of UDP datagrams
delivered to UDP users", regardless of which version of IP is used to
deliver any of those datagrams.
Stated differently, UDP implementations don't need separate counters
for IPv4 and for IPv6.
4. Representing UDP Listeners
The exception to the statements in section 3 is the udpTable. Since
IPv6 addresses cannot be represented with the IpAddress syntax, not
all UDP endpoints can be represented in the udpTable defined in [UDP
MIB].
This memo defines a new, separate table to represent only those UDP
endpoints that utilize an IPv6 address. UDP endpoints on IPv4
addresses continue to be represented in udpTable [UDP MIB].
Daniele Standards Track [Page 2]
RFC 2454 UDP MIB for IPv6 December 1998
A different approach would have been to define a new table to
represent all UDP endpoints regardless of IP version. This would
require changes to [UDP MIB] and hence to existing (IPv4-only) UDP
implementations. The approach suggested in this memo has the
advantage of leaving IPv4-only implementations intact.
It is assumed that the objects defined in this memo will eventually
be defined in an update to [UDP MIB]. For this reason, the module
identity is assigned under the experimental portion of the MIB.
5. Conformance
This memo contains conformance statements to define conformance to
this MIB for UDP over IPv6 implementations.
6. Definitions
IPV6-UDP-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF
MODULE-IDENTITY, OBJECT-TYPE,
mib-2, experimental FROM SNMPv2-SMI
Ipv6Address, Ipv6IfIndexOrZero FROM IPV6-TC;
ipv6UdpMIB MODULE-IDENTITY
LAST-UPDATED "9801290000Z"
ORGANIZATION "IETF IPv6 MIB Working Group"
CONTACT-INFO
" Mike Daniele
Postal: Compaq Computer Corporation
110 Spitbrook Rd
Nashua, NH 03062.
US
Phone: +1 603 884 1423
Email: daniele@zk3.dec.com"
DESCRIPTION
"The MIB module for entities implementing UDP over IPv6."
::= { experimental 87 }
-- objects specific to UDP for IPv6
udp OBJECT IDENTIFIER ::= { mib-2 7 }
-- the UDP over IPv6 Listener table
Daniele Standards Track [Page 3]
RFC 2454 UDP MIB for IPv6 December 1998
-- This table contains information about this entity's
-- UDP/IPv6 endpoints. Only endpoints utilizing IPv6 addresses
-- are contained in this table. This entity's UDP/IPv4 endpoints
-- are contained in udpTable.
ipv6UdpTable OBJECT-TYPE
SYNTAX SEQUENCE OF Ipv6UdpEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table containing UDP listener information for
UDP/IPv6 endpoints."
::= { udp 6 }
ipv6UdpEntry OBJECT-TYPE
SYNTAX Ipv6UdpEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a particular current UDP listener.
Note that conceptual rows in this table require an
additional index object compared to udpTable, since
IPv6 addresses are not guaranteed to be unique on the
managed node."
INDEX { ipv6UdpLocalAddress,
ipv6UdpLocalPort,
ipv6UdpIfIndex }
::= { ipv6UdpTable 1 }
Ipv6UdpEntry ::= SEQUENCE {
ipv6UdpLocalAddress Ipv6Address,
ipv6UdpLocalPort INTEGER (0..65535),
ipv6UdpIfIndex Ipv6IfIndexOrZero }
ipv6UdpLocalAddress OBJECT-TYPE
SYNTAX Ipv6Address
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The local IPv6 address for this UDP listener.
In the case of a UDP listener which is willing
to accept datagrams for any IPv6 address
associated with the managed node, the value ::0
is used."
::= { ipv6UdpEntry 1 }
ipv6UdpLocalPort OBJECT-TYPE
Daniele Standards Track [Page 4]
RFC 2454 UDP MIB for IPv6 December 1998
SYNTAX INTEGER (0..65535)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The local port number for this UDP listener."
::= { ipv6UdpEntry 2 }
ipv6UdpIfIndex OBJECT-TYPE
SYNTAX Ipv6IfIndexOrZero
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An index object used to disambiguate conceptual rows in
the table, since the ipv6UdpLocalAddress/ipv6UdpLocalPort
pair may not be unique.
This object identifies the local interface that is
associated with ipv6UdpLocalAddress for this UDP listener.
If such a local interface cannot be determined, this object
should take on the value 0. (A possible example of this
would be if the value of ipv6UdpLocalAddress is ::0.)
The interface identified by a particular non-0 value of
this index is the same interface as identified by the same
value of ipv6IfIndex.
The value of this object must remain constant during
the life of this UDP endpoint."
::= { ipv6UdpEntry 3 }
--
-- conformance information
--
ipv6UdpConformance OBJECT IDENTIFIER ::= { ipv6UdpMIB 2 }
ipv6UdpCompliances OBJECT IDENTIFIER ::= { ipv6UdpConformance 1 }
ipv6UdpGroups OBJECT IDENTIFIER ::= { ipv6UdpConformance 2 }
-- compliance statements
ipv6UdpCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for SNMPv2 entities which
implement UDP over IPv6."
MODULE -- this module
MANDATORY-GROUPS { ipv6UdpGroup }
Daniele Standards Track [Page 5]
RFC 2454 UDP MIB for IPv6 December 1998
::= { ipv6UdpCompliances 1 }
ipv6UdpGroup OBJECT-GROUP
OBJECTS { -- these are defined in this module
-- ipv6UdpLocalAddress (not-accessible)
-- ipv6UdpLocalPort (not-accessible)
ipv6UdpIfIndex }
STATUS current
DESCRIPTION
"The group of objects providing management of
UDP over IPv6."
::= { ipv6UdpGroups 1 }
END
7. Acknowledgments
This memo is a product of the IPng work group, and benefited
especially from the contributions of the following working group
members:
Dimitry Haskin Bay Networks
Margaret Forsythe Epilogue
Tim Hartrick Mentat
Frank Solensky FTP
Jack McCann DEC
8. References
[1] Information processing systems - Open Systems
Interconnection - Specification of Abstract Syntax
Notation One (ASN.1), International Organization for
Standardization. International Standard 8824,
(December, 1987).
[2] McCloghrie, K., Editor, "Structure of Management
Information for version 2 of the Simple Network
Management Protocol (SNMPv2)", RFC 1902, January 1996.
[UDP MIB] SNMPv2 Working Group, McCloghrie, K., Editor, "SNMPv2
Management Information Base for the User Datagram
Protocol using SMIv2", RFC 2013, November 1996.
[IPV6 MIB TC] Haskin, D., and S. Onishi, "Management Information Base
for IP Version 6: Textual Conventions and General
Group", RFC 2465, December 1998.
Daniele Standards Track [Page 6]
RFC 2454 UDP MIB for IPv6 December 1998
[IPV6] Deering, S., and R. Hinden, "Internet Protocol, Version
6 (IPv6) Specification", RFC 2460, December 1998.
[RFC2274] Blumenthal, U., and B. Wijnen, "The User-Based Security
Model for Version 3 of the Simple Network Management
Protocol (SNMPv3)", RFC 2274, January 1998.
[RFC2275] Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based
Access Control Model for the Simple Network Management
Protocol (SNMP)", RFC 2275, January 1998.
9. Security Considerations
There are no management objects defined in this MIB that have a MAX-
ACCESS clause of read-write and/or read-create. So, if this MIB is
implemented correctly, then there is no risk that an intruder can
alter or create any management objects of this MIB via direct SNMP
SET operations.
There are a number of managed objects in this MIB that may be
considered to contain sensitive information in some environments.
For example, the MIB identifies UDP ports on which processes are
listening. Although this information might be considered sensitive
in some environments (i.e., to identify ports on which to launch
denial-of-service or other attacks), there are already other ways of
obtaining similar information. For example, sending a random UDP
packet to an unused port prompts the generation of an ICMP port
unreachable message.
Therefore, it may be important in some environments to control read
access to these objects and possibly to even encrypt the values of
these object when sending them over the network via SNMP. Not all
versions of SNMP provide features for such a secure environment.
SNMPv1 by itself does not provide encryption or strong
authentication.
It is recommended that the implementors consider the security
features as provided by the SNMPv3 framework. Specifically, the use
of the User-based Security Model [RFC2274] and the View-based Access
Control Model [RFC2275] is recommended.
It is then a customer/user responsibility to ensure that the SNMP
entity giving access to an instance of this MIB, is properly
configured to give access to those objects only to those principals
(users) that have legitimate rights to access them.
Daniele Standards Track [Page 7]
RFC 2454 UDP MIB for IPv6 December 1998
10. Author's Address
Mike Daniele
Compaq Computer Corporation
110 Spit Brook Rd
Nashua, NH 03062
Phone: +1-603-884-1423
EMail: daniele@zk3.dec.com
Daniele Standards Track [Page 8]
RFC 2454 UDP MIB for IPv6 December 1998
11. Full Copyright Statement
Copyright (C) The Internet Society (1998). 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.
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 DISCLAIMS 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.
Daniele Standards Track [Page 9]