draft-ietf-dhc-server-mib-03.txt   draft-ietf-dhc-server-mib-04.txt 
Network Working Group R. B. Hibbs Network Working Group R. B. Hibbs
INTERNET-DRAFT Pacific Bell INTERNET-DRAFT Pacific Bell
G. Waters Category: Standards Track G. Waters
Nortel Networks Nortel Networks
February 1999 October 1999
Dynamic Host Configuration Protocol (DHCP) Server MIB Dynamic Host Configuration Protocol (DHCP) Server MIB
<draft-ietf-dhc-server-mib-03.txt> <draft-ietf-dhc-server-mib-04.txt>
Friday, February 19, 1999, 3:39 PM Saved Thursday, October 21, 1999, 3:19 PM
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with all This document is an Internet-Draft and is in full conformance with
provisions of Section 10 of RFC2026. all provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Task Internet-Drafts are working documents of the Internet Engineering
Force (IETF), its areas, and its working groups. Note that other Task Force (IETF), its areas, and its working groups. Note that
groups may also distribute working documents as Internet-Drafts. other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six
and may be updated, replaced, or obsoleted by other documents at any months and may be updated, replaced, or obsoleted by other documents
time. It is inappropriate to use Internet-Drafts as reference at any time. It is inappropriate to use Internet-Drafts as
material or to cite them other than as "work in progress." reference material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
To learn the current status of any Internet-Draft, please check the To learn the current status of any Internet-Draft, please check the
"1id-abstracts.txt" listing contained in the Internet-Drafts Shadow "1id-abstracts.txt" listing contained in the Internet-Drafts Shadow
Directories on ds.internic.net (US East Coast), nic.nordu.net Directories on ds.internic.net (US East Coast), nic.nordu.net
(Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific Rim). (Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific
Rim).
Copyright Notice Copyright Notice
Copyright (C) The Internet Society (1999). All Rights Reserved. Copyright (C) The Internet Society (1999). All Rights Reserved.
Abstract Abstract
This memo defines an experimental portion of the Management This memo defines an experimental portion of the Management
Information Base (MIB) for use with network management protocols in Information Base (MIB) for use with network management protocols in
the Internet Community. In particular, it defines objects used for the Internet Community. In particular, it defines objects used for
the management of Dynamic Host Configuration Protocol (DHCP) and the management of Dynamic Host Configuration Protocol (DHCP) and
Bootstrap Protocol (BOOTP) servers. Bootstrap Protocol (BOOTP) servers.
This version (the "-05" draft) closes several issues raised during
peer review discussions on the DHC mailing list, incorporates
several new elements, and makes a number of small revisions based on
comments from reviewers. See Section 5.2 for a better description
of the changes.
Table of Contents Table of Contents
1. Introduction......................................................2 1. Introduction......................................................2
2. Overview..........................................................2 2. Overview..........................................................2
2.1. BOOTP and DHCP Counter Groups................................3 2.1. BOOTP and DHCP Counter Groups..................................3
2.2. BOOTP and DHCP Statistics Group..............................3 2.2. BOOTP and DHCP Statistics Group................................3
2.3. Server Configuration Group...................................4 2.3. Server Configuration Group.....................................4
2.4. Response Times and ICMP Echo.................................5 2.4. Response Times and ICMP Echo...................................5
3. Definitions.......................................................5 3. Definitions.......................................................5
4. Intellectual Property............................................25 4. Intellectual Property............................................33
5. Notes............................................................26 5. Notes............................................................33
5.1. Issues......................................................26 5.1. Issues........................................................33
5.2. Changes from Prior Drafts...................................26 5.2. Changes from Prior Drafts.....................................34
6. Acknowledgements.................................................27 6. Acknowledgements.................................................34
7. Security Considerations..........................................27 7. Security Considerations..........................................35
8. References.......................................................28 8. References.......................................................35
9. Editors' Addresses...............................................28 9. Editors' Addresses...............................................36
10. Full Copyright Statement........................................29 10. Full Copyright Statement........................................36
1. Introduction 1. Introduction
This memo was produced by the DHCP Working Group and defines a portion This memo was produced by the DHCP Working Group and defines a
of the Management Information Base (MIB) for use with network portion of the Management Information Base (MIB) for use with
management protocols in the Internet community. In particular, it network management protocols in the Internet community. In
describes a set of extensions that DHCP and Bootstrap Protocol (BOOTP) particular, it describes a set of extensions that DHCP and Bootstrap
servers implement. Many implementations support both DHCP and BOOTP Protocol (BOOTP) servers implement. Many implementations support
within a single server and hence this memo describes the MIB for both both DHCP and BOOTP within a single server and hence this memo
DHCP and BOOTP servers. describes the MIB for both DHCP and BOOTP servers.
This memo is applicable only to IPv4 addresses.
This memo does not cover DHCP/BOOTP client nor relay agent extensions: This memo does not cover DHCP/BOOTP client nor relay agent MIB
these are possibly the subjects of future investigation. extensions: these are possibly the subjects of future investigation.
This memo is based on the Internet-standard Network Management This memo is based on the Internet-standard Network Management
Framework as defined by [RFC1902, RFC1903, RFC1904]. Framework as defined by documents [RFC1902, RFC1903, RFC1904].
Objects defined in this MIB allow access to and control of DHCP Server Objects defined in this MIB allow access to and control of DHCP
Software. Servers MAY also provide additional management capabilities Server Software. Servers MAY also provide additional management
through the use of the Applications MIB [RFC2287]. capabilities through the use of the Applications MIB [RFC2287].
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in
document are to be interpreted as described in [RFC2119]. this document are to be interpreted as described in document
[RFC2119].
2. Overview 2. Overview
In the tradition of the Simple Network Management Protocol (SNMP) the In the tradition of the Simple Network Management Protocol (SNMP)
minimum number of objects possible are defined in this MIB, while the minimum number of objects possible are defined in this MIB,
still providing as rich a set of management information as possible. while still providing as rich a set of management information as
An object is left out of this MIB when it can be derived from other possible. An object is left out of this MIB when it can be derived
objects that are provided. Further to the tradition of the SNMP, from other objects that are provided. Further to the tradition of
computationally intense operations are left to the domain of the the SNMP, computationally intense operations are left to the domain
management station. Thus, this MIB provides a set of objects from of the management station. Thus, this MIB provides a set of objects
which other management information may be derived. from which other management information may be derived.
The examples provided in the following sections are not meant to be The examples provided in the following sections are not meant to be
comprehensive, they are merely illustrative of the potential uses of comprehensive, they are merely illustrative of the potential uses of
the objects defined by this MIB. the objects defined by this MIB.
2.1. BOOTP and DHCP Counter Groups 2.1. BOOTP and DHCP Counter Groups
This section describes some of the management information that may be This section describes some of the management information that may
derived from the objects provided in the counter groups. be derived from the objects provided in the counter groups.
The total number of valid DHCP packets received by the server is The total number of valid DHCP packets received by the server is
computed as the sum of the dhcpCountDiscovers, dhcpCountRequests, computed as the sum of the dhcpCountDiscovers, dhcpCountRequests,
dhcpCountReleases, dhcpCountDeclines, and dhcpCountInforms objects. dhcpCountReleases, dhcpCountDeclines, and dhcpCountInforms objects.
The total number of valid packets (BOOTP and DHCP) received is The total number of valid packets (BOOTP and DHCP) received is
computed as the total number of valid DHCP packets plus the value of computed as the total number of valid DHCP packets plus the value of
the bootpCountRequests object. The total number of packets received the bootpCountRequests object. The total number of packets received
is computed as the total number of valid packets plus is computed as the total number of valid packets plus
bootpCountInvalids and dhcpCountInvalids. bootpCountInvalids and dhcpCountInvalids.
Similar to the received computations, the total number of DHCP packets Similar to the received computations, the total number of DHCP
sent by the server is computed as the sum of the dhcpCountOffers, packets sent by the server is computed as the sum of the
dhcpCountAcks, and dhcpCountNacks objects. The number of packets dhcpCountOffers, dhcpCountAcks, and dhcpCountNacks objects. The
(BOOTP and DHCP) sent by the server is computed as the total number of number of packets (BOOTP and DHCP) sent by the server is computed as
DHCP packets sent plus the value of the bootpCountReplies object. the total number of DHCP packets sent plus the value of the
bootpCountReplies object.
2.2. BOOTP and DHCP Statistics Group 2.2. BOOTP and DHCP Statistics Group
This section describes some of the management information that may be This section describes some of the management information that may
derived from the objects provided in the statistics group. be derived from the objects provided in the statistics group.
Given time 1 (t1) and time 2 (t2) greater than t1, the mean inter- Given time 1 (t1) and time 2 (t2) greater than t1, the mean inter-
arrival time of valid DHCP messages for the interval t1 to t2 can be arrival time of valid DHCP messages for the interval t1 to t2 can be
computed as (dhcpStatLastArrivalTime at t2 minus computed as (dhcpStatLastArrivalTime at t2 minus
dhcpStatLastArrivalTime at t1) divided by (valid DHCP received packet dhcpStatLastArrivalTime at t1) divided by (valid DHCP received
count at t2 minus valid DHCP received packet count at t1). packet count at t2 minus valid DHCP received packet count at t1).
Under the simplifying assumption that the capture of packet counts and Under the simplifying assumption that the capture of packet counts
times is discontinuous (that is, for the measurement interval the and times is discontinuous (that is, for the measurement interval
captured data represents the complete set for the server) the variance the captured data represents the complete set for the server) the
of the mean may be computed as (dhcpStatSumSquaresArrivalTime at t2 variance of the mean may be computed as
less dhcpStatSumSquaresArrivalTime at t1) divided by (valid DHCP (dhcpStatSumSquaresArrivalTime at t2 less
received packet count at t2 less valid DHCP received packet count at dhcpStatSumSquaresArrivalTime at t1) divided by (valid DHCP received
t1). Standard deviation of the mean is the square root of the packet count at t2 less valid DHCP received packet count at t1).
variance. Standard deviation of the mean is the square root of the variance.
Calculation of statistics for message response time is entirely Calculation of statistics for message response time is entirely
similar to the calculations for inter-arrival time, except that the similar to the calculations for inter-arrival time, except that the
response time objects are used for the calculations. response time objects are used for the calculations.
Calculation of statistics for BOOTP is similar to the calculations for Calculation of statistics for BOOTP is similar to the calculations
DHCP, except that the similar objects from the bootStatistics group for DHCP, except that the similar objects from the bootStatistics
are used instead of the objects from dhcpStatistics group. group are used instead of the objects from dhcpStatistics group.
2.3. Server Configuration Group 2.3. Server Configuration Group
The server configuration group contains objects that describe the The server configuration group contains objects that describe the
configuration information that is contained in the server. Some of configuration information that is contained in the server. Some of
the configuration information is static (e.g.: a statically configured the configuration information is static (e.g.: a statically
IP address) and some of the configuration is dynamic (e.g.: an configured IP address) and some of the configuration is dynamic
assigned DHCP lease). The intent of the server configuration group is (e.g.: an assigned DHCP lease). The intent of the server
to be able to read the server's configuration. Mechanisms outside of configuration group is to be able to read the server's
the SNMP are currently in use (e.g.: vendor defined solutions) and are configuration. Mechanisms outside of the SNMP are currently in use
being standardized (e.g.: the Directory Enabled Networks [DEN] (e.g.: vendor defined solutions) and are being standardized (e.g.:
initiative) to update a server's configuration. the Directory Enabled Networks [DEN] initiative) to update a
server's configuration.
The configuration information provides a minimal set of information The configuration information provides a minimal set of information
that most servers should be able to provide. Each row of the that most servers should be able to provide. Each row of the
serverSubnetTable lists the subnet, the subnet mask, and the subnet serverSubnetTable lists the subnet, the subnet mask, and the subnet
that is equivalent to this subnet. Equivalence is defined as more that is equivalent to this subnet. Equivalence is defined as more
than one subnet being present on the same physical media as some other than one subnet being present on the same physical media as some
subnet. other subnet.
The serverRangeTable lists the start and end IP addresses of the The serverRangeTable lists the start and end IP addresses of the
ranges and the subnet which the range is a member of. The ranges and the subnet which the range is a member of. The
serverRangeInUse object indicates the amount of the range that is serverRangeInUse object indicates the amount of the range that is
currently in use, either through dynamic allocation or being reserved. currently in use, either through dynamic allocation or being
The range size can be computed by taking the difference of the reserved. The range size can be computed by taking the difference
serverRangeStart and serverRangeEnd objects. of the serverRangeStart and serverRangeEnd objects.
The serverAddressTable provides information about the static and The serverAddressTable provides information about the static and
dynamic addresses that the server contains in its configuration. dynamic addresses that the server contains in its configuration.
Addresses may be: Addresses may be:
o Static, in which case they are predefined though the server's o Static, in which case they are predefined though the server's
configuration. Static addresses may or may not have been configuration. Static addresses may or may not have been
previously served by the server; previously served by the server;
o Dynamic, in which case the server has served the addresses at least o Dynamic, in which case the server has served the addresses at
once. Leases which have expired MAY appear in the address list; least once. Leases which have expired MAY appear in the address
list;
o Configuration-reserved, in which case the address is not available o Configuration-reserved, in which case the address is not
for the server to allocate to a client. A configuration-reserved available for the server to allocate to a client. A
address is one that has been reserved by the administrator. An configuration-reserved address is one that has been reserved by
example of a configuration-reserved address is an address that is the administrator. An example of a configuration-reserved address
assigned to a client, not through DHCP (e.g.: statically assigned), is an address that is assigned to a client, not through DHCP
and the address is within a DHCP range; and, (e.g.: statically assigned), and the address is within a DHCP
o Server-reserved, in which case the server has taken the address out range; and,
of use. Examples of server-reserved addresses are those which have
been declined (i.e.: through a DHCPDECLINE) by a client or those o Server-reserved, in which case the server has taken the address
which have responded to an ICMP echo before they were assigned. out of use. Examples of server-reserved addresses are those
which have been declined (i.e.: through a DHCPDECLINE) by a
client or those which have responded to an ICMP echo before they
were assigned.
The protocol used to allocate the address may be determined from the The protocol used to allocate the address may be determined from the
serverAddressServedProtocol object. This object indicates whether the serverAddressServedProtocol object. This object indicates whether
address has never been served (value of none(1)), or, whether BOOTP or the address has never been served (value of none(1)), or, whether
DHCP was used to allocate the address. BOOTP or DHCP was used to allocate the address.
2.4. Response Times and ICMP Echo 2.4. Response Times and ICMP Echo
According to [RFC2131], servers SHOULD try to determine if an address According to [RFC2131], servers SHOULD try to determine if an
is in use before assigning it. Some servers choose not to perform address is in use before assigning it. Some servers choose not to
this check, letting the client determine for itself if the address is perform this check, letting the client determine for itself if the
in use. Other servers perform an ICMP echo (Ping) just prior to address is in use. Other servers perform an ICMP echo (Ping) just
assigning an address. Servers that perform a Ping before responding prior to assigning an address. Servers that perform a Ping before
to a DHCPDISCOVER should not include in the response time the time responding to a DHCPDISCOVER should not include in the response time
from when the Ping was transmitted until the time that either a the time from when the Ping was transmitted until the time that
response was received or that the server timed out waiting for a either a response was received or that the server timed out waiting
response. for a response.
3. Definitions 3. Definitions
-- definitions for a DHCP (Dynamic Host Configuration Protocol)
server
DHCP-SERVER-MIB DEFINITIONS ::= BEGIN DHCP-SERVER-MIB DEFINITIONS ::= BEGIN
IMPORTS IMPORTS
Counter64, Counter32, Gauge32, Unsigned32, mib-2, Counter64, Counter32, Gauge32, Unsigned32, mib-2,
MODULE-IDENTITY, OBJECT-TYPE, OBJECT-IDENTITY, IpAddress MODULE-IDENTITY, OBJECT-TYPE, OBJECT-IDENTITY, IpAddress
FROM SNMPv2-SMI FROM SNMPv2-SMI
TEXTUAL-CONVENTION, RowStatus, DisplayString, TruthValue, TEXTUAL-CONVENTION, RowStatus, DisplayString, TruthValue,
DateAndTime DateAndTime
FROM SNMPv2-TC FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP MODULE-COMPLIANCE, OBJECT-GROUP, -- /*modified*/
NOTIFICATION-GROUP -- /*new*/
FROM SNMPv2-CONF; FROM SNMPv2-CONF;
dhcp OBJECT-IDENTITY dhcp OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The dhcp branch in the standard network management framework." "The dhcp branch in the standard network management
::= { mib-2 ?? } -- IANA will make official assignment framework."
::= { mib-2 99 } -- IANA will make official assignment
dhcpServerMib MODULE-IDENTITY dhcpServerMIB MODULE-IDENTITY -- /*renamed*/
LAST-UPDATED "9902190000Z" LAST-UPDATED "9910060000Z"
ORGANIZATION "IETF DHCP Working Group" ORGANIZATION "IETF DHCP Working Group"
CONTACT-INFO CONTACT-INFO
" Richard Barr Hibbs " Richard Barr Hibbs
Postal: Pacific Bell Postal: Pacific Bell
666 Folsom Street, Room 1225 666 Folsom Street, Room 1225
San Francisco, CA 94107-1384 San Francisco, CA 94107-1384
USA USA
Tel: +1 415-545-1576 Tel: +1 415-545-1576
Fax: +1 415-543-3539 Fax: +1 415-543-3539
Email: rbhibbs@pacbell.com Email: rbhibbs@pacbell.com
Glenn Waters Glenn Waters
Postal: Nortel Networks, Inc. Postal: Nortel Networks, Inc.
310-875 Carling Avenue 310-875 Carling Avenue
Ottawa, Ontario K1S 5P1 Ottawa, Ontario K1S 5P1
Canada Canada
Tel: +1 613-798-4925 Tel: +1 613-798-4925
Email: gww@nortelnetworks.com " Email: gww@nortelnetworks.com "
DESCRIPTION DESCRIPTION
"The MIB module for entities implementing the server side of "The MIB module for entities implementing the server side of the
the Bootstrap Protocol (BOOTP) and the Dynamic Host Bootstrap Protocol (BOOTP) and the Dynamic Host Configuration
Configuration protocol (DHCP) for Internet Protocol version 4 protocol (DHCP) for Internet Protocol version 4(IPv4). This MIB
(IPv4)." does not include support for Dynamic DNS (DDNS) updating nor for
the DHCP Failover Protocol."
::= { dhcp 1 } ::= { dhcp 1 }
dhcpServerMibObjects OBJECT-IDENTITY dhcpServerMIBObjects OBJECT-IDENTITY -- /*renamed*/
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"DHCP Server MIB objects are all defined in this branch." "DHCP Server MIB objects are all defined in this branch."
::= { dhcpServerMib 1 } ::= { dhcpServerMIB 1 } -- /*renamed*/
serverSystem OBJECT-IDENTITY serverSystem OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"Group of objects that are related to the overall system." "Group of objects that are related to the overall system."
::= { dhcpServerMibObjects 1 } ::= { dhcpServerMIBObjects 1 } -- /*renamed*/
bootpCounters OBJECT-IDENTITY bootpCounters OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"Group of objects that count various BOOTP events." "Group of objects that count various BOOTP events."
::= { dhcpServerMibObjects 2 } ::= { dhcpServerMIBObjects 2 } -- /*renamed*/
dhcpCounters OBJECT-IDENTITY dhcpCounters OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"Group of objects that count various DHCP events." "Group of objects that count various DHCP events."
::= { dhcpServerMibObjects 3 } ::= { dhcpServerMIBObjects 3 } -- /*renamed*/
bootpStatistics OBJECT-IDENTITY bootpStatistics OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"Group of objects that measure various BOOTP statistics." "Group of objects that measure various BOOTP statistics."
::= { dhcpServerMibObjects 4 } ::= { dhcpServerMIBObjects 4 } -- /*renamed*/
dhcpStatistics OBJECT-IDENTITY dhcpStatistics OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"Group of objects that measure various DHCP statistics." "Group of objects that measure various DHCP statistics."
::= { dhcpServerMibObjects 5 } ::= { dhcpServerMIBObjects 5 } -- /*renamed*/
serverConfiguration OBJECT-IDENTITY serverConfiguration OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"Objects that contain pre-configured and dynamic configuration "Objects that contain pre-configured and dynamic
configuration
information." information."
::= { dhcpServerMibObjects 6 } ::= { dhcpServerMIBObjects 6 } -- /*renamed*/
bootpClients OBJECT-IDENTITY bootpClients OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"Objects that map bootp clients to IP addresses." "Objects that map bootp clients to IP addresses."
::= { dhcpServerMibObjects 7 } ::= { dhcpServerMIBObjects 7 } -- /*renamed*/
dhcpClients OBJECT-IDENTITY dhcpClients OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"Objects that map DHCP clients to IP addresses." "Objects that map DHCP clients to IP addresses."
::= { dhcpServerMibObjects 8 } ::= { dhcpServerMIBObjects 8 } -- /*renamed*/
dhcpServerConformance OBJECT-IDENTITY
STATUS current
DESCRIPTION
"DHCP Server MIB objects are all defined in this branch."
::= { dhcpServerMib 1 }
-- Textual conventions defined by this memo -- Textual conventions defined by this memo
DhcpTimeInterval ::= TEXTUAL-CONVENTION DhcpTimeInterval ::= TEXTUAL-CONVENTION
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of milli-seconds that has elapsed since some epoch. "The number of milli-seconds that has elapsed since some epoch.
Systems that cannot measure events to the milli-second Systems that cannot measure events to the milli-second
resolution SHOULD round this value to the next available resolution SHOULD round this value to the next available
resolution that the system supports." resolution that the system supports."
SYNTAX Unsigned32 SYNTAX Unsigned32
PhysicalAddress ::= TEXTUAL-CONVENTION -- /*new*/
SYNTAX OCTET STRING (SIZE (1..17))
DISPLAY-HINT "t,xx[:xx...]"
STATUS current
REFERENCE "RFC 2131"
DESCRIPTION
"A Layer 1 address which includes the hardware type
space as well as the usual MAC address. This object is
encoded as
<type><address>
where
<type> is the value of the hardware type space
field, as used in ARP (e.g., 1 for Ethernet,
6 for token ring). IANA maintains the list of
registered numbers for this field.
<address> is the hardware address of the MAC (Media
Adapter Card) interface, of size <length>
octets.
This encoding is intended to mirror the representation
of MAC addresses in DHCP."
-- serverSystem Group -- serverSystem Group
serverSystemDescr OBJECT-TYPE serverSystemDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255)) SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"A textual description of the server. This value should "A textual description of the server. This value should
include the full name and version identification of the server. include the full name and version identification of the
This string MUST contain only printable NVT ASCII characters." server.
This string MUST contain only printable NVT ASCII
characters."
::= { serverSystem 1 } ::= { serverSystem 1 }
serverSystemObjectID OBJECT-TYPE serverSystemObjectID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The vendor's authoritative identification of the network "The vendor's authoritative identification of the network
management subsystem contained in this entity. This value is management subsystem contained in this entity. This value is
allocated within the SMI enterprise subtree (1.3.6.1.4.1) and allocated within the SMI enterprise subtree (1.3.6.1.4.1) and
provides an easy and unambiguous means for determining 'what provides an easy and unambiguous means for determining 'what
kind of server' is being managed. For example, if vendor kind of server' is being managed. For example, if vendor
'VeryBigServers, Inc.' was assigned the subtree 'VeryBigServers, Inc.' is assigned the subtree
1.3.6.1.4.1.4242, it may assign the identifier 1.3.6.1.4.1.4242, it may assign the identifier
1.3.6.1.4.1.4242.1.1 to its `Hercules DHCP Server'." 1.3.6.1.4.1.4242.1.1 to its `Hercules DHCP Server'."
::= { serverSystem 2 } ::= { serverSystem 2 }
-- bootpCounters Group -- bootpCounters Group
bootpCountRequests OBJECT-TYPE bootpCountRequests OBJECT-TYPE
SYNTAX Counter32 SYNTAX Counter32
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of packets received that contain a Message Type of "The number of packets received that contain a Message Type of
1 (BOOTREQUEST) in the first octet and do not contain option 1 (BOOTREQUEST) in the first octet and do not contain option
number 53 (DHCP Message Type) in the options." number 53 (DHCP Message Type) in the options."
skipping to change at page 8, line 43 skipping to change at page 9, line 23
number 53 (DHCP Message Type) in the options." number 53 (DHCP Message Type) in the options."
::= { bootpCounters 1 } ::= { bootpCounters 1 }
bootpCountInvalids OBJECT-TYPE bootpCountInvalids OBJECT-TYPE
SYNTAX Counter32 SYNTAX Counter32
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of packets received that do not contain a Message "The number of packets received that do not contain a Message
Type of 1 (BOOTREQUEST) in the first octet or are not valid Type of 1 (BOOTREQUEST) in the first octet or are not valid
BOOTP packets (e.g.: too short, invalid field in packet BOOTP packets (e.g., too short, invalid field in packet
header)." header)."
::= { bootpCounters 2 } ::= { bootpCounters 2 }
bootpCountReplies OBJECT-TYPE bootpCountReplies OBJECT-TYPE
SYNTAX Counter32 SYNTAX Counter32
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of packets sent that contain a Message Type of 1 "The number of packets sent that contain a Message Type of 1
(BOOTREQUEST) in the first octet and do not contain option (BOOTREQUEST) in the first octet and do not contain option
skipping to change at page 10, line 28 skipping to change at page 11, line 8
"The number of DHCPINFORM (option 53 with value 8) packets "The number of DHCPINFORM (option 53 with value 8) packets
received." received."
::= { dhcpCounters 5 } ::= { dhcpCounters 5 }
dhcpCountInvalids OBJECT-TYPE dhcpCountInvalids OBJECT-TYPE
SYNTAX Counter32 SYNTAX Counter32
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of DHCP packets received whose DHCP message type "The number of DHCP packets received whose DHCP message type
(i.e.: option number 53) is not understood or handled by the (i.e., option number 53) is not understood or handled by the
server." server."
::= { dhcpCounters 6 } ::= { dhcpCounters 6 }
dhcpCountOffers OBJECT-TYPE dhcpCountOffers OBJECT-TYPE
SYNTAX Counter32 SYNTAX Counter32
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of DHCPOFFER (option 53 with value 2) packets "The number of DHCPOFFER (option 53 with value 2) packets
sent." sent."
::= { dhcpCounters 7 } ::= { dhcpCounters 7 }
dhcpCountAcks OBJECT-TYPE dhcpCountAcks OBJECT-TYPE
SYNTAX Counter32 SYNTAX Counter32
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of DHCPACK (option 53 with value 5) packets sent." "The number of DHCPACK (option 53 with value 5) packets
sent."
::= { dhcpCounters 8 } ::= { dhcpCounters 8 }
dhcpCountNacks OBJECT-TYPE dhcpCountNacks OBJECT-TYPE
SYNTAX Counter32 SYNTAX Counter32
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of DHCPNACK (option 53 with value 6) packets sent." "The number of DHCPNACK (option 53 with value 6) packets
sent."
::= { dhcpCounters 9 } ::= { dhcpCounters 9 }
dhcpCountDroppedUnknownClient OBJECT-TYPE dhcpCountDroppedUnknownClient OBJECT-TYPE
SYNTAX Counter32 SYNTAX Counter32
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of DHCP packets dropped due to the server not "The number of DHCP packets dropped due to the server not
recognizing or not providing service to the client-id and/or recognizing or not providing service to the client-id and/or
hardware address received in the incoming packet." hardware address received in the incoming packet."
::= { dhcpCounters 10 } ::= { dhcpCounters 10 }
skipping to change at page 11, line 19 skipping to change at page 11, line 54
"The number of DHCP packets dropped due to the server not "The number of DHCP packets dropped due to the server not
recognizing or not providing service to the client-id and/or recognizing or not providing service to the client-id and/or
hardware address received in the incoming packet." hardware address received in the incoming packet."
::= { dhcpCounters 10 } ::= { dhcpCounters 10 }
dhcpCountDroppedNotServingSubnet OBJECT-TYPE dhcpCountDroppedNotServingSubnet OBJECT-TYPE
SYNTAX Counter32 SYNTAX Counter32
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of DHCP packets dropped due to the server not being "The number of DHCP packets dropped due to the server not
being
configured or not otherwise able to serve addresses on the configured or not otherwise able to serve addresses on the
subnet from which this message was received." subnet from which this message was received."
::= { dhcpCounters 11 } ::= { dhcpCounters 11 }
-- bootpStatistics group -- bootpStatistics group
bootpStatMinArrivalInterval OBJECT-TYPE bootpStatMinArrivalInterval OBJECT-TYPE
SYNTAX DhcpTimeInterval SYNTAX DhcpTimeInterval
MAX-ACCESS read-write MAX-ACCESS read-write
STATUS current STATUS current
skipping to change at page 12, line 9 skipping to change at page 12, line 43
zero value." zero value."
::= { bootpStatistics 2 } ::= { bootpStatistics 2 }
bootpStatLastArrivalTime OBJECT-TYPE bootpStatLastArrivalTime OBJECT-TYPE
SYNTAX DateAndTime SYNTAX DateAndTime
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The date and time that the last valid BOOTP message was "The date and time that the last valid BOOTP message was
received by the server. Invalid messages do not cause this received by the server. Invalid messages do not cause this
value to change. If valid no messages have been received, then value to change. If valid no messages have been received,
this object contains a date and time that is all zero." then this object contains a date and time that is all zero."
::= { bootpStatistics 3 } ::= { bootpStatistics 3 }
bootpStatSumSquaresArrivalTime OBJECT-TYPE bootpStatSumSquaresArrivalTime OBJECT-TYPE
SYNTAX Counter64 SYNTAX Counter64
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The sum of the squared BOOTP packet inter-arrival times in "The sum of the squared BOOTP packet inter-arrival times in
micro-seconds. This value may be used to compute the variance micro-seconds. This value may be used to compute the variance
and standard deviation of the BOOTP arrival times. Note that a and standard deviation of the BOOTP arrival times. Note that a
skipping to change at page 13, line 44 skipping to change at page 15, line 4
DESCRIPTION DESCRIPTION
"The sum of the squared BOOTP packet response times in micro- "The sum of the squared BOOTP packet response times in micro-
seconds. This value may be used to compute the variance and seconds. This value may be used to compute the variance and
standard deviation of the BOOTP response times. Note that a standard deviation of the BOOTP response times. Note that a
micro-second resolution of this object requires a clock micro-second resolution of this object requires a clock
resolution to the milli-second since the square of a milli- resolution to the milli-second since the square of a milli-
second value produces a value with micro-second resolution." second value produces a value with micro-second resolution."
::= { bootpStatistics 8 } ::= { bootpStatistics 8 }
-- dhcpStatistics group -- dhcpStatistics group
dhcpStatMinArrivalInterval OBJECT-TYPE dhcpStatMinArrivalInterval OBJECT-TYPE
SYNTAX DhcpTimeInterval SYNTAX DhcpTimeInterval
MAX-ACCESS read-write MAX-ACCESS read-write
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The minimum amount of time between receiving two DHCP "The minimum amount of time between receiving two DHCP
messages. A message is received at the server when the server messages. A message is received at the server when the server
is able to begin processing the message. This typically occurs is able to begin processing the message. This typically
occurs
immediately after the message is read into server memory. If immediately after the message is read into server memory. If
no messages have been received, then this object contains a no messages have been received, then this object contains a
zero value." zero value."
::= { dhcpStatistics 1 } ::= { dhcpStatistics 1 }
dhcpStatMaxArrivalInterval OBJECT-TYPE dhcpStatMaxArrivalInterval OBJECT-TYPE
SYNTAX DhcpTimeInterval SYNTAX DhcpTimeInterval
MAX-ACCESS read-write MAX-ACCESS read-write
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The maximum amount of time between receiving two DHCP
messages. A message is received at the server when the server "The maximum amount of time between receiving two DHCP messages.
is able to begin processing the message. This typically occurs A message is received at the server when the server is able to
immediately after the message is read into server memory. If begin processing the message. This typically occurs immediately
no messages have been received, then this object contains a after the message is read into server memory. If no messages
zero value." have been received, then this object contains a zero value."
::= { dhcpStatistics 2 } ::= { dhcpStatistics 2 }
dhcpStatLastArrivalTime OBJECT-TYPE dhcpStatLastArrivalTime OBJECT-TYPE
SYNTAX DateAndTime SYNTAX DateAndTime
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The date and time that the last valid DHCP message was "The date and time that the last valid DHCP message was
received by the server. Invalid messages do not cause this received by the server. Invalid messages do not cause this
value to change. If no valid messages have been received, then value to change. If no valid messages have been received, then
skipping to change at page 16, line 17 skipping to change at page 18, line 4
-- serverConfiguration group -- serverConfiguration group
serverSubnetTable OBJECT-TYPE serverSubnetTable OBJECT-TYPE
SYNTAX SEQUENCE OF ServerSubnetEntry SYNTAX SEQUENCE OF ServerSubnetEntry
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"A list of subnets that are configured in this server." "A list of subnets that are configured in this server."
::= { serverConfiguration 1 } ::= { serverConfiguration 1 }
serverSubnetEntry OBJECT-TYPE serverSubnetEntry OBJECT-TYPE
SYNTAX ServerSubnetEntry SYNTAX ServerSubnetEntry
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
INDEX { serverSubnet }
DESCRIPTION DESCRIPTION
"A logical row in the serverSubnetTable." "A logical row in the serverSubnetTable."
INDEX { serverSubnet }
::= { serverSubnetTable 1 } ::= { serverSubnetTable 1 }
ServerSubnetEntry ::= SEQUENCE { ServerSubnetEntry ::= SEQUENCE {
serverSubnet IpAddress, serverSubnet IpAddress,
serverSubnetMask IpAddress, serverSubnetMask IpAddress,
serverSubnetSharedNet IpAddress serverSubnetSharedNet IpAddress
} }
serverSubnet OBJECT-TYPE serverSubnet OBJECT-TYPE
SYNTAX IpAddress SYNTAX IpAddress
skipping to change at page 17, line 17 skipping to change at page 19, line 4
be used if this subnet is not shared." be used if this subnet is not shared."
::= { serverSubnetEntry 3 } ::= { serverSubnetEntry 3 }
serverRangeTable OBJECT-TYPE serverRangeTable OBJECT-TYPE
SYNTAX SEQUENCE OF ServerRangeEntry SYNTAX SEQUENCE OF ServerRangeEntry
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"A list of ranges that are configured on this server." "A list of ranges that are configured on this server."
::= { serverConfiguration 2 } ::= { serverConfiguration 2 }
serverRangeEntry OBJECT-TYPE serverRangeEntry OBJECT-TYPE
SYNTAX ServerRangeEntry SYNTAX ServerRangeEntry
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
INDEX { serverRangeStart }
DESCRIPTION DESCRIPTION
"A logical row in the serverRangeTable." "A logical row in the serverRangeTable."
INDEX { serverRangeStart }
::= { serverRangeTable 1 } ::= { serverRangeTable 1 }
ServerRangeEntry ::= SEQUENCE { ServerRangeEntry ::= SEQUENCE {
serverRangeStart IpAddress, serverRangeStart IpAddress,
serverRangeEnd IpAddress, serverRangeEnd IpAddress,
serverRangeSubnetMask IpAddress, serverRangeSubnetMask IpAddress,
serverRangeInUse Gauge32, serverRangeInUse Gauge32,
serverRangeOutstandingOffers Gauge32 serverRangeOutstandingOffers Gauge32
} }
skipping to change at page 18, line 24 skipping to change at page 20, line 13
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of addresses in this range that are currently in "The number of addresses in this range that are currently in
use. This number includes those addresses whose lease has not use. This number includes those addresses whose lease has not
expired and addresses which have been reserved (either by the expired and addresses which have been reserved (either by the
server or through configuration)." server or through configuration)."
::= { serverRangeEntry 4 } ::= { serverRangeEntry 4 }
serverRangeOutstandingOffers OBJECT-TYPE serverRangeOutstandingOffers OBJECT-TYPE
SYNTAX Guage32 SYNTAX Gauge32
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of outstanding DHCPOFFER messages for this range is "The number of outstanding DHCPOFFER messages for this range is
reported with this value. An offer is outstanding if the reported with this value. An offer is outstanding if the
server has sent a DHCPOFFER message to a client, but has not server has sent a DHCPOFFER message to a client, but has not
yet received a DHCPREQUEST message from the client nor has the yet received a DHCPREQUEST message from the client nor has the
server-specific timeout (limiting the time in which a client server-specific timeout (limiting the time in which a client
can respond to the offer message) for the offer message can respond to the offer message) for the offer message
expired." expired."
::= { serverRangeEntry 5 } ::= { serverRangeEntry 5 }
serverAddressTable OBJECT-TYPE serverAddressTable OBJECT-TYPE
SYNTAX SEQUENCE OF ServerAddressEntry SYNTAX SEQUENCE OF ServerAddressEntry
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"A list of addresses that are known by this server. The list "A list of addresses that are known by this server. The list
MUST contain addresses that have not expired. The list MUST MUST contain addresses that have not expired. The list MUST
NOT contain addresses that have never been assigned by the NOT contain addresses that have never been assigned by the
server UNLESS the lease is pre-configured in the server (e.g.: server UNLESS the lease is pre-configured in the server (e.g.,
a static lease on a subnet)." a static lease on a subnet)."
::= { serverConfiguration 3 } ::= { serverConfiguration 3 }
serverAddressEntry OBJECT-TYPE serverAddressEntry OBJECT-TYPE
SYNTAX ServerAddressEntry SYNTAX ServerAddressEntry
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
INDEX { serverAddress }
DESCRIPTION DESCRIPTION
"A logical row in the serverAddressTable." "A logical row in the serverAddressTable."
INDEX { serverAddress }
::= { serverAddressTable 1 } ::= { serverAddressTable 1 }
ServerAddressEntry ::= SEQUENCE { ServerAddressEntry ::= SEQUENCE {
serverAddress IpAddress, serverAddress IpAddress,
serverAddressSubnetMask IpAddress, serverAddressSubnetMask IpAddress,
serverAddressRange IpAddress, serverAddressRange IpAddress,
serverAddressType INTEGER, serverAddressType INTEGER,
serverAddressTimeReminaing Unsigned32, serverAddressTimeRemaining Unsigned32,
serverAddressAllowedProtocol INTEGER, serverAddressAllowedProtocol INTEGER,
serverAddressServedProtocol INTEGER, serverAddressServedProtocol INTEGER,
serverAddressMacAddress OCTET STRING, serverAddressMacAddress OCTET STRING,
serverAddressClientId OCTET STRING, serverAddressClientId OCTET STRING,
serverAddressHostName DisplayString, serverAddressHostName DisplayString,
serverAddressDomainName DisplayString serverAddressDomainName DisplayString
} }
serverAddress OBJECT-TYPE serverAddress OBJECT-TYPE
SYNTAX IpAddress SYNTAX IpAddress
skipping to change at page 19, line 47 skipping to change at page 21, line 40
this server and appear as a row in the dhcpSubnetTable." this server and appear as a row in the dhcpSubnetTable."
::= { serverAddressEntry 2 } ::= { serverAddressEntry 2 }
serverAddressRange OBJECT-TYPE serverAddressRange OBJECT-TYPE
SYNTAX IpAddress SYNTAX IpAddress
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The starting IP address (serverRangeStart object) of the range "The starting IP address (serverRangeStart object) of the range
to which this address belongs. If the address does not fall to which this address belongs. If the address does not fall
into one of the configured ranges (e.g.: a statically into one of the configured ranges (e.g., a statically
configured address on a subnet) the range may be 0.0.0.0." configured address on a subnet) the range may be 0.0.0.0."
::= { serverAddressEntry 3 } ::= { serverAddressEntry 3 }
serverAddressType OBJECT-TYPE serverAddressType OBJECT-TYPE
SYNTAX INTEGER { SYNTAX INTEGER {
static(1), static(1),
dynamic(2), dynamic(2),
configuration-reserved(3), configuration-reserved(3),
server-reserved(4) server-reserved(4)
} }
skipping to change at page 20, line 18 skipping to change at page 22, line 15
DESCRIPTION DESCRIPTION
"The type of this address." "The type of this address."
::= { serverAddressEntry 4 } ::= { serverAddressEntry 4 }
serverAddressTimeRemaining OBJECT-TYPE serverAddressTimeRemaining OBJECT-TYPE
SYNTAX Unsigned32 SYNTAX Unsigned32
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The number of seconds until the lease expires. A value of "The number of seconds until the lease expires. A value of
4294967295 (i.e.: 0xFFFFFFFF) should be used for leases that 4294967295 (i.e., 0xFFFFFFFF) should be used for leases that
have a lease time which is 'infinite' and for BOOTP leases." have a lease time which is 'infinite' and for BOOTP leases."
::= { serverAddressEntry 5 } ::= { serverAddressEntry 5 }
serverAddressAllowedProtocol OBJECT-TYPE serverAddressAllowedProtocol OBJECT-TYPE
SYNTAX INTEGER { SYNTAX INTEGER {
none(1), none(1),
bootp(2), bootp(2),
dhcp(3), dhcp(3),
bootp-or-dhcp(4) bootp-or-dhcp(4)
} }
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The type of protocol that is allowed to be used to serve this "The type of protocol that is allowed to be used to serve this
address. A type of none(1) indicates that the address is not address. A type of none(1) indicates that the address is not
available to be served (e.g.: a reserved address)." available to be served (e.g., a reserved address)."
::= { serverAddressEntry 6 } ::= { serverAddressEntry 6 }
serverAddressServedProtocol OBJECT-TYPE serverAddressServedProtocol OBJECT-TYPE
SYNTAX INTEGER { SYNTAX INTEGER {
none(1), none(1),
bootp(2), bootp(2),
dhcp(3) dhcp(3)
} }
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The type of protocol that was used when this address was "The type of protocol that was used when this address was
assigned. This object will have the value of none(1) if the assigned. This object will have the value of none(1) if the
address has not been served." address has not been served."
::= { serverAddressEntry 7 } ::= { serverAddressEntry 7 }
serverAddressMacAddress OBJECT-TYPE serverAddressHardwareAddress OBJECT-TYPE -- /*renamed*/
SYNTAX OCTET STRING (SIZE (0 | 2..17)) SYNTAX PhysicalAddress -- /*modified*/
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The hardware type and hardware address of the client that has "The hardware type and hardware address of the client that has
been assigned this lease. The first octet of this object been assigned this lease. The first octet of this object
contains the hardware type from the 'htype' field of the BOOTP contains the hardware type from the 'htype' field of the BOOTP
packet and the remaining octets contain the hardware address packet and the remaining octets contain the hardware address
from the 'chaddr' field of the BOOTP packet. This object may from the 'chaddr' field of the BOOTP packet. This object may
be empty if the address has not been previously served." be empty if the address has not been previously served."
::= { serverAddressEntry 8 } ::= { serverAddressEntry 8 }
serverAddressClientId OBJECT-TYPE serverAddressClientId OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..255)) SYNTAX OCTET STRING (SIZE (0..255))
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The client-id of the client that has been assigned this lease. "The client-id of the client that has been assigned this lease.
The client-id is the value specified in option 61 (client-id The client-id is the value specified in option 61 (client-id
option) when the lease was assigned. This object may be empty option) when the lease was assigned. This object may be e,[pty
if the lease has not been previously assigned or if the client- if the lease has not been previously assigned or if the client-
id option was not specified when the address was assigned." id option was not specified when the address was assigned."
::= { serverAddressEntry 9 } ::= { serverAddressEntry 9 }
serverAddressHostName OBJECT-TYPE serverAddressHostName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..64)) SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The host name (DHCP option 12) the client is configured with "The host name (DHCP option 12) the client is configured to use,
or if no host name was configured then the host name that the or if no host name was configured then the host name that the
client supplied when requesting an address." client supplied when requesting an address."
::= { serverAddressEntry 10 } ::= { serverAddressEntry 10 }
serverAddressDomainName OBJECT-TYPE serverAddressDomainName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255)) SYNTAX DisplayString (SIZE (0..255))
-- need correct maximum length
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The domain name (DHCP option 15) assigned to the client." "The domain name (DHCP option 15) assigned to the client.
"
::= { serverAddressEntry 11 } ::= { serverAddressEntry 11 }
serverClientTable OBJECT-TYPE serverClientTable OBJECT-TYPE
SYNTAX SEQUENCE OF ServerClientEntry SYNTAX SEQUENCE OF ServerClientEntry
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"A list of clients that are known by this server. Details about "A list of clients that are known by this server. Details
the clients may be found by indexing into the about the clients may be found by indexing into the
serverAddressTable using the serverClientAddress object. This serverAddressTable using the serverClientAddress object. This
table is indexed first by the MAC address of the client and table is indexed first by the MAC address of the client and then
then by the subnet address on which the client resides. The by the subnet address on which the client resides. The subnet
subnet is included as an index since a MAC address is only is included as an index since a MAC address is only guaranteed
guaranteed to be unique within a subnet (i.e.: a MAC address is to be unique within a subnet (i.e., a MAC address is not
not globally unique)." globally unique)."
::= { bootpClients 1 } ::= { bootpClients 1 }
serverClientEntry OBJECT-TYPE serverClientEntry OBJECT-TYPE
SYNTAX ServerClientEntry SYNTAX ServerClientEntry
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
INDEX {
serverClientHardwareAddress, -- /*renamed*/
serverClientSubnet
}
DESCRIPTION DESCRIPTION
"A logical row in the serverClientTable. An entry in this table "A logical row in the serverClientTable. An entry in this table
may be a client that requested an address but was refused may be a client that requested an address but was refused (e.g.,
(e.g.: not authorized). Servers MAY track these types of not authorized). Servers MAY track these types of clients if
clients if desired and may choose to remove such client entries desired and may choose to remove such client entries using a
using a server defined algorithm. As an example, a server may server defined algorithm. As an example, a server may choose to
choose to keep client request that does not map to an address keep client request that does not map to an address for a one
for a one hour time period before removing that entry from this hour time period before removing that entry from this table."
table." ::= { serverClientTable 1 }
INDEX { serverClientMacAddress, serverClientSubnet }
::= { bootpClientTable 1 }
ServerClientEntry ::= SEQUENCE { ServerClientEntry ::= SEQUENCE {
serverClientTypeAndMacAddress OCTET STRING, serverClientHardwareAddress PhsicalAddress -- /*renamed*/
serverClientSubnetMask IpAddress, serverClientSubnetMask IpAddress,
serverClientAddress IpAddress, serverClientAddress IpAddress,
serverClientLastRequestTime DateAndTime, serverClientLastRequestTime DateAndTime,
serverClientLastRequestType INTEGER, serverClientLastRequestType INTEGER,
serverClientLastResponseType INTEGER serverClientLastResponseType INTEGER
} }
serverClientTypeAndMacAddress OBJECT-TYPE serverClientHardwareAddress OBJECT-TYPE -- /*renamed*/
SYNTAX OCTET STRING (SIZE (2..17)) SYNTAX PhysicalAddress -- /*modified*/
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The hardware type and hardware address of the client that has "The hardware type and hardware address of the client that has
been assigned this lease. The first octet of this object been assigned this lease. The first octet of this object
contains the hardware type from the 'htype' field of the BOOTP contains the hardware type from the 'htype' field of the BOOTP
packet and the remaining octets contain the hardware address packet and the remaining octets contain the hardware address
from the 'chaddr' field of the BOOTP packet." from the 'chaddr' field of the BOOTP packet."
::= { serverClientEntry 1 } ::= { serverClientEntry 1 }
serverClientSubnetMask OBJECT-TYPE serverClientSubnetMask OBJECT-TYPE
SYNTAX IpAddress SYNTAX IpAddress
MAX-ACCESS not-accessible MAX-ACCESS not-accessible
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The subnet mask (DHCP option 1) applied to the client IP." "The subnet mask (DHCP option 1) applied to
serverClientAddress." -- /*modified*/
::= { serverClientEntry 2 } ::= { serverClientEntry 2 }
serverClientAddress OBJECT-TYPE serverClientAddress OBJECT-TYPE
SYNTAX IpAddress SYNTAX IpAddress
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The IP address of the entry. May be used to index into the "The IP address of the entry. May be used to index into the
serverAddressTable. May be 0.0.0.0 if an address is not serverAddressTable. May be 0.0.0.0 if an address is not
associated with this client." associated with this client."
skipping to change at page 23, line 50 skipping to change at page 26, line 23
unknown(3), unknown(3),
dhcpack(5), dhcpack(5),
dhcpnak(6) dhcpnak(6)
} }
MAX-ACCESS read-only MAX-ACCESS read-only
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"The type of the last response that was sent to this client." "The type of the last response that was sent to this client."
::= { serverClientEntry 6 } ::= { serverClientEntry 6 }
-- Compliance groups -- serverNotifyObjects: Objects which are used only in
notifications
dhcpServerMIBCompliances OBJECT IDENTIFIER ::= { serverNotifyDuplicateIPAddress OBJECT-TYPE -- /*new*/
dhcpServerConformance 1 } SYNTAX IpAddress
dhcpServerMIBGroups OBJECT IDENTIFIER ::= { MAX-ACCESS accessible-for-notify
dhcpServerConformance 2 } STATUS current
DESCRIPTION
"The IP address which was found to be a duplicate."
::= { serverNotifyObjects 1 }
dhcpServerMIBCompliance MODULE-COMPLIANCE serverNotifyMACAddress OBJECT-TYPE -- /*new*/
SYNTAX PhysicalAddress
MAX-ACCESS accessible-for-notify
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"Describes the requirements for conformance to the System "The offending MAC address which caused a duplicate IP
Application MIB" address to be detected."
::= { serverNotifyObjects 2 }
serverNotifyServer OBJECT-TYPE -- /*new*/
SYNTAX IpAddress
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"The IP Address of a server with which the DHCP server
is attempting to communicate."
::= { serverNotifyObjects 3 }
serverNotifyServerType OBJECT-TYPE -- /*new*/
SYNTAX INTEGER {
dns(1),
dhcp(2),
ldap(3)
}
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"The type of server with which the DHCP server is attempting
to communicate (corresponds to the serverNotifyServer
object.)"
::= { serverNotifyObjects 4 }
serverNotifyDuplicateIPAddressDetectedBy OBJECT-TYPE -- /*new*/
SYNTAX INTEGER {dhcpClient(1), dhcpServer(2)}
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"For a serverDuplicateAddress notification, this object
indicates whether the client or server detected the
condition. A DHCP server would typically detect duplicates
by unexpected ICMPECHO replies, while a client would
typically use a gratuitous ARP for the same purpose and
indicate this to the server by a DHCPDECLINE message."
::= { serverNotifyObjects 5 }
serverNotifyContestedIpAddress OBJECT-TYPE -- /*new*/
SYNTAX IpAddress
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"The IP address for which ownership is claimed by two or
more DHCP servers."
::= { serverNotifyObjects 6 }
-- Notifications
dhcpServerMIBNotificationPrefix OBJECT IDENTIFIER -- /*new*/
::= { dhcpServerMIB 2 } -- /*renamed*/
dhcpServerMIBNotifications OBJECT IDENTIFIER -- /*new*/
::= { dhcpServerMIBNotificationPrefix 0 }
serverFreeAddressLow NOTIFICATION-TYPE -- /*new*/
OBJECTS {
serverSharedNetworkFreeAddressLowThreshold,
serverSharedNetworkFreeAddressValue,
serverSharedNetworkFreeAddressUnits
}
STATUS current
DESCRIPTION
"This notification signifies that the number of available IP
addresses for a particular shared network has fallen below the
value of serverSharedNetworkFreeAddressLowThreshold for that
shared network."
::= { dhcpServerMIBNotifications 1 }
serverFreeAddressHigh NOTIFICATION-TYPE -- /*new*/
OBJECTS {
serverSharedNetworkFreeAddressHighThreshold,
serverSharedNetworkFreeAddressValue,
serverSharedNetworkFreeAddressUnits
}
STATUS current
DESCRIPTION
"This notification signifies that the number of available IP
addresses for a particular shared network has risen above the
value of serverSharedNetworkFreeAddressHighThreshold for that
shared network."
::= { dhcpServerMIBNotifications 2 }
serverServerStart NOTIFICATION-TYPE -- /*new*/
OBJECTS { serverNotifyServerType }
STATUS current
DESCRIPTION
"This notification signifies that the server of the specified
type has started on the host from which this notification has
been sent."
::= { dhcpServerMIBNotifications 3 }
serverServerStop NOTIFICATION-TYPE -- /*new*/
OBJECTS { serverNotifyServerType }
STATUS current
DESCRIPTION
"This notification signifies that the server of the specified
type has stopped normally on the host from which this
notification has been sent."
::= { dhcpServerMIBNotifications 4 }
serverDuplicateAddress NOTIFICATION-TYPE -- /*new*/
OBJECTS {
serverNotifyDuplicateIPAddress,
serverNotifyMACAddress,
serverNotifyDuplicateIPAddressDetectedBy
}
STATUS current
DESCRIPTION
"This notification signifies that a duplicate IP address has
been detected. The DHCP server can detect this condition
through the ping-before-offer mechanism. Alternatively, the
client may have sent a DHCPDECLINE back to the server; this is
assumed to be the result of the client detecting that the
address was in use. In either case, the DHCP server marks the
IP address as unavailable for leasing to clients. The
serverNotifyDuplicateIPAddressDetectedBy object indicates
whether the client or server detected this condition."
::= { dhcpServerMIBNotifications 7 }
-- Conformance
dhcpServerMIBConformance OBJECT-IDENTITY -- /*renamed*/
STATUS current
DESCRIPTION
"DHCP Server MIB objects are all defined in this branch."
::= { dhcpServerMIB 3 } -- /*renamed*/
dhcpServerMIBCompliances OBJECT IDENTIFIER
::= { dhcpServerMIBConformance 1 } -- /*renamed*/
dhcpServerMIBGroups OBJECT IDENTIFIER
::= { dhcpServerMIBConformance 2 } -- /*renamed*/
-- Compliance groups
dhcpServerMIBCompliance MODULE-COMPLIANCE
MODULE -- this module MODULE -- this module
MANDATORY-GROUPS MANDATORY-GROUPS {
{ serverSystemGroup, bootpCountersGroup, dhcpCountersGroup, serverSystemGroup,
bootpStatisticsGroup, dhcpStatisticsGroup, bootpCountersGroup,
serverConfigurationGroup, serverClientsGroup } dhcpCountersGroup,
bootpStatisticsGroup,
dhcpStatisticsGroup,
serverConfigurationGroup,
serverClientsGroup
}
STATUS current
DESCRIPTION
"Describes the requirements for conformance to the DCHP
Server MIB"
::= { dhcpServerMIBCompliances 1 } ::= { dhcpServerMIBCompliances 1 }
serverSystemGroup OBJECT-GROUP serverSystemGroup OBJECT-GROUP
OBJECTS { serverSystemDescr, serverSystemObjectID } OBJECTS {
serverSystemDescr,
serverSystemObjectID
}
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"" "Objects belonging to the serverSystemGroup."
::= { dhcpServerMIBGroups 1 } ::= { dhcpServerMIBGroups 1 }
bootpCountersGroup OBJECT-GROUP bootpCountersGroup OBJECT-GROUP
OBJECTS OBJECTS {
{ bootpCountRequests, bootpCountInvalids, bootpCountReplies, bootpCountRequests,
bootpCountInvalids,
bootpCountReplies,
bootpCountDroppedUnknownClients, bootpCountDroppedUnknownClients,
bootpCountDroppedNotServingSubnet } bootpCountDroppedNotServingSubnet
}
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"" "Objects belonging to the bootpBountersGroup."
::= { dhcpServerMIBGroups 2 } ::= { dhcpServerMIBGroups 2 }
dhcpCountersGroup OBJECT-GROUP dhcpCountersGroup OBJECT-GROUP
OBJECTS OBJECTS {
{ dhcpCountDiscovers, dhcpCountRequests, dhcpCountReleases, dhcpCountDiscovers,
dhcpCountDeclines, dhcpCountInforms, dhcpCountInvalids, dhcpCountRequests,
dhcpCountOffers, dhcpCountAcks, dhcpCountNacks, dhcpCountReleases,
dhcpCountDroppedUnknownClint, dhcpCountDroppedNotServingSubnet dhcpCountDeclines,
dhcpCountInforms,
dhcpCountInvalids,
dhcpCountOffers,
dhcpCountAcks,
dhcpCountNacks,
dhcpCountDroppedUnknownClient,
dhcpCountDroppedNotServingSubnet
} }
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"" "Objects belonging to the dhcpCountersGroup."
::= { dhcpServerMIBGroups 3 } ::= { dhcpServerMIBGroups 3 }
bootpStatisticsGroup OBJECT-GROUP bootpStatisticsGroup OBJECT-GROUP
OBJECTS OBJECTS {
{ bootpStatMinArrivalInterval, bootpStatMaxArrivalInterval, bootpStatMinArrivalInterval,
bootpStatLastArrivalTime, bootpStatSunSquaresArrivalTime, bootpStatMaxArrivalInterval,
bootpStatMinResponseTime, bootpStatMaxResponseTime, bootpStatLastArrivalTime,
bootpStatSumReponseTime, bootpStatSumSquaresResponseTime } bootpStatSunSquaresArrivalTime,
bootpStatMinResponseTime,
bootpStatMaxResponseTime,
bootpStatSumReponseTime,
bootpStatSumSquaresResponseTime
}
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"" "Objects belonging to the bootpStatisticsGroup."
::= { dhcpServerMIBGroups 4 } ::= { dhcpServerMIBGroups 4 }
dhcpStatisticsGroup OBJECT-GROUP dhcpStatisticsGroup OBJECT-GROUP
OBJECTS OBJECTS {
{ dhcpStatMinArrivalInterval, dhcpStatMaxArrivalInterval, dhcpStatMinArrivalInterval,
dhcpStatLastArrivalTime, dhcpStatSumSquaresArrivalTime, dhcpStatMaxArrivalInterval,
dhcpStatMinResponseTime, dhcpStatMaxResponseTime, dhcpStatLastArrivalTime,
dhcpStatSumResponseTime, dhcpStatSumSquaresResponseTime } dhcpStatSumSquaresArrivalTime,
dhcpStatMinResponseTime,
dhcpStatMaxResponseTime,
dhcpStatSumResponseTime,
dhcpStatSumSquaresResponseTime
}
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"" "Objects belonging to the dhcpStatisticsGroup."
::= { dhcpServerMIBGroups 5 } ::= { dhcpServerMIBGroups 5 }
serverConfigurationGroup OBJECT-GROUP serverConfigurationGroup OBJECT-GROUP
OBJECTS OBJECTS {
{ serverSubnet, serverSubnetMask, serverSubnetSharedNet, serverSubnet,
serverRangeStart, serverRangeEnd, serverRangeSubnet, serverSubnetMask,
serverRangeInUse, serverRangeOutstandingOffers, serverAddress, serverSubnetSharedNet,
serverAddressSubnet, serverAddressRange, serverAddressRange, serverRangeStart,
serverAddressType, serverAddressTimeRemaining, serverRangeEnd,
serverAddressAllowedProtocol, serverAddressServedProtocol, serverRangeSubnet,
serverAddressTypeAndMacAddress, serverAddressClientId, serverRangeInUse,
serverAddressHostName, serverAddressDomainName } serverRangeOutstandingOffers,
serverAddress,
serverAddressSubnet,
-- serverAddressRange, -- /*duplicate*/
serverAddressRange,
serverAddressType,
serverAddressTimeRemaining,
serverAddressAllowedProtocol,
serverAddressServedProtocol,
serverAddressHardwareAddress, -- /*renamed*/
serverAddressClientId,
serverAddressHostName,
serverAddressDomainName
}
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"" "Objects belonging to the serverConfigurationGroup."
::= { dhcpServerMIBGroups 6 } ::= { dhcpServerMIBGroups 6 }
serverClientsGroup OBJECT-GROUP serverClientsGroup OBJECT-GROUP
OBJECTS OBJECTS {
{ serverClientMacAddress, serverClientSubnet, serverClientHardwareAddress, -- /*renamed*/
serverClientAddress, serverClientLastRequestTime, serverClientSubnet,
serverClientLastRequestType, serverClientLastResponseType } serverClientAddress,
serverClientLastRequestTime,
serverClientLastRequestType,
serverClientLastResponseType
}
STATUS current STATUS current
DESCRIPTION DESCRIPTION
"" "Objects belonging to the serverClientsGroup."
::= { dhcpServerMIBGroups 7 } ::= { dhcpServerMIBGroups 7 }
END serverSharedNetworkObjectsGroup OBJECT-GROUP -- /*new*/
OBJECTS {
serverSharedNetworkFreeAddrLowThreshold,
serverSharedNetworkFreeAddrHighThreshold,
serverSharedNetworkFreeAddrValue,
serverSharedNetworkFreeAddrUnits
}
STATUS current
DESCRIPTION
"DHCP Server MIB objects used in shared networks."
::= { dhcpServerMIBGroups 8 }
serverNotifyObjectsGroup OBJECT-GROUP -- /*new*/
OBJECTS {
serverNotifyDuplicateIPAddress,
serverNotifyMACAddress,
serverNotifyDuplicateIPAddressDetectedBy,
serverNotifyServer,
serverNotifyServerType,
serverNotifyContestedIpAddress
}
STATUS current
DESCRIPTION
"DHCP Server MIB objects used in notifications."
::= { dhcpServerMIBGroups 9 }
serverNotifyicationsGroup NOTIFICATION-GROUP -- /*new*/
NOTIFICATIONS {
serverFreeAddressLow,
serverFreeAddressHigh,
serverServerStart,
serverServerStop,
serverDNSQueueTooBig,
serverOtherServerNotResponding,
serverDuplicateAddress,
serverAddressConflict,
serverOtherServerResponding,
serverFailoverConfigMismatch
}
STATUS current
DESCRIPTION
"Notifyications which are implemented by the DHCP Server
agent."
::= { dhcpServerMIBGroups 10 }
END
4. Intellectual Property 4. Intellectual Property
The IETF takes no position regarding the validity or scope of any The IETF takes no position regarding the validity or scope of any
intellectual property or other rights that might be claimed to pertain intellectual property or other rights that might be claimed to
to the implementation or use of the technology described in this pertain to the implementation or use of the technology described in
document or the extent to which any license under such rights might or this document or the extent to which any license under such rights
might not be available; neither does it represent that it has made any might or might not be available; neither does it represent that it
effort to identify any such rights. Information on the IETF's has made any effort to identify any such rights. Information on the
procedures with respect to rights in standards-track and standards- IETF's procedures with respect to rights in standards-track and
related documentation can be found in BCP-11. standards-related documentation can be found in BCP-11.
Copies of claims of rights made available for publication and any Copies of claims of rights made available for publication and any
assurances of licenses to be made available, or the result of an 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 attempt made to obtain a general license or permission for the use
such proprietary rights by implementers or users of this specification of such proprietary rights by implementers or users of this
can be obtained from the IETF Secretariat. specification can be obtained from the IETF Secretariat.
The IETF invites any interested party to bring to its attention any The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary copyrights, patents or patent applications, or other proprietary
rights which may cover technology that may be required to practice rights which may cover technology that may be required to practice
this standard. Please address the information to the IETF Executive this standard. Please address the information to the IETF Executive
Director. Director.
5. Notes 5. Notes
This section will be removed when this memo is published as an RFC. This section will be removed when this memo is published as an RFC.
5.1. Issues 5.1. Issues
o Ryan Troll proposed four or five traps that Nathan Lane
enthusiastically supported. If traps are to be included, that
should be done soon.
o what is the best way to reset statistics? o what is the best way to reset statistics?
o do we need to reset them individually, as groups, or as a whole? o do we need to reset them individually, as groups, or as a
whole?
o we need a timestamp of when they were reset o we need a timestamp of when they were reset
o should all invalid packets received be collapsed into a single o should all invalid packets received be collapsed into a single
counter for each protocol type (BOOTP and DHCP), or broken out by counter for each protocol type (BOOTP and DHCP), or broken out by
type of error? type of error?
o if counted by error type, what is the set of errors that we should o if counted by error type, what is the set of errors that we
use? should use?
o perhaps we should develop a common vocabulary (and glossary) for o perhaps we should develop a common vocabulary (and glossary) for
terms such as "abandoned" so that the objects defined and their terms such as "abandoned" so that the objects defined and their
descriptions aren't misinterpreted by implementers. descriptions aren't misinterpreted by implementers.
o do we need to be concerned about the potential size of some of the o do we need to be concerned about the potential size of some of
configuration data tables? Wouldn't it be better to maintain the configuration data tables? Wouldn't it be better to maintain
counters for things like number of leases assigned than to expect counters for things like number of leases assigned than to expect
the management station to calculate the values by reading very the management station to calculate the values by reading very
large tables to count the number of leases in that state? large tables to count the number of leases in that state?
5.2. Changes from Prior Drafts 5.2. Changes from Prior Drafts
The "-01" revision removed the Server Identity section from the The "-01" revision removed the Server Identity section from the
proposed MIB, relying on the Application MIB to accomplish the same proposed MIB, relying on the Application MIB to accomplish the same
result. result.
The min/max (inter-arrival and response times) were changed to The min/max (inter-arrival and response times) were changed to
Unsigned32 so that they could be reset. Sum of inter-arrival and Unsigned32 so that they could be reset. Sum of inter-arrival and
response times was deleted since the management station can easily response times was deleted since the management station can easily
calculate them. The last arrival time objects were added. calculate them. The last arrival time objects were added.
The "-03" version incorporated the proposed configuration tables The "-03" version incorporated the proposed configuration tables
suggested by Ryan Troll of CMU. The "01" revision of this version suggested by Ryan Troll of CMU. The "01" revision of this version
added three elements to the server subnet table, number of outstanding added three elements to the server subnet table, number of
offers, number of addresses in use, and number of free addresses, as outstanding offers, number of addresses in use, and number of free
well as changing subnet address to subnet mask in the server address, addresses, as well as changing subnet address to subnet mask in the
server range, and client address tables. The client MAC address server address, server range, and client address tables. The client
element of the client address table was separated into a 1-octet MAC address element of the client address table was separated into a
hardware type and a 16-octet client hardware address, causing a 1-octet hardware type and a 16-octet client hardware address,
renumbering of the elements in this table. Clarifying text was added causing a renumbering of the elements in this table. Clarifying
to several element descriptions, and limitations on values, and the text was added to several element descriptions, and limitations on
reported value when the server did not support the data element were values, and the reported value when the server did not support the
also specified. data element were also specified.
The "-03b" version incorporated an address change for one of the
authors, revisions to standard text required by the IETF, and some
editorial clarifications.
The "-04" version changed the maximum size of the object
serverAddressHostName from 64 to 255 octets, and added clarifying
text to both that object and to serverAddressDomainName regarding
the practical values for the length of both objects.
The "-05" version added a number of traps suggested by Kim Kinnear,
made a number of small renaming and renumbering changes (annotated
in the MIB itself) and restored the Security Considerations text
that had somehow been deleted: several subnetworks that coexist on
one medium. This was done partly because the Address Range concept
did not adequately describe the "scoping" of address pools as is
common with many current server implementations.
6. Acknowledgements 6. Acknowledgements
This document is the result of work undertaken the by DHCP working This document is the result of work undertaken the by DHCP working
group. The authors would like to particularly acknowledge the group. The authors would like to particularly acknowledge the
development team from Carnegie-Mellon University whose work creating a development team from Carnegie-Mellon University whose work creating
private MIB for their DHCP server inspired the development of this a private MIB for their DHCP server inspired the development of this
proposal. In particular, many thanks to Ryan Troll who provided a proposal. In particular, many thanks to Ryan Troll who provided a
great deal of useful feedback during the development of this MIB. great deal of useful feedback during the development of this MIB.
Thanks to Kim Kinnear, Yannick Koehler, and Nathan Lane for their
review, comments, and contributions.
7. Security Considerations 7. Security Considerations
There are a number of management objects defined in this MIB that have There are a number of management objects defined in this MIB that
a MAX-ACCESS clause of read-write and/or read-create. Such objects may have a MAX-ACCESS clause of read-write and/or read-create. Such
be considered sensitive or vulnerable in some environments. The objects may be considered sensitive or vulnerable in some
support for SET operations in a non-secure environment without proper environments. The support for SET operations in a non-secure
protection can have a negative effect on network operations. environment without proper protection can have a negative effect on
network operations.
SNMPv1 by itself is not a secure environment. Even if the network SNMPv1 by itself is not a secure environment. Even if the network
itself is secure (for example by using IPSec), even then, there is no itself is secure (for example by using IPSec, there is no control as
control as to who on the secure network is allowed to access and to who on the secure network is allowed to access and GET/SET
GET/SET (read/change/create/delete) the objects in this MIB. (read/change/create/delete) the objects in this MIB.
It is recommended that the implementers consider the security features It is recommended that the implementers consider the security
as provided by the SNMPv3 framework. Specifically, the use of the features as provided by the SNMPv3 framework. Specifically, the use
User-based Security Model RFC 2274 [RFC2274] and the View-based Access of the User-based Security Model RFC 2274 [RFC2274] and the View-
Control Model RFC 2275 [RFC2275] is recommended. based Access Control Model RFC 2275 [RFC2275] is recommended.
It is then a customer/user responsibility to ensure that the SNMP It is then a customer/user responsibility to ensure that the SNMP
entity giving access to an instance of this MIB, is properly entity giving access to an instance of this MIB, is properly
configured to give access to the objects only to those principals configured to give access to the objects only to those principals
(users) that have legitimate rights to indeed GET or SET (users) that have legitimate rights to indeed GET or SET
(change/create/delete) them. (change/create/delete) them.
8. References 8. References
[DEN] Directory Enabled Networks Working Group, [DEN] Directory Enabled Networks Working Group,
http://www.universe.digex.net/~murchiso/den. http://www.universe.digex.net/~murchiso/den.
[RFC1902] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, [RFC1902] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,
"Structure of Management Information for Version 2 of the Simple "Structure of Management Information for Version 2 of the
Network Management Protocol (SNMPv2)", RFC 1902, January 1996. Simple Network Management Protocol (SNMPv2)", RFC 1902, January
1996.
[RFC1903] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, [RFC1903] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,
"Textual Conventions for Version 2 of the Simple Network Management "Textual Conventions for Version 2 of the Simple Network
Protocol (SNMPv2)", RFC 1903, January 1996. Management Protocol (SNMPv2)", RFC 1903, January 1996.
[RFC1904] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, [RFC1904] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,
"Conformance Statements for Version 2 of the Simple Network "Conformance Statements for Version 2 of the Simple Network
Management Protocol (SNMPv2)", RFC 1904, January 1996. Management Protocol (SNMPv2)", RFC 1904, January 1996.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", RFC 2119, BCP 14, March 1997. Requirement Levels", RFC 2119, BCP 14, March 1997.
[RFC2131] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131, [RFC2131] Droms, R., "Dynamic Host Configuration Protocol", RFC
March 1997. 2131, March 1997.
[RFC2132] Alexander, S. and Droms, R., "DHCP Options and BOOTP Vendor
Extensions", RFC 2132, March 1997.
[RFC2274] Blumenthal, U., and B. Wijnen, "User-based Security Model
(USM) for version 3 of the Simple Network Management Protocol
(SNMPv3)", RFC 2274, January 1998.
[RFC2275] Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based [RFC2132] Alexander, S. and Droms, R., "DHCP Options and BOOTP
Access Control Model for the Simple Network Management Protocol Vendor Extensions", RFC 2132, March 1997.
(SNMP)", RFC 2275, January 1998.
[RFC2287] Krupczak, C. and Saperia, J., "Definitions of System-Level [RFC2287] Krupczak, C. and Saperia, J., "Definitions of System-
Managed Objects for Applications", RFC 2287, February 1998. Level Managed Objects for Applications", RFC 2287, February
1998.
9. Editors' Addresses 9. Editors' Addresses
Richard Barr Hibbs Richard Barr Hibbs
Pacific Bell Pacific Bell
666 Folsom Street, Room 1225 666 Folsom Street, Room 1225
San Francisco, CA 94107-1384 San Francisco, CA 94107-1384
USA USA
Phone: +1 415-545-1576 Phone: +1 415-545-1576
skipping to change at page 29, line 17 skipping to change at page 36, line 45
Phone: +1 613-798-4925 Phone: +1 613-798-4925
Email: gww@nortelnetworks.com Email: gww@nortelnetworks.com
10. Full Copyright Statement 10. Full Copyright Statement
Copyright (C) The Internet Society (1999). All Rights Reserved. Copyright (C) The Internet Society (1999). All Rights Reserved.
This document and translations of it may be copied and furnished to This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published and or assist in its implementation may be prepared, copied, published
distributed, in whole or in part, without restriction of any kind, and distributed, in whole or in part, without restriction of any
provided that the above copyright notice and this paragraph are kind, provided that the above copyright notice and this paragraph
included on all such copies and derivative works. However, this are included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of developing Internet organizations, except as needed for the purpose of
Internet standards in which case the procedures for copyrights defined developing Internet standards in which case the procedures for
in the Internet Standards process must be followed, or as required to copyrights defined in the Internet Standards process must be
translate it into languages other than English. followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns. revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/