This is a purely informative rendering of an RFC that includes verified errata. This rendering may not be used as a reference.

The following 'Verified' errata have been incorporated in this document: EID 26, EID 887, EID 889, EID 890
Network Working Group                                      S. De Cnodder
Request for Comments: 4672                                       Alcatel
Category: Informational                                       N. Jonnala
                                                                M. Chiba
                                                     Cisco Systems, Inc.
                                                          September 2006


                RADIUS Dynamic Authorization Client MIB

Status of This Memo

   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2006).

Abstract

   This memo defines a portion of the Management Information Base (MIB)
   for use with network management protocols in the Internet community.
   In particular, it describes the Remote Authentication Dial-In User
   Service (RADIUS) (RFC2865) Dynamic Authorization Client (DAC)
   functions that support the dynamic authorization extensions as
   defined in RFC 3576.

Table of Contents

   1. Introduction ....................................................2
      1.1. Requirements Notation ......................................2
      1.2. Terminology ................................................2
   2. The Internet-Standard Management Framework ......................3
   3. Overview ........................................................3
   4. RADIUS Dynamic Authorization Client MIB Definitions .............3
   5. Security Considerations ........................................19
   6. IANA Considerations ............................................20
   7. Acknowledgements ...............................................20
   8. References .....................................................21
      8.1. Normative References ......................................21
      8.2. Informative References ....................................21

1.  Introduction

   This memo defines a portion of the Management Information Base (MIB)
   for use with network management protocols in the Internet community.
   In particular, it describes the Remote Authentication Dial-In User
   Service (RADIUS) [RFC2865] Dynamic Authorization Client (DAC)
   functions that support the dynamic authorization extensions as
   defined in RFC 3576.

   It is becoming increasingly important to support Dynamic
   Authorization extensions on the network access server (NAS) devices
   to handle the Disconnect and Change-of-Authorization (CoA) messages,
   as described in [RFC3576].  As a result, the effective management of
   RADIUS Dynamic Authorization entities is of considerable importance.
   This RADIUS Dynamic Authorization Client MIB complements the managed
   objects used for managing RADIUS authentication and accounting
   servers, as described in [RFC4669] and [RFC4671], respectively.

1.1.  Requirements Notation

   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 [RFC2119].

1.2.  Terminology

   Dynamic Authorization Server (DAS)

   The component that resides on the NAS that processes the Disconnect
   and Change-of-Authorization (CoA) Request packets [RFC3576] sent by
   the Dynamic Authorization Client.

   Dynamic Authorization Client (DAC)

   The component that sends Disconnect and CoA-Request packets to the
   Dynamic Authorization Server.  Although this component often resides
   on the RADIUS server, it is also possible for this component to be
   located on a separate host, such as a Rating Engine.

   Dynamic Authorization Server Port

   The UDP port on which the Dynamic Authorization Server listens for
   the Disconnect and CoA requests sent by the Dynamic Authorization
   Client.

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
   [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

   "Dynamic Authorization Extensions to RADIUS" [RFC3576] defines the
   operation of Disconnect-Request, Disconnect-ACK, Disconnect-NAK,
   CoA-Request, CoA-ACK, and CoA-NAK packets.  [RFC4673] defines the
   Dynamic Authorization Server MIB and the relationship with other MIB
   modules.  This MIB module for the Dynamic Authorization Client
   contains the following:

   1.  Two scalar objects

   2.  One Dynamic Authorization Server table.  This table contains one
       row for each DAS with which the DAC shares a secret.

4.  RADIUS Dynamic Authorization Client MIB Definitions

EID 890 (Verified) is as follows:

Section: 99In Section 4

Original Text:

The DESCRIPTION clauses of several OBJECT-TYPE invocations 
contain the same spurious fragment of a sentence:

   [...].  Disconnect-NAK packets received from unknown addresses.

This fragment apparently has been copied inadvertently from the
DESCRIPTION clause for radiusDynAuthClientDisconInvalidServerAddress,
and it should be deleted afterwards, in all instances:

  - radiusDynAuthClientCoAInvalidServerAddresses  (page 5),
  - radiusDynAuthClientDisconRequests  (page 8),
  - radiusDynAuthClientDisconAuthOnlyRequests  (page 8), and
  - radiusDynAuthClientDisconRetransmissions  (page 8).

Corrected Text:

None
Notes:
from pending

--VERIFIER COMMENT--
correct, this sentence has to be removed everywhere.
RADIUS-DYNAUTH-CLIENT-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Counter32, Gauge32, Integer32, mib-2, TimeTicks FROM SNMPv2-SMI -- [RFC2578] SnmpAdminString FROM SNMP-FRAMEWORK-MIB -- [RFC3411] InetAddressType, InetAddress, InetPortNumber FROM INET-ADDRESS-MIB -- [RFC4001] MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF; -- [RFC2580] radiusDynAuthClientMIB MODULE-IDENTITY LAST-UPDATED "200608290000Z" -- 29 August 2006 ORGANIZATION "IETF RADEXT Working Group" CONTACT-INFO " Stefaan De Cnodder Alcatel Francis Wellesplein 1 B-2018 Antwerp Belgium Phone: +32 3 240 85 15 EMail: stefaan.de_cnodder@alcatel.be Nagi Reddy Jonnala Cisco Systems, Inc. Divyasree Chambers, B Wing, O'Shaugnessy Road, Bangalore-560027, India. Phone: +91 94487 60828 EMail: njonnala@cisco.com Murtaza Chiba Cisco Systems, Inc. 170 West Tasman Dr. San Jose CA, 95134 Phone: +1 408 525 7198 EMail: mchiba@cisco.com " DESCRIPTION "The MIB module for entities implementing the client side of the Dynamic Authorization Extensions to the Remote Authentication Dial-In User Service (RADIUS) protocol. Copyright (C) The Internet Society (2006). Initial version as published in RFC 4672; for full legal notices see the RFC itself." REVISION "200609290000Z" -- 29 August 2006 DESCRIPTION "Initial version as published in RFC 4672" ::= { mib-2 145 } radiusDynAuthClientMIBObjects OBJECT IDENTIFIER ::= { radiusDynAuthClientMIB 1 } radiusDynAuthClientScalars OBJECT IDENTIFIER ::= { radiusDynAuthClientMIBObjects 1 } radiusDynAuthClientDisconInvalidServerAddresses OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Disconnect-Ack and Disconnect-NAK packets received from unknown addresses. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." ::= { radiusDynAuthClientScalars 1 } radiusDynAuthClientCoAInvalidServerAddresses OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of CoA-Ack and CoA-NAK packets received from unknown addresses. Disconnect-NAK packets received from unknown addresses. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." ::= { radiusDynAuthClientScalars 2 } radiusDynAuthServerTable OBJECT-TYPE SYNTAX SEQUENCE OF RadiusDynAuthServerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The (conceptual) table listing the RADIUS Dynamic Authorization Servers with which the client shares a secret." ::= { radiusDynAuthClientMIBObjects 2 } radiusDynAuthServerEntry OBJECT-TYPE SYNTAX RadiusDynAuthServerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) representing one Dynamic Authorization Server with which the client shares a secret." INDEX { radiusDynAuthServerIndex } ::= { radiusDynAuthServerTable 1 } RadiusDynAuthServerEntry ::= SEQUENCE { radiusDynAuthServerIndex Integer32, radiusDynAuthServerAddressType InetAddressType, radiusDynAuthServerAddress InetAddress, radiusDynAuthServerClientPortNumber InetPortNumber, radiusDynAuthServerID SnmpAdminString, radiusDynAuthClientRoundTripTime TimeTicks, radiusDynAuthClientDisconRequests Counter32, radiusDynAuthClientDisconAuthOnlyRequests Counter32, radiusDynAuthClientDisconRetransmissions Counter32, radiusDynAuthClientDisconAcks Counter32, radiusDynAuthClientDisconNaks Counter32, radiusDynAuthClientDisconNakAuthOnlyRequest Counter32, radiusDynAuthClientDisconNakSessNoContext Counter32, radiusDynAuthClientMalformedDisconResponses Counter32, radiusDynAuthClientDisconBadAuthenticators Counter32, radiusDynAuthClientDisconPendingRequests Gauge32, radiusDynAuthClientDisconTimeouts Counter32, radiusDynAuthClientDisconPacketsDropped Counter32, radiusDynAuthClientCoARequests Counter32, radiusDynAuthClientCoAAuthOnlyRequest Counter32, radiusDynAuthClientCoARetransmissions Counter32, radiusDynAuthClientCoAAcks Counter32, radiusDynAuthClientCoANaks Counter32, radiusDynAuthClientCoANakAuthOnlyRequest Counter32, radiusDynAuthClientCoANakSessNoContext Counter32, radiusDynAuthClientMalformedCoAResponses Counter32, radiusDynAuthClientCoABadAuthenticators Counter32, radiusDynAuthClientCoAPendingRequests Gauge32, radiusDynAuthClientCoATimeouts Counter32, radiusDynAuthClientCoAPacketsDropped Counter32, radiusDynAuthClientUnknownTypes Counter32, radiusDynAuthClientCounterDiscontinuity TimeTicks } radiusDynAuthServerIndex OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A number uniquely identifying each RADIUS Dynamic Authorization Server with which this Dynamic Authorization Client communicates. This number is allocated by the agent implementing this MIB module and is unique in this context." ::= { radiusDynAuthServerEntry 1 } radiusDynAuthServerAddressType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "The type of IP address of the RADIUS Dynamic Authorization Server referred to in this table entry." ::= { radiusDynAuthServerEntry 2 } radiusDynAuthServerAddress OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The IP address value of the RADIUS Dynamic Authorization Server referred to in this table entry using the version neutral IP address format. The type of this address is determined by the value of the radiusDynAuthServerAddressType object." ::= { radiusDynAuthServerEntry 3 } radiusDynAuthServerClientPortNumber OBJECT-TYPE SYNTAX InetPortNumber (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The UDP destination port that the RADIUS Dynamic Authorization Client is using to send requests to this server. The value zero is invalid." ::= { radiusDynAuthServerEntry 4 } radiusDynAuthServerID OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS read-only STATUS current DESCRIPTION "The NAS-Identifier of the RADIUS Dynamic Authorization Server referred to in this table entry. This is not necessarily the same as sysName in MIB II." REFERENCE "RFC 2865, Section 5.32, NAS-Identifier." ::= { radiusDynAuthServerEntry 5 } radiusDynAuthClientRoundTripTime OBJECT-TYPE SYNTAX TimeTicks UNITS "centiseconds"
EID 889 (Verified) is as follows:

Section: 4

Original Text:

hundredths of a second

Corrected Text:

centiseconds
Notes:
Why not use the common ISO-standard unit-multiple name, "centiseconds" (abbreviation: "cs"), instead of the long-winded "hundredths of a second" ?

This applies to the UNITS and the DESCRIPTION clauses of
- radiusDynAuthClientRoundTripTime (RFC 4672, page 7),
- radiusDynAuthClientCounterDiscontinuity (RFC 4672, page 17),

from pending

--VERIFIER COMMENT--
well, yes, centiseconds can be used as well but both terms are the same.
MAX-ACCESS read-only STATUS current DESCRIPTION "The time interval (in hundredths of a second) between the most recent Disconnect or CoA request and the receipt of the corresponding Disconnect or CoA reply. A value of zero is returned if no reply has been received yet from this server." ::= { radiusDynAuthServerEntry 6 } radiusDynAuthClientDisconRequests OBJECT-TYPE SYNTAX Counter32 UNITS "requests" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS Disconnect-Requests sent to this Dynamic Authorization Server. This also includes the RADIUS Disconnect-Requests that have a Service-Type attribute with value 'Authorize Only'. Disconnect-NAK packets received from unknown addresses. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.1, Disconnect Messages (DM)." ::= { radiusDynAuthServerEntry 7 } radiusDynAuthClientDisconAuthOnlyRequests OBJECT-TYPE SYNTAX Counter32 UNITS "requests" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS Disconnect-Requests that include a Service-Type attribute with value 'Authorize Only' sent to this Dynamic Authorization Server. Disconnect-NAK packets received from unknown addresses. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.1, Disconnect Messages (DM)." ::= { radiusDynAuthServerEntry 8 } radiusDynAuthClientDisconRetransmissions OBJECT-TYPE SYNTAX Counter32 UNITS "retransmissions" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS Disconnect-request packets retransmitted to this RADIUS Dynamic Authorization Server. Disconnect-NAK packets received from unknown addresses. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.1, Disconnect Messages (DM)." ::= { radiusDynAuthServerEntry 9 } radiusDynAuthClientDisconAcks OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS Disconnect-ACK packets received from this Dynamic Authorization Server. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.1, Disconnect Messages (DM)." ::= { radiusDynAuthServerEntry 10 } radiusDynAuthClientDisconNaks OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS Disconnect-NAK packets received from this Dynamic Authorization Server. This includes the RADIUS Disconnect-NAK packets received with a Service-Type attribute with value 'Authorize Only' and the RADIUS Disconnect-NAK packets received if no session context was found. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.1, Disconnect Messages (DM)." ::= { radiusDynAuthServerEntry 11 } radiusDynAuthClientDisconNakAuthOnlyRequest OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS Disconnect-NAK packets that include a Service-Type attribute with value 'Authorize Only' received from this Dynamic Authorization Server. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.1, Disconnect Messages (DM)." ::= { radiusDynAuthServerEntry 12 } radiusDynAuthClientDisconNakSessNoContext OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS Disconnect-NAK packets received from this Dynamic Authorization Server because no session context was found; i.e., it includes an Error-Cause attribute with value 503 ('Session Context Not Found'). This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.1, Disconnect Messages (DM)." ::= { radiusDynAuthServerEntry 13 } radiusDynAuthClientMalformedDisconResponses OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of malformed RADIUS Disconnect-Ack and Disconnect-NAK packets received from this Dynamic Authorization Server. Bad authenticators and unknown types are not included as malformed Disconnect-Ack and Disconnect-NAK packets. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.1, Disconnect Messages (DM), and Section 2.3, Packet Format." ::= { radiusDynAuthServerEntry 14 } radiusDynAuthClientDisconBadAuthenticators OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS Disconnect-Ack and Disconnect-NAK packets that contained invalid Authenticator field received from this Dynamic Authorization Server. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.1, Disconnect Messages (DM), and Section 2.3, Packet Format." ::= { radiusDynAuthServerEntry 15 } radiusDynAuthClientDisconPendingRequests OBJECT-TYPE SYNTAX Gauge32 UNITS "requests" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS Disconnect-request packets destined for this server that have not yet timed out or received a response. This variable is incremented when an Disconnect-Request is sent and decremented due to receipt of a Disconnect-Ack, a Disconnect-NAK, a timeout, or a retransmission." REFERENCE "RFC 3576, Section 2.1, Disconnect Messages (DM)." ::= { radiusDynAuthServerEntry 16 } radiusDynAuthClientDisconTimeouts OBJECT-TYPE SYNTAX Counter32 UNITS "timeouts" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Disconnect request timeouts to this server. After a timeout, the client may retry to the same server or give up. A retry to the same server is counted as a retransmit and as a timeout. A send to a different server is counted as a Disconnect-Request and as a timeout. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.1, Disconnect Messages (DM)." ::= { radiusDynAuthServerEntry 17 } radiusDynAuthClientDisconPacketsDropped OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of incoming Disconnect-Ack and Disconnect-NAK packets from this Dynamic Authorization Server silently discarded by the client application for some reason other than malformed, bad authenticators, or unknown types. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.1, Disconnect Messages (DM), and Section 2.3, Packet Format." ::= { radiusDynAuthServerEntry 18 } radiusDynAuthClientCoARequests OBJECT-TYPE SYNTAX Counter32 UNITS "requests" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS CoA-Requests sent to this Dynamic Authorization Server. This also includes CoA requests that have a Service-Type attribute with value 'Authorize Only'. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.2, Change-of-Authorization Messages (CoA)." ::= { radiusDynAuthServerEntry 19 } radiusDynAuthClientCoAAuthOnlyRequest OBJECT-TYPE SYNTAX Counter32 UNITS "requests" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS CoA-requests that include a Service-Type attribute with value 'Authorize Only' sent to this Dynamic Authorization Client. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.2, Change-of-Authorization Messages (CoA)." ::= { radiusDynAuthServerEntry 20 } radiusDynAuthClientCoARetransmissions OBJECT-TYPE SYNTAX Counter32 UNITS "retransmissions" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS CoA-request packets retransmitted to this RADIUS Dynamic Authorization Server. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.2, Change-of-Authorization Messages (CoA)." ::= { radiusDynAuthServerEntry 21 } radiusDynAuthClientCoAAcks OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS CoA-ACK packets received from this Dynamic Authorization Server. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.2, Change-of-Authorization Messages (CoA)." ::= { radiusDynAuthServerEntry 22 } radiusDynAuthClientCoANaks OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS CoA-NAK packets received from this Dynamic Authorization Server. This includes the RADIUS CoA-NAK packets received with a Service-Type attribute with value 'Authorize Only' and the RADIUS CoA-NAK packets received because no session context was found. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.2, Change-of-Authorization Messages (CoA)." ::= { radiusDynAuthServerEntry 23 } radiusDynAuthClientCoANakAuthOnlyRequest OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS CoA-NAK packets that include a Service-Type attribute with value 'Authorize Only' received from this Dynamic Authorization Server. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.2, Change-of-Authorization Messages (CoA)." ::= { radiusDynAuthServerEntry 24 } radiusDynAuthClientCoANakSessNoContext OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS CoA-NAK packets received from this Dynamic Authorization Server because no session context was found; i.e., it includes an Error-Cause attribute with value 503 ('Session Context Not Found'). This counter may experience a discontinuity when the DAC module (re)starts as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.2, Change-of-Authorization Messages (CoA)." ::= { radiusDynAuthServerEntry 25 } radiusDynAuthClientMalformedCoAResponses OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of malformed RADIUS CoA-Ack and CoA-NAK packets received from this Dynamic Authorization Server. Bad authenticators and unknown types are not included as malformed CoA-Ack and CoA-NAK packets. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.2, Change-of-Authorization Messages (CoA), and Section 2.3, Packet Format." ::= { radiusDynAuthServerEntry 26 } radiusDynAuthClientCoABadAuthenticators OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS CoA-Ack and CoA-NAK packets that contained invalid Authenticator field received from this Dynamic Authorization Server. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.2, Change-of-Authorization Messages (CoA), and Section 2.3, Packet Format." ::= { radiusDynAuthServerEntry 27 } radiusDynAuthClientCoAPendingRequests OBJECT-TYPE SYNTAX Gauge32 UNITS "requests" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of RADIUS CoA-request packets destined for this server that have not yet timed out or received a response. This variable is incremented when an CoA-Request is sent and decremented due to receipt of a CoA-Ack, a CoA-NAK, or a timeout, or a retransmission." REFERENCE "RFC 3576, Section 2.2, Change-of-Authorization Messages (CoA)." ::= { radiusDynAuthServerEntry 28 } radiusDynAuthClientCoATimeouts OBJECT-TYPE SYNTAX Counter32 UNITS "timeouts" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of CoA request timeouts to this server. After a timeout, the client may retry to the same server or give up. A retry to the same server is counted as a retransmit and as a timeout. A send to a different server is counted as a CoA-Request and as a timeout. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.2, Change-of-Authorization Messages (CoA)." ::= { radiusDynAuthServerEntry 29 } radiusDynAuthClientCoAPacketsDropped OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of incoming CoA-Ack and CoA-NAK from this Dynamic Authorization Server silently discarded by the client application for some reason other than malformed, bad authenticators, or unknown types. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.2, Change-of-Authorization Messages (CoA), and Section 2.3, Packet Format." ::= { radiusDynAuthServerEntry 30 } radiusDynAuthClientUnknownTypes OBJECT-TYPE SYNTAX Counter32 UNITS "replies" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of incoming packets of unknown types that were received on the Dynamic Authorization port. This counter may experience a discontinuity when the DAC module (re)starts, as indicated by the value of radiusDynAuthClientCounterDiscontinuity." REFERENCE "RFC 3576, Section 2.3, Packet Format." ::= { radiusDynAuthServerEntry 31 } radiusDynAuthClientCounterDiscontinuity OBJECT-TYPE SYNTAX TimeTicks UNITS "hundredths of a second" MAX-ACCESS read-only STATUS current DESCRIPTION "The time (in hundredths of a second) since the last counter discontinuity. A discontinuity may be the result of a reinitialization of the DAC module within the managed entity." ::= { radiusDynAuthServerEntry 32 } -- conformance information radiusDynAuthClientMIBConformance OBJECT IDENTIFIER ::= { radiusDynAuthClientMIB 2 } radiusDynAuthClientMIBCompliances OBJECT IDENTIFIER ::= { radiusDynAuthClientMIBConformance 1 } radiusDynAuthClientMIBGroups OBJECT IDENTIFIER ::= { radiusDynAuthClientMIBConformance 2 } -- compliance statements radiusDynAuthClientMIBCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for entities implementing the RADIUS Dynamic Authorization Client. Implementation of this module is for entities that support IPv4 and/or IPv6." MODULE -- this module MANDATORY-GROUPS { radiusDynAuthClientMIBGroup } OBJECT radiusDynAuthServerAddressType SYNTAX InetAddressType { ipv4(1), ipv6(2) } DESCRIPTION "An implementation is only required to support IPv4 and globally unique IPv6 addresses." OBJECT radiusDynAuthServerAddress SYNTAX InetAddress (SIZE(4|16)) DESCRIPTION "An implementation is only required to support IPv4 and globally unique IPv6 addresses." GROUP radiusDynAuthClientAuthOnlyGroup DESCRIPTION "Only required for Dynamic Authorization Clients that are supporting Service-Type attributes with value 'Authorize-Only'." GROUP radiusDynAuthClientNoSessGroup DESCRIPTION "This group is not required if the Dynamic Authorization Server cannot easily determine whether a session exists (e.g., in case of a RADIUS proxy)." ::= { radiusDynAuthClientMIBCompliances 1 } -- units of conformance radiusDynAuthClientMIBGroup OBJECT-GROUP OBJECTS { radiusDynAuthClientDisconInvalidServerAddresses, radiusDynAuthClientCoAInvalidServerAddresses, radiusDynAuthServerAddressType, radiusDynAuthServerAddress, radiusDynAuthServerClientPortNumber, radiusDynAuthServerID, radiusDynAuthClientRoundTripTime, radiusDynAuthClientDisconRequests, radiusDynAuthClientDisconRetransmissions, radiusDynAuthClientDisconAcks, radiusDynAuthClientDisconNaks, radiusDynAuthClientMalformedDisconResponses, radiusDynAuthClientDisconBadAuthenticators, radiusDynAuthClientDisconPendingRequests, radiusDynAuthClientDisconTimeouts, radiusDynAuthClientDisconPacketsDropped, radiusDynAuthClientCoARequests, radiusDynAuthClientCoARetransmissions, radiusDynAuthClientCoAAcks, radiusDynAuthClientCoANaks, radiusDynAuthClientMalformedCoAResponses, radiusDynAuthClientCoABadAuthenticators, radiusDynAuthClientCoAPendingRequests, radiusDynAuthClientCoATimeouts, radiusDynAuthClientCoAPacketsDropped, radiusDynAuthClientUnknownTypes, radiusDynAuthClientCounterDiscontinuity } STATUS current DESCRIPTION "The collection of objects providing management of a RADIUS Dynamic Authorization Client." ::= { radiusDynAuthClientMIBGroups 1 } radiusDynAuthClientAuthOnlyGroup OBJECT-GROUP OBJECTS { radiusDynAuthClientDisconAuthOnlyRequests, radiusDynAuthClientDisconNakAuthOnlyRequest, radiusDynAuthClientCoAAuthOnlyRequest, radiusDynAuthClientCoANakAuthOnlyRequest } STATUS current DESCRIPTION "The collection of objects supporting the RADIUS messages including Service-Type attribute with value 'Authorize Only'." ::= { radiusDynAuthClientMIBGroups 2 } radiusDynAuthClientNoSessGroup OBJECT-GROUP OBJECTS { radiusDynAuthClientDisconNakSessNoContext, radiusDynAuthClientCoANakSessNoContext } STATUS current DESCRIPTION "The collection of objects supporting the RADIUS messages that are referring to non-existing sessions." ::= { radiusDynAuthClientMIBGroups 3 } END 5. Security Considerations There are no management objects defined in this MIB module that have a MAX-ACCESS clause of read-write and/or read-create. So, if this MIB module is implemented correctly, then there is no risk that an intruder can alter or create any management objects of this MIB module via direct SNMP SET operations. 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: radiusDynAuthServerAddress and radiusDynAuthServerAddressType These can be used to determine the address of the DAS with which the DAC is communicating. This information could be useful in mounting an attack on the DAS. radiusDynAuthServerID This can be used to determine the Identifier of the DAS. This information could be useful in impersonating the DAS. radiusDynAuthServerClientPortNumber This can be used to determine the destination port number to which the DAC is sending. This information could be useful in mounting an attack on the DAS. 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. 6. IANA Considerations The IANA has assigned OID number 145 under mib-2. 7. Acknowledgements The authors would also like to acknowledge the following people for their comments on this document: Bernard Aboba, Alan DeKok, David Nelson, Anjaneyulu Pata, Dan Romascanu, Juergen Schoenwaelder, Greg Weber, Bert Wijnen, and Glen Zorn. 8. References 8.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2578] McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999. [RFC2579] McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. [RFC2580] McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999. [RFC3411] Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture for Describing Simple Network Management Protocol (SNMP) Management Frameworks", STD 62, RFC 3411, December 2002. [RFC3576] Chiba, M., Dommety, G., Eklund, M., Mitton, D., and B. Aboba, "Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)", RFC 3576, July 2003. [RFC4001] Daniele, M., Haberman, B., Routhier, S., and J. Schoenwaelder, "Textual Conventions for Internet Network Addresses", RFC 4001, February 2005. 8.2. Informative References [RFC2865] Rigney, C., Willens, S., Rubens, A., and W. Simpson, "Remote Authentication Dial In User Service (RADIUS)", RFC 2865, June 2000. [RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart, "Introduction and Applicability Statements for Internet- Standard Management Framework", RFC 3410, December 2002. [RFC4669] Nelson, D., "RADIUS Authentication Server MIB for IPv6", RFC 4669, August 2006. [RFC4671] Nelson, D., "RADIUS Accounting Server MIB for IPv6", RFC 4671, August 2006. [RFC4673] De Cnodder, S., Jonnala, N., and M. Chiba, "RADIUS Dynamic Authorization Server MIB", RFC 4673, September 2006. Authors' Addresses Stefaan De Cnodder Alcatel Francis Wellesplein 1 B-2018 Antwerp Belgium Phone: +32 3 240 85 15 EMail: stefaan.de_cnodder@alcatel.be Nagi Reddy Jonnala Cisco Systems, Inc. Divyasree Chambers, B Wing, O'Shaugnessy Road Bangalore-560027, India Phone: +91 94487 60828 EMail: njonnala@cisco.com Murtaza Chiba Cisco Systems, Inc. 170 West Tasman Dr. San Jose CA, 95134 Phone: +1 408 525 7198 EMail: mchiba@cisco.com Full Copyright Statement Copyright (C) The Internet Society (2006). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), 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. Intellectual Property The IETF takes no position regarding the validity or scope of any Intellectual Property Rights 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; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat 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 implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Acknowledgement Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA).
EID 26 (Verified) is as follows:

Section: 99

Original Text:

(for RFC 4672 and 4673)

As specified in RFC 3410 and Part 1 of STD 62, RFC 3411, and
re-stated in the boilerplate Section 3, "The Internet-Standard
Management Framework", there's just one single
Management Information Base (MIB) comprised of various "MIB modules".
Thus, throughout the titles and the text bodies of the RFCs, the
proper term, "RADIUS ... MIB module" should be used consistently,
instead of the rather sluggish "RADIUS ... MIB".

Corrected Text:

None
Notes:
from pending
EID 887 (Verified) is as follows:

Section: 99

Original Text:

severe MIB module structural problem
-- issue instantiated similarly in both RFC 4672 and 4673

Let's start with RFC 4672 and the RADIUS-DYNAUTH-CLIENT-MIB module.

On page 5 of RFC 4672, two module-global scalar objects are specified;
the DESCRIPTION clause of the
radiusDynAuthClientDisconInvalidServerAddresses OBJECT-TYPE says:

                                           [...].  This counter may
                 experience a discontinuity when the DAC module
                 (re)starts, as indicated by the value of
                 radiusDynAuthClientCounterDiscontinuity."

and the literally same sentence appears again in the DESCRIPTION
clause of the radiusDynAuthClientCoAInvalidServerAddresses OBJECT-TYPE.

This would make sense iff radiusDynAuthClientCounterDiscontinuity
would have been defined as another module-global scalar MIB object.
But unfortunately, radiusDynAuthClientCounterDiscontinuity is a
tabular row object in the radiusDynAuthServerTable, with separate
instances for every radiusDynAuthServerIndex instantiated there.
So, which object instance should be taken for reference ???
Moreover, should ever the radiusDynAuthServerTable be empty,
no such CounterDiscontinuity objects would be instantiated,
invalidating the semantical integrity of the MIB module.

Thus, let's take a closer look at the DESCRIPTION clause of the
radiusDynAuthClientCounterDiscontinuity OBJECT-TYPE, on page 17
of the RFC:

          DESCRIPTION
                "The time (in hundredths of a second) since the
                 last counter discontinuity.  A discontinuity may
                 be the result of a reinitialization of the DAC
                 module within the managed entity."

It remains unclear which scope was intended, i.e. whether "the last
counter discontinuity" was meant to just cover the counters within
the same conceptual row of the table, of it was meant to cover all
the counter objects in the MIB module.
If the former interpretation is to be accepted, the references
to this object from the scalar objects' DESCRIPTIONS quoted above
would be severely ambiguous.
In case of the latter interpretation, the semantics of this object
indeed do not depend in any way on the conceptual row, i.e. the
related radiusDynAuthServerIndex instance; but if an object of
the same semantics appears in every table row instantiated, all
of its instances must have the same value at any point in time.
Hence, the object with that semantics should have been modeled
as a module-global scalar object, and not as a tabular object !!!

IMHO, such a single, module-global scalar object would perhaps be
sufficient for the desired purpose.

In a similar way, the module-global scalar counters in the
RADIUS-DYNAUTH-SERVER-MIB module,
radiusDynAuthServerDisconInvalidClientAddresses and
adiusDynAuthServerCoAInvalidClientAddresses,
as specified on page 6 of RFC 4673, refer to the object,
radiusDynAuthServerCounterDiscontinuity,
which turns out to be a tabular row object in the
radiusDynAuthClientTable, not another scalar object,
thus leading to the same kind of ambiguity.

Taken altogether, the specifications are ambigous and will certainly
lead to interoperability problems.

I strongly propose to revise these MIB module specifications as
soon as possible.

Corrected Text:

None
Notes:
from pending


--VERIFIER COMMENT--
seems to be correct. The scalars do not have a discontinuity object.
That sentence should be removed or either an object has to be added. It
seems that the other mibs like RFC4668 also does not have such an object
for the scalars while it has a discontinuity timer for the objects in
the table... It should be for all or for none I would think.