RFC4672

From RFC-Wiki

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.

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.

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.

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.

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.

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.

RADIUS Dynamic Authorization Client MIB Definitions

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: [email protected]
               Nagi Reddy Jonnala
               Cisco Systems, Inc.
               Divyasree Chambers, B Wing,
               O'Shaugnessy Road,
               Bangalore-560027, India.
               Phone: +91 94487 60828
               EMail: [email protected]
               Murtaza Chiba
               Cisco Systems, Inc.
               170 West Tasman Dr.
               San Jose CA, 95134
               Phone: +1 408 525 7198
               EMail: [email protected] "
      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      "hundredths of a second"
      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

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.

IANA Considerations

The IANA has assigned OID number 145 under mib-2.

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.

References

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.

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: [email protected]

Nagi Reddy Jonnala Cisco Systems, Inc. Divyasree Chambers, B Wing, O'Shaugnessy Road Bangalore-560027, India

Phone: +91 94487 60828 EMail: [email protected]

Murtaza Chiba Cisco Systems, Inc. 170 West Tasman Dr. San Jose CA, 95134

Phone: +1 408 525 7198 EMail: [email protected]

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 [email protected].

Acknowledgement

Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA).