idnits 2.17.1 draft-ietf-dhc-server-mib-06.txt: -(1966): Line appears to be too long, but this could be caused by non-ascii characters in UTF-8 encoding -(1986): Line appears to be too long, but this could be caused by non-ascii characters in UTF-8 encoding Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == There are 2 instances of lines with non-ascii characters in the document. == The page length should not exceed 58 lines per page, but there was 44 longer pages, the longest (page 2) being 65 lines == It seems as if not all pages are separated by form feeds - found 0 form feeds but 45 pages Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) ** The document seems to lack separate sections for Informative/Normative References. All references will be assumed normative when checking for downward references. ** There are 466 instances of too long lines in the document, the longest one being 5 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The document seems to lack the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (February 2002) is 8105 days in the past. Is this intentional? -- Found something which looks like a code comment -- if you have code sections in the document, please surround them with '' and '' lines. Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'RFC2274' is mentioned on line 2024, but not defined ** Obsolete undefined reference: RFC 2274 (Obsoleted by RFC 2574) == Missing Reference: 'RFC2275' is mentioned on line 2025, but not defined ** Obsolete undefined reference: RFC 2275 (Obsoleted by RFC 2575) == Unused Reference: 'RFC2132' is defined on line 2070, but no explicit reference was found in the text -- Possible downref: Non-RFC (?) normative reference: ref. 'DEN' Summary: 6 errors (**), 0 flaws (~~), 7 warnings (==), 4 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group Barr Hibbs 3 INTERNET-DRAFT (no affiliation) 4 Category: Standards Track Glenn Waters 5 Nortel Networks 6 February 2002 8 Dynamic Host Configuration Protocol (DHCP) Server MIB 10 11 Saved Thursday, February 14, 2002, 11:26:01 AM 13 Status of this Memo 15 This document is an Internet-Draft and is in full conformance with 16 all provisions of Section 10 of RFC2026. 18 Internet-Drafts are working documents of the Internet Engineering 19 Task Force (IETF), its areas, and its working groups. Note that 20 other groups may also distribute working documents as Internet- 21 Drafts. 23 Internet-Drafts are draft documents valid for a maximum of six months 24 and may be updated, replaced, or obsoleted by other documents at any 25 time. It is inappropriate to use Internet-Drafts as reference 26 material or to cite them other than as "work in progress." 28 The list of current Internet-Drafts can be accessed at 29 http://www.ietf.org/1id-abstracts.html. 31 The list of Internet-Draft Shadow Directories can be accessed at 32 http://www.ietf.org/shadow.html. 34 Copyright Notice 36 Copyright (C) 2002, The Internet Society. All Rights Reserved. 38 Abstract 40 This memo defines an experimental portion of the Management 41 Information Base (MIB) for use with network management protocols in 42 the Internet Community. In particular, it defines objects used for 43 the management of Dynamic Host Configuration Protocol (DHCP) and 44 Bootstrap Protocol (BOOTP) servers. 46 Table of Contents 48 1. Introduction...................................................2 49 2. Overview.......................................................3 50 2.1. Relationship to Other MIBs.................................4 51 2.1.1. DHCP MIB Extensions...................................4 52 2.1.2. Host System MIB Extensions............................4 53 2.1.3. DHCPv6 Server MIB Extensions..........................4 54 2.1.4. DHCP Client MIB Extensions............................5 55 2.1.5. DHCP Relay Agent MIB Extensions.......................5 56 2.2. Textual Conventions Introduced in this MIB.................5 57 2.2.1. DhcpTimeInterval......................................5 58 2.2.2. HardwareAddressType...................................5 59 2.2.3. HardwareAddressLength.................................5 60 2.2.4. MacAddress............................................5 61 2.2.5. PhysicalAddress.......................................5 62 2.2.6. DhcpLabel.............................................6 63 2.3. BOOTP and DHCP Counter Groups..............................6 64 2.4. BOOTP and DHCP Optional Statistics Group...................6 65 2.5. Response Times and ICMP Echo...............................8 66 3. Definitions....................................................8 67 4. Intellectual Property.........................................39 68 5. Notes.........................................................40 69 5.1. Issues....................................................40 70 5.2. Changes from Prior Drafts.................................41 71 6. Acknowledgements..............................................42 72 7. Security Considerations.......................................42 73 8. References....................................................43 74 9. Editors' Addresses............................................44 75 10. Full Copyright Statement.....................................44 77 1. Introduction 79 This memo was produced by the DHCP Working Group and defines a 80 portion of the Management Information Base (MIB) for use with network 81 management protocols in the Internet community. In particular, it 82 describes a set of extensions that DHCP and Bootstrap Protocol 83 (BOOTP) servers implement. Many implementations support both DHCP 84 and BOOTP within a single server and hence this memo describes the 85 MIB for both DHCP and BOOTP servers. 87 This memo does not cover DHCP/BOOTP client nor relay agent MIB 88 extensions: these are possibly the subjects of future investigation 89 [see discussion in section 2.1.] Also excluded from this MIB 90 extension in the interest of simplicity are DHCP Dynamic DNS 91 Updating, Failover, Authentication, and Load Balancing: these 92 functions and features could be subjects of future MIB extensions. 94 Provision is also made for Standards-Track additions to the DHCP 95 Message Type (option 61.) 97 This memo is based on the Internet-standard Network Management 98 Framework as defined by documents [RFC2578, RFC2579, RFC2580]. 100 Objects defined in this MIB allow access to and control of DHCP 101 Server Software. Servers MAY also provide additional management 102 capabilities through the use of the Applications MIB [RFC2287]. 104 The key words "MUST," "MUST NOT," "REQUIRED," "SHALL," "SHALL NOT," 105 "SHOULD," "SHOULD NOT," "RECOMMENDED," "MAY," and "OPTIONAL" in this 106 document are to be interpreted as described in document [RFC2119]. 108 2. Overview 110 In the tradition of the Simple Network Management Protocol (SNMP) the 111 minimum number of objects possible are defined in this MIB, while 112 still providing as rich a set of management information as possible. 113 An object is left out of this MIB when it can be derived from other 114 objects that are provided. Further to the tradition of the SNMP, 115 computationally intense operations are left to the domain of the 116 management station. Thus, this MIB provides a set of objects from 117 which other management information may be derived. 119 The examples provided in sections 2.3 through 2.5 are not meant to be 120 comprehensive but are illustrative of the potential uses of the 121 objects defined by this MIB. 123 2.1. Relationship to Other MIBs 125 2.1.1. DHCP MIB Extensions 127 The DHCP MIB extensions will the "dhcp" branch of the standard MIB-2 128 tree, as illustrated by the following diagram: 130 +-------+ 131 | MIB-2 | 132 +---+---+ 133 | 134 | 135 +---+---+ 136 | dhcp | 137 +---+---+ 138 | 139 | 140 +---------------+------+---------+---------------------+ 141 | | | | 142 +-----+-----+ +-----+----+ +-------+--------+ +------+------+ 143 | dhcp-v4 | | dhcp-v4 | | dhcp-v4 | | dhcp-v6 MIB | 144 |Server MIB | |Client MIB| |Relay Agent MIB | | Extensions | 145 |(this memo)| | (future) | | (future work) | | (future) | 146 +-----------+ +----------+ +----------------+ +-------------+ 148 The MIBs will share a common branching point, but are independently 149 defined. 151 2.1.2. Host System MIB Extensions 153 The Host System MIB [RFC1123] provides for information, command, and 154 control of the host computer system on which a DHCP server resides. 155 The DHCP Server MIB specifically does not include any objects that 156 may be accessible using the Host System MIB. 158 2.1.3. DHCPv6 Server MIB Extensions 160 When this set of MIB extensions is developed, it will share a common 161 branch point in the MIB tree with the other DHCP MIB Extensions. 163 2.1.4. DHCP Client MIB Extensions 165 If this set of MIB extensions is ever developed, it will share a 166 common branch point in the MIB tree with the other DHCP MIB 167 Extensions, and will use many of the same textual conventions. 169 2.1.5. DHCP Relay Agent MIB Extensions 171 If this set of MIB extensions is ever developed, it will share a 172 common branch point in the MIB tree with the other DHCP MIB 173 Extensions, and will use many of the same textual conventions. 175 2.2. Textual Conventions Introduced in this MIB 177 Severaal conceptual data types have been introduced as textual 178 conventions in this DHCP MIB document. These additions will 179 facilitate the common understanding of information used by the DHCP 180 server. No changes to the SMI or the SNMP are necessary to support 181 these conventions. 183 2.2.1. DhcpTimeInterval 185 This data type measures time intervals since the beginning of some 186 epoch in milliseconds. 188 2.2.2. HardwareAddressType 190 This data type contains the type of hardware address represented by 191 MacAddress, as defined for ARP messages. 193 2.2.3. HardwareAddressLength 195 The length in octets of MacAddress is contained in this type. 197 2.2.4. MacAddress 199 The actual layer 1 hardware address is contained in this data type. 201 2.2.5. PhysicalAddress 203 This data type combines the hardware type octet with the length and 204 hardware (NIC or MAC) address to produce a unique address type. 206 2.2.6. DhcpLabel 208 This data type contains labels used as identifiers by DHCP servers. 210 2.3. BOOTP and DHCP Counter Groups 212 This section describes some of the management information that may be 213 derived from the objects provided in the counter groups. 215 The total number of valid DHCP packets received by the server is 216 computed as the sum of the dhcpCountDiscovers, dhcpCountRequests, 217 dhcpCountReleases, dhcpCountDeclines, dhcpCountInforms and 218 dhcpCountLeaseQueries objects. The total number of valid packets 219 (BOOTP and DHCP) received is computed as the total number of valid 220 DHCP packets plus the value of the bootpCountRequests object. The 221 total number of packets received is computed as the total number of 222 valid packets plus the sum of bootpCountInvalids and 223 dhcpCountInvalids. 225 Similar to the received computations, the total number of DHCP 226 packets sent by the server is computed as the sum of the 227 dhcpCountOffers, dhcpCountAcks, dhcpCountNacks, 228 dhcpCountForcedRenews, dhcpCountKnowns, and dhcpCountUnknowns 229 objects. The number of packets (BOOTP and DHCP) sent by the server 230 is computed as the total number of DHCP packets sent plus the value 231 of the bootpCountReplies object. 233 2.4. BOOTP and DHCP Optional Statistics Group 235 This section describes some of the management information that may be 236 derived from the objects provided in the optional statistics group. 238 Given time 1 (t1) and time 2 (t2) greater than t1, the mean inter- 239 arrival time of valid DHCP messages for the interval t1 to t2 can be 240 computed as (dhcpStatLastArrivalTime at t2 minus 241 dhcpStatLastArrivalTime at t1) divided by (valid DHCP received packet 242 count at t2 minus valid DHCP received packet count at t1). 244 Under the simplifying assumption that the capture of packet counts 245 and times is discontinuous (that is, for the measurement interval the 246 captured data represents the complete set for the server) the 247 variance of the mean may be computed as 248 (dhcpStatSumSquaresArrivalTime at t2 less 249 dhcpStatSumSquaresArrivalTime at t1) divided by (valid DHCP received 250 packet count at t2 less valid DHCP received packet count at t1). 251 Standard deviation of the mean is the square root of the variance. 253 Calculation of statistics for message response time is entirely 254 similar to the calculations for inter-arrival time, except that the 255 response time objects are used for the calculations. 257 Calculation of statistics for BOOTP is similar to the calculations 258 for DHCP, except that the similar objects from the 259 bootpOptionalStatistics group are used instead of the objects from 260 dhcpOptionalStatistics group.server Configuration Group 262 The server configuration group contains objects that describe the 263 configuration information that is contained in the server. Some of 264 the configuration information is static (e.g., a statically 265 configured IP address) and some of the configuration is dynamic 266 (e.g., an assigned DHCP lease). The intent of the server 267 configuration group is to be able to read the server's configuration. 268 Mechanisms outside of the SNMP are currently in use (e.g., vendor 269 defined solutions) and are being standardized (e.g., the Directory 270 Enabled Networks [DEN] initiative) to update a server's 271 configuration. 273 The configuration information defines a minimal set of information 274 that most servers should be able to provide. Each row of the 275 serverSubnetTable lists the subnet, the subnet mask, and the subnet 276 that is equivalent to this subnet. Equivalence is defined as more 277 than one subnet being present on the same network segment as some 278 other subnet. 280 The serverRangeTable lists the start and end IP addresses of the 281 ranges and the subnet of which the range is a member. The 282 serverRangeInUse object indicates the amount of the range that is 283 currently in use, either through dynamic allocation or being 284 reserved. The range size can be computed by taking the difference of 285 the serverRangeStart and serverRangeEnd objects. 287 The serverAddressTable provides information about the static and 288 dynamic addresses that the server contains in its configuration. 289 Addresses may be: 291 o Static, in which case they are predefined though the server's 292 configuration. Static addresses may or may not have been 293 previously served by the server; 295 o Dynamic, in which case the server has served the addresses and 296 it is currently in active use by a host; 298 o Expired, in which case the server had previously assigned for 299 which the lease time has expired, but is retained by the server 300 for possible future use by the same client; 302 o Configuration-reserved, in which case the address is not 303 available for the server to allocate to a client. A 304 configuration-reserved address is one that has been reserved by 305 the administrator. An example of a configuration-reserved 306 address is an address that is assigned to a client, not through 307 DHCP (e.g., statically assigned), and the address is within a 308 DHCP range; and 310 o Server-reserved, in which case the server has taken the address 311 out of use. Examples of server-reserved addresses are those 312 which have been declined (i.e., through a DHCPDECLINE) by a 313 client or those which have responded to an ICMP echo before they 314 were assigned. 316 The protocol used to allocate the address may be determined from the 317 serverAddressServedProtocol object. This object indicates whether 318 the address has never been served, or whether BOOTP or DHCP was used 319 to allocate the address. 321 2.5. Response Times and ICMP Echo 323 According to [RFC2131], servers SHOULD try to determine if an address 324 is in use before assigning it. Some servers choose not to perform 325 this check, letting the client determine for itself if the address is 326 in use. Other servers perform an ICMP echo (Ping) just prior to 327 assigning an address. Servers that perform a Ping before responding 328 to a DHCPDISCOVER should not include in the response time the time 329 from when the Ping was transmitted until the time that either a 330 response was received or that the server timed out waiting for a 331 response. 333 3. Definitions 335 -- definitions for a DHCP (Dynamic Host Configuration Protocol) 336 server 338 DHCP-SERVER-MIB DEFINITIONS ::= BEGIN 340 IMPORTS 341 Counter64, Counter32, Gauge32, Unsigned32, mib-2, MODULE-IDENTITY, 342 OBJECT-TYPE, OBJECT-IDENTITY, IpAddress 343 FROM SNMPv2-SMI 345 TEXTUAL-CONVENTION, RowStatus, DisplayString, TruthValue, 346 DateAndTime FROM SNMPv2-TC 348 MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP 349 FROM SNMPv2-CONF; 351 dhcp OBJECT-IDENTITY 352 STATUS current 353 DESCRIPTION 354 "The dhcp branch in the standard network management framework." 355 ::= { mib-2 99 } -- IANA will make official assignment 357 serverMIB MODULE-IDENTITY 358 LAST-UPDATED "2002-02-14 11:26" 359 ORGANIZATION "IETF DHC Working Group" 360 CONTACT-INFO 361 " Richard Barr Hibbs 362 Postal: 952 Sanchex Street 363 San Francisco, California 94114-3362 364 USA 365 Tel: +1-(415)-648-3920 366 Fax: +1-(415)-648-9017 367 E-mail: rbhibbs@pacbell.net 369 Glenn Waters 370 Postal: Nortel Networks, Inc. 371 310-875 Carling Avenue 372 Ottawa, Ontario K1S 5P1 373 Canada 374 Tel: +1-(613)-798-4925 375 E-mail: gww@NortelNetworks.com " 376 DESCRIPTION 377 "The MIB module for entities implementing the server side of 378 the Bootstrap Protocol (BOOTP) and the Dynamic Host 379 Configuration protocol (DHCP) for Internet Protocol version 380 4(IPv4). This MIB does not include support for Dynamic DNS 381 (DDNS) updating nor for the DHCP Failover Protocol." 382 ::= { dhcp 1 } 384 serverMIBObjects OBJECT-IDENTITY 385 STATUS current 386 DESCRIPTION 387 "DHCP Server MIB objects are all defined in this branch." 388 ::= { serverMIB 1 } 390 serverSystem OBJECT-IDENTITY 391 STATUS current 392 DESCRIPTION 393 "Group of objects that are related to the overall system." 394 ::= { serverMIBObjects 1 } 396 bootpCounters OBJECT-IDENTITY 397 STATUS current 398 DESCRIPTION 399 "Group of objects that count various BOOTP events." 400 ::= { serverMIBObjects 2 } 402 dhcpCounters OBJECT-IDENTITY 403 STATUS current 404 DESCRIPTION 405 "Group of objects that count various DHCP events." 406 ::= { serverMIBObjects 3 } 408 bootpOptionalStatistics OBJECT-IDENTITY -- /*renamed*/ 409 STATUS current 410 DESCRIPTION 411 "Group of objects that measure various BOOTP statistics." 412 ::= { serverMIBObjects 4 } 414 dhcpOptionalStatistics OBJECT-IDENTITY -- /*renamed*/ 415 STATUS current 416 DESCRIPTION 417 "Group of objects that measure various DHCP statistics." 418 ::= { serverMIBObjects 5 } 420 serverConfiguration OBJECT-IDENTITY 421 STATUS current 422 DESCRIPTION 423 "Objects that contain pre-configured and dynamic configuration 424 information." 425 ::= { serverMIBObjects 6 } 427 bootpClients OBJECT-IDENTITY 428 STATUS current 429 DESCRIPTION 430 "Objects that map bootp clients to IP addresses." 431 ::= { serverMIBObjects 7 } 433 dhcpClients OBJECT-IDENTITY 434 STATUS current 435 DESCRIPTION 436 "Objects that map DHCP clients to IP addresses." 437 ::= { serverMIBObjects 8 } 439 -- Textual conventions defined by this memo 441 DhcpTimeInterval ::= TEXTUAL-CONVENTION 442 SYNTAX Unsigned32 443 STATUS current 444 DESCRIPTION 445 "The number of milliseconds that has elapsed since some epoch. 446 Systems that cannot measure events to the millisecond 447 resolution SHOULD round this value to the next available 448 resolution that the system supports." 450 HardwareAddressType ::= TEXTUAL-CONVENTION 451 SYNTAX OCTET 452 STATUS current 453 REFERENCE "RFC 2131" 454 DESCRIPTION 455 "The value of the hardware type field, as used in ARP messages 456 (e.g., 1 for Ethernet, 6 for token ring). IANA maintains the 457 list of registered numbers for this field." 459 HardwareAddressLength ::= TEXTUAL-CONVENTION 460 SYNTAX OCTET 461 STATUS current 462 REFERENCE "RFC 2131" 463 DESCRIPTION 464 "The length in octets of the hardware address field (e.g., 6 465 for Ethernet). IANA maintains the list of registered numbers 466 for this field." 468 MacAddress ::= TEXTUAL-CONVENTION 469 SYNTAX OCTET STRING (SIZE (1..16)) 470 DISPLAY-HINT "t,l,xx[:xx...]" 471 STATUS current 472 REFERENCE "RFC 2131" 473 DESCRIPTION 474 "A Layer 1 address, the hardware address of the MAC (Media 475 Adapter Card) interface. The address length is fixed for a 476 given hardware address type, but varies by type." 478 PhysicalAddress ::= TEXTUAL-CONVENTION 479 SYNTAX SEQUENCE OF { 480 HardwareAddressType, 481 HardwareAddressLength, 482 MacAddress 483 } 484 DISPLAY-HINT "t,l,xx[:xx...]" 485 STATUS current 486 REFERENCE "RFC 2131" 487 DESCRIPTION 488 "A Layer 1 address which includes the hardware type space as 489 well as the usual MAC address. This encoding is intended to 490 mirror the representation of physical addresses in DHCP." 492 DhcpLabel ::= TEXTUAL-CONVENTION 493 SYNTAX DisplayString (SIZE (1..100)) 494 DISPLAY-HINT 495 STATUS current 496 DESCRIPTION 498 -- serverSystem Group 500 serverSystemDescr OBJECT-TYPE 501 SYNTAX DisplayString (SIZE (0..255)) 502 MAX-ACCESS read-only 503 STATUS current 504 DESCRIPTION 505 "A textual description of the server. This value should 506 include the full name and version identification of the 507 server." 508 ::= { serverSystem 1 } 510 serverSystemObjectID OBJECT-TYPE 511 SYNTAX OBJECT IDENTIFIER 512 MAX-ACCESS read-only 513 STATUS current 514 DESCRIPTION 515 "The vendor's authoritative identification of the network 516 management subsystem contained in this entity. This value is 517 allocated within the SMI enterprise subtree (1.3.6.1.4.1) and 518 provides an easy and unambiguous means for determining 'what 519 kind of server' is being managed. For example, if vendor 520 'VeryBigServers, Inc.' is assigned the subtree 521 1.3.6.1.4.1.4242, it may assign the identifier 522 1.3.6.1.4.1.4242.1.1 to its `Hercules DHCP Server'." 523 ::= { serverSystem 2 } 525 -- dhcpCounters Group 527 -- DHCP received packet counters 529 dhcpCountDiscovers OBJECT-TYPE 530 SYNTAX Counter32 531 MAX-ACCESS read-only 532 STATUS current 533 DESCRIPTION 534 "The number of DHCPDISCOVER (option 53 with value 1) packets 535 received." 536 REFERENCE 537 "RFC2131; RFC2132, section 9.6." 538 ::= { dhcpCounters 1 } 540 dhcpCountRequests OBJECT-TYPE 541 SYNTAX Counter32 542 MAX-ACCESS read-only 543 STATUS current 544 DESCRIPTION 545 "The number of DHCPREQUEST (option 53 with value 3) packets 546 received." 547 REFERENCE 548 "RFC2131; RFC2132, section 9.6." 549 ::= { dhcpCounters 2 } 551 dhcpCountReleases OBJECT-TYPE 552 SYNTAX Counter32 553 MAX-ACCESS read-only 554 STATUS current 555 DESCRIPTION 556 "The number of DHCPRELEASE (option 53 with value 7) packets 557 received." 558 REFERENCE 559 "RFC2131; RFC2132, section 9.6." 560 ::= { dhcpCounters 3 } 562 dhcpCountDeclines OBJECT-TYPE 563 SYNTAX Counter32 564 MAX-ACCESS read-only 565 STATUS current 566 DESCRIPTION 567 "The number of DHCPDECLINE (option 53 with value 4) packets 568 received." 569 REFERENCE 570 "RFC2131; RFC2132, section 9.6." 571 ::= { dhcpCounters 4 } 573 dhcpCountInforms OBJECT-TYPE 574 SYNTAX Counter32 575 MAX-ACCESS read-only 576 STATUS current 577 DESCRIPTION 578 "The number of DHCPINFORM (option 53 with value 8) packets 579 received." 580 REFERENCE 581 "RFC2131; RFC2132, section 9.6." 582 ::= { dhcpCounters 5 } -- /*renumbered*/ 584 dhcpCountLeaseQueries OBJECT-TYPE -- /*new*/ 585 SYNTAX Counter32 586 MAX-ACCESS read-only 587 STATUS current 588 DESCRIPTION 589 "The number of DHCPLEASEQUERY (option 53 with value TBD) 590 packets received." 591 REFERENCE 592 "draft-ietf-dhc-leasequery-02.txt." 593 ::= { dhcpCounters 6 } -- /*new*/ 595 -- DHCP sent packet counters 597 dhcpCountOffers OBJECT-TYPE 598 SYNTAX Counter32 599 MAX-ACCESS read-only 600 STATUS current 601 DESCRIPTION 602 "The number of DHCPOFFER (option 53 with value 2) packets 603 sent." 604 REFERENCE 605 "RFC2131; RFC2132, section 9.6." 606 ::= { dhcpCounters 11 } -- /*renumbered*/ 608 dhcpCountAcks OBJECT-TYPE 609 SYNTAX Counter32 610 MAX-ACCESS read-only 611 STATUS current 612 DESCRIPTION 613 "The number of DHCPACK (option 53 with value 5) packets sent." 614 REFERENCE 615 "RFC2131; RFC2132, section 9.6." 616 ::= { dhcpCounters 12 } -- /*renumbered*/ 618 dhcpCountNacks OBJECT-TYPE 619 SYNTAX Counter32 620 MAX-ACCESS read-only 621 STATUS current 622 DESCRIPTION 623 "The number of DHCPNACK (option 53 with value 6) packets sent." 624 REFERENCE 625 "RFC2131; RFC2132, section 9.6." 626 ::= { dhcpCounters 13 } -- /*renumbered*/ 628 dhcpCountForcedRenews OBJECT-TYPE -- /*new*/ 629 SYNTAX Counter32 630 MAX-ACCESS read-only 631 STATUS current 632 DESCRIPTION 633 "The number of DHCPFORCERENEW (option 53 with value TBD) 634 packets sent." 635 REFERENCE 636 "draft-ietf-dhc-pv4-reconfigure-06.txt." 637 ::= { dhcpCounters 14 } -- /*new*/ 639 dhcpCountKnowns OBJECT-TYPE -- /*new*/ 640 SYNTAX Counter32 641 MAX-ACCESS read-only 642 STATUS current 643 DESCRIPTION 644 "The number of DHCPKNOWN (option 53 with value TBD) packets 645 sent." 646 REFERENCE 647 "draft-ietf-dhc-leasequery-02.txt." 648 ::= { dhcpCounters 12 } -- /*new*/ 650 dhcpCountUnknowns OBJECT-TYPE -- /*new*/ 651 SYNTAX Counter32 652 MAX-ACCESS read-only 653 STATUS current 654 DESCRIPTION 655 "The number of DHCPUNKNOWN (option 53 with value TBD) packets 656 sent." 657 REFERENCE 658 "draft-ietf-dhc-leasequery-02.txt." 659 ::= { dhcpCounters 13 } -- /*new*/ 661 -- DHCP packet error counters 663 dhcpCountInvalids OBJECT-TYPE 664 SYNTAX Counter32 665 MAX-ACCESS read-only 666 STATUS current 667 DESCRIPTION 668 "The number of DHCP packets received whose DHCP message type 669 (i.e., option number 53) is not understood or handled by the 670 server." 671 ::= { dhcpCounters 17 } -- /*renumbered*/ 673 dhcpCountDroppedUnknownClient OBJECT-TYPE 674 SYNTAX Counter32 675 MAX-ACCESS read-only 676 STATUS current 677 DESCRIPTION 678 "The number of DHCP packets dropped due to the server not 679 recognizing or not providing service to the client-id and/or 680 hardware address received in the incoming packet." 681 ::= { dhcpCounters 18 } -- /*renumbered*/ 683 dhcpCountDroppedNotServingSubnet OBJECT-TYPE 684 SYNTAX Counter32 685 MAX-ACCESS read-only 686 STATUS current 687 DESCRIPTION 688 "The number of DHCP packets dropped due to the server not being 689 configured or not otherwise able to serve addresses on the 690 subnet from which this message was received." 691 ::= { dhcpCounters 19 } -- /*renumbered*/ 693 -- dhcpOptionalStatistics group 695 dhcpStatMinArrivalInterval OBJECT-TYPE 696 SYNTAX DhcpTimeInterval 697 MAX-ACCESS read-only 698 STATUS current 699 DESCRIPTION 700 "The minimum amount of time between receiving two DHCP 701 messages. A message is received at the server when the server 702 is able to begin processing the message. This typically occurs 703 immediately after the message is read into server memory. If 704 no messages have been received, then this object contains a 705 zero value." 706 ::= { dhcpOptionalStatistics 1 } -- /*renamed*/ 708 dhcpStatMaxArrivalInterval OBJECT-TYPE 709 SYNTAX DhcpTimeInterval 710 MAX-ACCESS read-only 711 STATUS current 712 DESCRIPTION 713 "The maximum amount of time between receiving two DHCP 714 messages. A message is received at the server when the server 715 is able to begin processing the message. This typically occurs 716 immediately after the message is read into server memory. If 717 no messages have been received, then this object contains a 718 zero value." 719 ::= { dhcpOptionalStatistics 2 } -- /*renamed*/ 721 dhcpStatLastArrivalTime OBJECT-TYPE 722 SYNTAX DateAndTime 723 MAX-ACCESSread-only 724 STATUS current 725 DESCRIPTION 726 "The date and time that the last valid DHCP message was 727 received by the server. Invalid messages do not cause this 728 value to change. If no valid messages have been received, then 729 this object contains a date and time that is all zero." 730 ::= { dhcpOptionalStatistics 3 } 732 dhcpStatSumSquaresArrivalTime OBJECT-TYPE 733 SYNTAX Counter64 734 MAX-ACCESS read-only 735 STATUS current 736 DESCRIPTION 737 "The sum of the squared DHCP packet inter-arrival times in 738 microseconds. This value may be used to compute the variance 739 and standard deviation of the DHCP arrival times. Note that a 740 microsecond resolution of this object requires a clock 741 resolution to the millisecond since the square of a millisecond 742 value produces a value with microsecond resolution." 743 ::= { dhcpOptionalStatistics 4 }-- /*renamed*/ 745 dhcpStatMinResponseTime OBJECT-TYPE 746 SYNTAX DhcpTimeInterval 747 MAX-ACCESS read-only 748 STATUS current 749 DESCRIPTION 750 "The smallest time interval measured as the difference between 751 the arrival of a DHCP message at the server and the successful 752 transmission of the response to that message. A message is 753 received at the server when the server is able to begin 754 processing the message. A message is transmitted after the 755 server has no further use for the message. Note that the 756 operating system may still have the message queued internally. 757 The operating system queue time is not to be considered as part 758 of the response time. Invalid messages do not cause this value 759 to change. If no valid messages have been received, then this 760 object contains a zero value." 761 ::= { dhcpOptionalStatistics 5 }-- /*renamed*/ 763 dhcpStatMaxResponseTime OBJECT-TYPE 764 SYNTAX DhcpTimeInterval 765 MAX-ACCESS read-only 766 STATUS current 767 DESCRIPTION 768 "The largest time interval measured as the difference between 769 the arrival of a DHCP message at the server and the successful 770 transmission of the response to that message. A message is 771 received at the server when the server is able to begin 772 processing the message. A message is transmitted after the 773 server has no further use for the message. Note that the 774 operating system may still have the message queued internally. 775 The operating system queue time is not to be considered as part 776 of the response time. Invalid messages do not cause this value 777 to change. If no valid messages have been received, then this 778 object contains a zero value." 779 ::= { dhcpOptionalStatistics 6 }-- /*renamed*/ 781 dhcpStatSumResponseTime OBJECT-TYPE 782 SYNTAX Counter32 783 MAX-ACCESS read-only 784 STATUS current 785 DESCRIPTION 786 "The sum of the response time intervals in milliseconds where a 787 response time interval is measured as the difference between 788 the arrival of a DHCP message at the server and the successful 789 transmission of the response to that message. A message is 790 received at the server when the server is able to begin 791 processing the message. A message is transmitted after the 792 server has no further use for the message. Note that the 793 operating system may still have the message queued internally. 794 The operating system queue time is not to be considered as part 795 of the response time. Invalid messages do not cause this value 796 to change. If no valid messages have been received, then this 797 object contains a zero value." 798 ::= { dhcpOptionalStatistics 7 }-- /*renamed*/ 800 dhcpStatSumSquaresResponseTime OBJECT-TYPE 801 SYNTAX Counter64 802 MAX-ACCESS read-only 803 STATUS current 804 DESCRIPTION 805 "The sum of the squared DHCP packet response times in micro- 806 seconds. This value may be used to compute the variance and 807 standard deviation of the DHCP response times. Note that a 808 microsecond resolution of this object requires a clock 809 resolution to the millisecond since the square of a millisecond 810 value produces a value with microsecond resolution." 811 ::= { dhcpOptionalStatistics 8 }-- /*renamed*/ 813 -- bootpCounters Group 815 bootpCountRequests OBJECT-TYPE 816 SYNTAX Counter32 817 MAX-ACCESS read-only 818 STATUS current 819 DESCRIPTION 820 "The number of packets received that contain a Message Type of 821 1 (BOOTREQUEST) in the first octet and do not contain option 822 number 53 (DHCP Message Type) in the options." 823 REFERENCE 824 "RFC-1541." 825 ::= { bootpCounters 1 }-- /*renamed*/ 827 bootpCountInvalids OBJECT-TYPE 828 SYNTAX Counter32 829 MAX-ACCESS read-only 830 STATUS current 831 DESCRIPTION 832 "The number of packets received that do not contain a Message 833 Type of 1 (BOOTREQUEST) in the first octet or are not valid 834 BOOTP packets (e.g., too short, invalid field in packet 835 header)." 836 ::= { bootpCounters 2 }-- /*renamed*/ 838 bootpCountReplies OBJECT-TYPE 839 SYNTAX Counter32 840 MAX-ACCESS read-only 841 STATUS current 842 DESCRIPTION 843 "The number of packets sent that contain a Message Type of 2 844 (BOOTREPLY) in the first octet and do not contain option number 845 53 (DHCP Message Type) in the options." 846 REFERENCE 847 "RFC-1541." 848 ::= { bootpCounters 3 }-- /*renamed*/ 850 bootpCountDroppedUnknownClients OBJECT-TYPE 851 SYNTAX Counter32 852 MAX-ACCESS read-only 853 STATUS current 854 DESCRIPTION 855 "The number of BOOTP packets dropped due to the server not 856 recognizing or not providing service to the hardware address 857 received in the incoming packet." 858 ::= { bootpCounters 4 }-- /*renamed*/ 860 bootpCountDroppedNotServingSubnet OBJECT-TYPE 861 SYNTAX Counter32 862 MAX-ACCESS read-only 863 STATUS current 864 DESCRIPTION 865 "The number of BOOTP packets dropped due to the server not 866 being configured or not otherwise able to serve addresses on 867 the subnet from which this message was received." 868 ::= { bootpCounters 5 }-- /*renamed*/ 870 -- bootpOptionalStatistics group 872 bootpStatMinArrivalInterval OBJECT-TYPE 873 SYNTAX DhcpTimeInterval 874 MAX-ACCESS read-only 875 STATUS current 876 DESCRIPTION 877 "The minimum amount of time between receiving two BOOTP 878 messages. A message is received at the server when the server 879 is able to begin processing the message. This typically occurs 880 immediately after the message is read into server memory. If 881 no messages have been received, then this object contains a 882 zero value." 883 ::= { bootpOptionalStatistics 1 }-- /*renamed*/ 885 bootpStatMaxArrivalInterval OBJECT-TYPE 886 SYNTAX DhcpTimeInterval 887 MAX-ACCESS read-only 888 STATUS current 889 DESCRIPTION 890 "The maximum amount of time between receiving two BOOTP 891 messages. A message is received at the server when the server 892 is able to begin processing the message. This typically occurs 893 immediately after the message is read into server memory. If 894 no messages have been received, then this object contains a 895 zero value." 896 ::= { bootpOptionalStatistics 2 }-- /*renamed*/ 898 bootpStatLastArrivalTime OBJECT-TYPE 899 SYNTAX DateAndTime 900 MAX-ACCESS read-only 901 STATUS current 902 DESCRIPTION 903 "The date and time that the last valid BOOTP message was 904 received by the server. Invalid messages do not cause this 905 value to change. If valid no messages have been received, then 906 this object contains a date and time that is all zero." 907 ::= { bootOptionalpStatistics 3 } -- /*renamed*/ 909 bootpStatSumSquaresArrivalTime OBJECT-TYPE 910 SYNTAX Counter64 911 MAX-ACCESS read-only 912 STATUS current 913 DESCRIPTION 914 "The sum of the squared BOOTP packet inter-arrival times in 915 microseconds. This value may be used to compute the variance 916 and standard deviation of the BOOTP arrival times. Note that a 917 microsecond resolution of this object requires a clock 918 resolution to the millisecond since the square of a millisecond 919 value produces a value with microsecond resolution." 920 ::= { bootpOptionalStatistics 4 }-- /*renamed*/ 922 bootpStatMinResponseTime OBJECT-TYPE 923 SYNTAX DhcpTimeInterval 924 MAX-ACCESS read-only 925 STATUS current 926 DESCRIPTION 927 "The smallest time interval measured as the difference between 928 the arrival of a BOOTP message at the server and the successful 929 transmission of the response to that message. A message is 930 received at the server when the server is able to begin 931 processing the message. A message is transmitted after the 932 server has no further use for the message. Note that the 933 operating system may still have the message queued internally. 935 The operating system queue time is not to be considered as part 936 of the response time. Invalid messages do not cause this value 937 to change. If no valid messages have been received, then this 938 object contains a zero value." 940 ::= { bootpOptionalStatistics 5 }-- /*renamed*/ 942 bootpStatMaxResponseTime OBJECT-TYPE 943 SYNTAX DhcpTimeInterval 944 MAX-ACCESS read-only 945 STATUS current 946 DESCRIPTION 947 "The largest time interval measured as the difference between 948 the arrival of a BOOTP message at the server and the successful 949 transmission of the response to that message. A message is 950 received at the server when the server is able to begin 951 processing the message. A message is transmitted after the 952 server has no further use for the message. Note that the 953 operating system may still have the message queued internally. 955 The operating system queue time is not to be considered as part 956 of the response time. Invalid messages do not cause this value 957 to change. If no valid messages have been received, then this 958 object contains a zero value." 959 ::= { bootpOptionalStatistics 6 }-- /*renamed*/ 961 bootpStatSumResponseTime OBJECT-TYPE 962 SYNTAX Counter32 963 MAX-ACCESS read-only 964 STATUS current 965 DESCRIPTION 966 "The sum of the response time intervals in milliseconds where a 967 response time interval is measured as the difference between 968 the arrival of a BOOTP message at the server and the successful 969 transmission of the response to that message. A message is 970 received at the server when the server is able to begin 971 processing the message. A message is transmitted after the 972 server has no further use for the message. Note that the 973 operating system may still have the message queued internally. 975 The operating system queue time is not to be considered as part 976 of the response time. Invalid messages do not cause this value 977 to change. If no valid messages have been received, then this 978 object contains a zero value." 979 ::= { bootpOptionalStatistics 7 }-- /*renamed*/ 981 bootpStatSumSquaresResponseTime OBJECT-TYPE 982 SYNTAX Counter64 983 MAX-ACCESS read-only 984 STATUS current 985 DESCRIPTION 986 "The sum of the squared BOOTP packet response times in micro- 987 seconds. This value may be used to compute the variance and 988 standard deviation of the BOOTP response times. Note that a 989 microsecond resolution of this object requires a clock 990 resolution to the millisecond since the square of a millisecond 991 value produces a value with microsecond resolution." 992 ::= { bootpOptionalStatistics 8 }-- /*renamed*/ 994 -- server configurationgroup 996 -- server shared network table 998 serverSharedNetworkTable OBJECT-TYPE 999 SYNTAX SEQUENCE OF serverSharedNetworkEntry 1000 MAX-ACCESS not-accessible 1001 STATUS current 1002 DESCRIPTION 1003 "A list of shared networks that are configured in the server. 1004 A shared network is the logical aggregation of one or more 1005 subnets that share a common network segment (e.g., multi-tapped 1006 coaxial cable, wiring hub, or switch). This table is present 1007 ONLY for those servers that organize the ranges of addresses 1008 available for assignment where a higher-level grouping (i.e., 1009 the "shared" network) exists above ranges and subnets." 1010 ::= { serverConfiguration 1 } 1012 serverSharedNetworkEntry OBJECT-TYPE 1013 SYNTAX ServerSharedNetworkEntry 1014 MAX-ACCESS not-accessible 1015 STATUS current 1016 INDEX { serverSharedNetworkName } 1017 DESCRIPTION 1018 "A logical row in the serverSharedNetworkTable." 1019 ::= { serverSharedNetworkTable 1} 1021 ServerSharedNetworkEntry ::= SEQUENCE { 1022 serverSharedNetworkName DhcpLabel, 1023 serverSharedNetworkFreeAddresses Unsigned32, 1024 serverSharedNetworkReservedAddresses Unsigned32,-- /*new*/ 1025 serverSharedNetworkTotalAddresses Unsigned32-- /*renamed*/ 1026 } 1028 serverSharedNetworkName OBJECT-TYPE 1029 SYNTAX DhcpLabel-- /*modified*/ 1030 MAX-ACCESS not-accessible 1031 STATUS current 1032 DESCRIPTION 1033 "The name of the shared network, which uniquely identifies an 1034 entry in the serverSharedNetworkTable." 1035 ::= { serverSharedNetworkEntry 1 } 1037 serverSharedNetworkFreeAddresses OBJECT-TYPE-- /*renamed*/ 1038 SYNTAX Unsigned32 1039 MAX-ACCESS accessible-for-notify 1040 STATUS current 1041 DESCRIPTION 1042 "The number of IP addresses which are available within this 1043 shared network. If the server does not count free addresses by 1044 shared network segment, this value will be zero." 1045 ::= { serverSharedNetworkEntry 2 }-- /*renumbered*/ 1047 serverSharedNetworkReservedAddresses OBJECT-TYPE-- /*new*/ 1048 SYNTAX Unsigned32 1049 MAX-ACCESS accessible-for-notify 1050 STATUS current 1051 DESCRIPTION 1052 "The number of IP addresses which are reserved (not available 1053 for assignement) within this shared network. If the server 1054 does not count reserved addresses by shared network segment, 1055 this value will be zero." 1056 ::= { serverSharedNetworkEntry 3 } 1058 serverSharedNetworkTotalAddresses OBJECT-TYPE-- /*new*/ 1059 SYNTAX Unsigned32 1060 MAX-ACCESS accessible-for-notify 1061 STATUS current 1062 DESCRIPTION 1063 "The number of IP addresses which are available within this 1064 shared network. If the server does not count total addresses 1065 by shared network segment, this value will be zero." 1066 ::= { serverSharedNetworkEntry 4 } 1068 -- server subnet table 1070 serverSubnetTable OBJECT-TYPE 1071 SYNTAX SEQUENCE OF serverSubnetEntry 1072 MAX-ACCESS not-accessible 1073 STATUS current 1074 DESCRIPTION 1075 "A list of subnets that are configured in this server." 1076 ::= { serverConfiguration 2 } 1078 serverSubnetEntry OBJECT-TYPE 1079 SYNTAX ServerSubnetEntry 1080 MAX-ACCESS not-accessible 1081 STATUS current 1082 INDEX { serverSubnet } 1083 DESCRIPTION 1084 "A logical row in the serverSubnetTable." 1085 ::= { serverSubnetTable 1 } 1087 ServerSubnetEntry ::= SEQUENCE { 1088 serverSubnet IpAddress, 1089 serverSubnetMask IpAddress, 1090 serverSubnetSharedNetworkName DhcpLabel,-- /*modified*/ 1091 serverSubnetFreeAddressLowThreshold Unsigned32, 1092 serverSubnetFreeAddressHighThreshold Unsigned32, 1093 ServerSubnetFreeAddresses Unsigned32 -- /*renamed*/ 1094 } 1096 serverSubnet OBJECT-TYPE 1097 SYNTAX IpAddress 1098 MAX-ACCESS read-only-- /*changed*/ 1099 STATUS current 1100 DESCRIPTION 1101 "The IP address of the subnet." 1102 ::= { serverSubnetEntry 1 } 1104 serverSubnetMask OBJECT-TYPE 1105 SYNTAX IpAddress 1106 MAX-ACCESS read-only 1107 STATUS current 1108 DESCRIPTION 1109 "The subnet mask of the subnet. This MUST be the same as the 1110 value of DHCP option 1 offered to clients on this subnet." 1111 ::= { serverSubnetEntry 2 } 1113 serverSubnetSharedNetworkName OBJECT-TYPE-- /*renamed*/ 1114 SYNTAX DhcpLabel-- /*modified*/ 1115 MAX-ACCESS read-only 1116 STATUS current 1117 DESCRIPTION 1118 "The shared subnet name (used as an index into the server 1119 shared subnet table) to which this subnet belongs. This value 1120 will be null for servers that do not organize or describe 1121 networks in this manner." 1122 ::= { serverSubnetEntry 3 } 1124 serverSubnetFreeAddressLowThreshold OBJECT-TYPE 1125 SYNTAX Unsigned32 1126 MAX-ACCESS accessible-for-notify 1127 STATUS current 1128 DESCRIPTION 1129 "The low threshold for available free addresses in this subnet. 1130 If the value for available free addresses in this subnet 1131 becomes equal to or less than this value, a 1132 serverSubnetFreeAddressLowThreshold event is generated for this 1133 shared network. No more serverSubnetFreeAddressLowThreshold 1134 events will be generated for this subnet during this execution 1135 of the DHCP server until the value for available free addresses 1136 has exceeded the value of 1137 serverSubnetFreeAddressHighThreshold." 1139 ::= { serverSubnetEntry 4 } 1141 serverSharedNetworkFreeAddressHighThreshold OBJECT-TYPE 1142 SYNTAX Unsigned32 1143 MAX-ACCESS accessible-for-notify 1144 STATUS current 1145 DESCRIPTION 1146 "The high threshold for available free addresses in this 1147 subnet. If a serverSubnetFreeAddressLowThreshold event has 1148 been generated for this subnet, and the value for available 1149 free addresses has exceeded the value of 1150 serverSubnetFreeAddressHighThreshold, then a 1151 serverFreeAddressessHigh event will be generated. No more 1152 serverFreeAddressessHigh events will be generated for this 1153 subnet during this execution of the DHCP server until the value 1154 for available free addresses becomes equal to or less than the 1155 value of serverSubnetFreeAddressHighThreshold." 1156 ::= { serverSubnetEntry 5 } 1158 -- server range table 1160 serverRangeTable OBJECT-TYPE 1161 SYNTAX SEQUENCE OF serverRangeEntry 1162 MAX-ACCESS not-accessible 1163 STATUS current 1164 DESCRIPTION 1165 "A list of ranges that are configured on this server." 1166 ::= { serverConfiguration 3 } 1168 serverRangeEntry OBJECT-TYPE 1169 SYNTAX ServerRangeEntry 1170 MAX-ACCESS not-accessible 1171 STATUS current 1172 INDEX { serverRangeStart } 1173 DESCRIPTION 1174 "A logical row in the serverRangeTable." 1175 ::= { serverRangeTable 1 } 1177 ServerRangeEntry ::= SEQUENCE { 1178 serverRangeStart IpAddress, 1179 serverRangeEnd IpAddress, 1180 serverRangeSubnetMask IpAddress, 1181 serverRangeInUse Gauge32, 1182 serverRangeOutstandingOffers Gauge32 1183 } 1185 serverRangeStart OBJECT-TYPE 1186 SYNTAX IpAddress 1187 MAX-ACCESS read-only 1188 STATUS current 1189 DESCRIPTION 1190 "The IP address of the first address in the range. The value 1191 of range start must be less than or equal to the value of range 1192 end." 1193 ::= { serverRangeEntry 1 } 1195 serverRangeEnd OBJECT-TYPE 1196 SYNTAX IpAddress 1197 MAX-ACCESS read-only 1198 STATUS current 1199 DESCRIPTION 1200 "The IP address of the last address in the range. The value of 1201 range end must be greater than or equal to the value of range 1202 start." 1203 ::= { serverRangeEntry 2 } 1205 serverRangeSubnetMask OBJECT-TYPE 1206 SYNTAX IpAddress 1207 MAX-ACCESS read-only 1208 STATUS current 1209 DESCRIPTION 1210 "The subnet address mask for this range." 1211 ::= { serverRangeEntry 3 } 1213 serverRangeInUse OBJECT-TYPE 1214 SYNTAX Gauge32 1215 MAX-ACCESS read-only 1216 STATUS current 1217 DESCRIPTION 1218 "The number of addresses in this range that are currently in 1219 use. This number includes those addresses whose lease has not 1220 expired and addresses which have been reserved (either by the 1221 server or through configuration)." 1222 ::= { serverRangeEntry 4 } 1224 serverRangeOutstandingOffers OBJECT-TYPE 1225 SYNTAX Gauge32 1226 MAX-ACCESS read-only 1227 STATUS current 1228 DESCRIPTION 1229 "The number of outstanding DHCPOFFER messages for this range is 1230 reported with this value. An offer is outstanding if the 1231 server has sent a DHCPOFFER message to a client, but has not 1232 yet received a DHCPREQUEST message from the client nor has the 1233 server-specific timeout (limiting the time in which a client 1234 can respond to the offer message) for the offer message 1235 expired." 1236 ::= { serverRangeEntry 5 } 1238 -- server address table 1240 serverAddressTable OBJECT-TYPE 1241 SYNTAX SEQUENCE OF serverAddressEntry 1242 MAX-ACCESS not-accessible 1243 STATUS current 1244 DESCRIPTION 1245 "An optional list of addresses that are known by this server. 1246 The list MUST contain addresses that have not expired. The 1247 list MUST NOT contain addresses that have never been assigned 1248 by the server UNLESS the lease is pre-configured in the server 1249 (e.g., a static lease for a host). Expired leases MAY appear 1250 during the time they are 'remembered' by the server for 1251 subsequent assignment to the same host." 1252 ::= { serverConfiguration 4 } 1254 serverAddressEntry OBJECT-TYPE 1255 SYNTAX ServerAddressEntry 1256 MAX-ACCESS not-accessible 1257 STATUS current 1258 INDEX { serverAddress } 1259 DESCRIPTION 1260 "A logical row in the serverAddressTable." 1261 ::= { serverAddressTable 1 } 1263 ServerAddressEntry ::= SEQUENCE { 1264 serverAddress IpAddress, 1265 serverAddressSubnetMask IpAddress, 1266 serverAddressRange IpAddress, 1267 serverAddressType INTEGER, 1268 serverAddressTimeRemaining Unsigned32, 1269 serverAddressAllowedProtocol INTEGER, 1270 serverAddressServedProtocol INTEGER, 1271 serverAddressMacAddress OCTET STRING, 1272 serverAddressClientId OCTET STRING, 1273 serverAddressHostName DisplayString, 1274 serverAddressDomainName DisplayString 1275 } 1277 serverAddress OBJECT-TYPE 1278 SYNTAX IpAddress 1279 MAX-ACCESS not-accessible 1280 STATUS current 1281 DESCRIPTION 1282 "The IP address of the entry." 1283 ::= { serverAddressEntry 1 } 1285 serverAddressSubnetMask OBJECT-TYPE 1286 SYNTAX IpAddress 1287 MAX-ACCESS read-only 1288 STATUS current 1289 DESCRIPTION 1290 "The subnet mask (DHCP option 1) provided to the client offered 1291 this address. The subnet, resulting from logically ANDing the 1292 subnet mask with the entry's IP address, must be configured on 1293 this server and appear as a row in the dhcpSubnetTable." 1294 ::= { serverAddressEntry 2 } 1296 serverAddressRange OBJECT-TYPE 1297 SYNTAX IpAddress 1298 MAX-ACCESS read-only 1299 STATUS current 1300 DESCRIPTION 1301 "The starting IP address (serverRangeStart object) of the range 1302 to which this address belongs. If the address does not fall 1303 into one of the configured ranges (e.g., a statically 1304 configured address on a subnet) the range may be 0.0.0.0." 1305 ::= { serverAddressEntry 3 } 1307 serverAddressType OBJECT-TYPE 1308 SYNTAX INTEGER { 1309 static(1), 1310 dynamic(2), 1311 expired(3), -- /*new*/ 1312 configuration-reserved(4), -- /*renumbered*/ 1313 server-reserved(5) -- /*renumbered*/ 1314 } 1315 MAX-ACCESS read-only 1316 STATUS current 1317 DESCRIPTION 1318 "The type of this address. Types are: 1319 (1) static addresses defined by the server configuration. 1320 (2) dynamic addresses defined by the server configuration 1321 AND actually assigned by the server. 1322 (3) expired dynamic addresses, previously assigned by the 1323 server and 'remembered' for subsequent assignment to the 1324 same host. 1325 (4) Addresses reserved (i.e., not assignable) by the server 1326 configuration. 1327 (5) Addresses previously assigned by the server, but 1328 temporarily or permanently removed from assignable state 1329 for some reason, e.g., the server received an ICMP 1330 ECHOREPLY for the IP address or a DHCPDECLINE message 1331 has been received for the IP address." 1332 ::= { serverAddressEntry 4 } 1334 serverAddressTimeRemaining OBJECT-TYPE 1335 SYNTAX Unsigned32 1336 MAX-ACCESS read-only 1337 STATUS current 1338 DESCRIPTION 1339 "The number of seconds until the lease expires. A value of 1340 4294967295 (i.e., 0xFFFFFFFF) should be used for leases that 1341 have a lease time which is 'infinite' and for BOOTP leases." 1342 ::= { serverAddressEntry 5 } 1344 serverAddressAllowedProtocol OBJECT-TYPE 1345 SYNTAX INTEGER { 1346 none(1), 1347 bootp(2), 1348 dhcp(3), 1349 bootp-or-dhcp(4) 1350 } 1351 MAX-ACCESS read-only 1352 STATUS current 1353 DESCRIPTION 1354 "The type of protocol that is allowed to be used to serve this 1355 address. A type of none (1) indicates that the address is not 1356 available to be served (e.g., a reserved address).Type (2) are 1357 reserved for BOOTP only devices, while type (3) are reserved 1358 for DHCP only devices. A type of bootp-or-dhcp (4) may be 1359 offered to any type of client." 1360 ::= { serverAddressEntry 6 } 1362 serverAddressServedProtocol OBJECT-TYPE 1363 SYNTAX INTEGER { 1364 none(1), 1365 bootp(2), 1366 dhcp(3) 1367 } 1368 MAX-ACCESS read-only 1369 STATUS current 1370 DESCRIPTION 1371 "The type of protocol that was used when this address was 1372 assigned. This object will have the value of none (1) if the 1373 address has not been served." 1374 ::= { serverAddressEntry 7 } 1376 serverAddressHardwareAddress OBJECT-TYPE 1377 SYNTAX PhysicalAddress 1378 MAX-ACCESS read-only 1379 STATUS current 1380 DESCRIPTION 1381 "The hardware type and hardware address of the client that has 1382 been assigned this lease. The first octet of this object 1383 contains the hardware type from the 'htype' field of the BOOTP 1384 packet and the remaining octets contain the hardware address 1385 from the 'chaddr' field of the BOOTP packet. This object may 1386 be empty if the address has not been previously served." 1388 ::= { serverAddressEntry 8 } 1390 serverAddressClientId OBJECT-TYPE 1391 SYNTAX OCTET STRING (SIZE (0..255)) 1392 MAX-ACCESS read-only 1393 STATUS current 1394 DESCRIPTION 1395 "The client-id of the client that has been assigned this lease. 1396 The client-id is the value specified in option 61 (client-id 1397 option) when the lease was assigned. This object may be empty 1398 if the lease has not been previously assigned or if the client- 1399 id option was not specified when the address was assigned." 1400 ::= { serverAddressEntry 9 } 1402 serverAddressHostName OBJECT-TYPE 1403 SYNTAX DisplayString (SIZE (1..255)) 1404 MAX-ACCESS read-only 1405 STATUS current 1406 DESCRIPTION 1407 "The host name (DHCP option 12) the client is configured to 1408 use, or if no host name was configured then the host name that 1409 the client supplied when requesting an address. While this 1410 object has a maximum size of 255 octets, a Fully-Qualified 1411 Domain Name (FQDN) consisting of a Host Name part and a Domain 1412 Name part is currently limited to 255 octets. Therefore, the 1413 sum of the string lengths for this object and the 1414 serverAddressDomainName must, in practice, be less than 256 1415 octets." 1416 ::= { serverAddressEntry 10 } 1418 serverAddressDomainName OBJECT-TYPE 1419 SYNTAX DisplayString (SIZE (1..255)) 1420 MAX-ACCESS read-only 1421 STATUS current 1422 DESCRIPTION 1423 "The domain name (DHCP option 15) assigned to the client. 1424 While this object has a maximum size of 255 octets, a Fully- 1425 Qualified Domain Name (FQDN) consisting of a Host Name part and 1426 a Domain Name part is currently limited to 255 octets, less the 1427 separator (".") character. Therefore, the sum of the string 1428 lengths for this object and the serverAddressHostName must, in 1429 practice, be less than 256 octets." 1430 ::= { serverAddressEntry 11 } 1432 -- Server Client Table 1434 serverClientTable OBJECT-TYPE 1435 SYNTAX SEQUENCE OF serverClientEntry 1436 MAX-ACCESS not-accessible 1437 STATUS current 1438 DESCRIPTION 1439 "A list of clients that are known by this server. Details 1440 about the clients may be found by indexing into the 1441 serverAddressTable using the serverClientHardwareAddress and 1442 serverClientAddress objects. This table is indexed first by 1443 the MAC address of the client and then by the subnet address on 1444 which the client resides. The subnet is included as an index 1445 since a MAC address is only guaranteed to be unique within a 1446 subnet (i.e., a MAC address is not globally unique)." 1447 ::= { serverConfiguration 5 } 1449 serverClientEntry OBJECT-TYPE 1450 SYNTAX ServerClientEntry 1451 MAX-ACCESS not-accessible 1452 STATUS current 1453 INDEX { serverClientHardwareAddress, serverClientAddress } 1454 DESCRIPTION 1455 "A logical row in the serverClientTable. An entry in this 1456 table may be a client that requested an address but was refused 1457 (e.g., not authorized).Servers MAY track these types of clients 1458 if desired and may choose to remove such client entries using a 1459 server defined algorithm. As an example, a server may choose 1460 to keep client request that does not map to an address for a 1461 one hour time period before removing that entry from this 1462 table." 1463 ::= { serverClientTable 1 } 1465 ServerClientEntry ::= SEQUENCE { 1466 serverClientHardwareAddress PhysicalAddress 1467 serverClientSubnetMask IpAddress, 1468 serverClientAddress IpAddress, 1469 serverClientLastRequestTime DateAndTime, 1470 serverClientLastRequestType INTEGER, 1471 serverClientLastResponseType INTEGER 1472 } 1474 serverClientHardwareAddress OBJECT-TYPE 1475 SYNTAX PhysicalAddress 1476 MAX-ACCESS not-accessible 1477 STATUS current 1478 DESCRIPTION 1479 "The hardware type and hardware address of the client that has 1480 been assigned this lease. The first octet of this object 1481 contains the hardware type from the 'htype' field of the BOOTP 1482 packet and the remaining octets contain the hardware address 1483 from the 'chaddr' field of the BOOTP packet." 1484 ::= { serverClientEntry 1 } 1486 serverClientSubnetMask OBJECT-TYPE 1487 SYNTAX IpAddress 1488 MAX-ACCESS not-accessible 1489 STATUS current 1490 DESCRIPTION 1491 "The subnet mask (DHCP option 1) applied to 1492 serverClientAddress." 1493 ::= { serverClientEntry 2 } 1495 serverClientAddress OBJECT-TYPE 1496 SYNTAX IpAddress 1497 MAX-ACCESS read-only 1498 STATUS current 1499 DESCRIPTION 1500 "The IP address of the entry. May be used to index into the 1501 serverAddressTable. May be 0.0.0.0 if an address is not 1502 associated with this client." 1503 ::= { serverClientEntry 3 } 1505 serverClientLastRequestTime OBJECT-TYPE 1506 SYNTAX DhcpTimeInterval 1507 MAX-ACCESS read-only 1508 STATUS current 1509 DESCRIPTION 1510 "The timestamp of the last request received, to millisecond 1511 precision if available on the server." 1512 ::= { serverClientEntry 4 } 1514 serverClientLastRequestType OBJECT-TYPE 1515 SYNTAX INTEGER { 1516 bootprequest(0) 1517 dhcpdiscover(1), 1518 dhcprequest(3), 1519 dhcpdecline(4), 1520 dhcprelease(7), 1521 dhcpinform(8) 1522 dhcpleasequery(TBD),-- /*new*/ 1523 } 1524 MAX-ACCESS read-only 1525 STATUS current 1526 DESCRIPTION 1527 "The type of the last request message received for this 1528 client.If the server does not capture this information, the 1529 value 32,767 is returned." 1530 REFERENCE 1531 "RFC2131; RFC2132, section 9.6; draft-ietf-dhc-leasequery- 1532 02.txt." 1533 ::= { serverClientEntry 5 } 1535 serverClientLastResponseType OBJECT-TYPE 1536 SYNTAX INTEGER { 1537 bootpreply(1), 1538 dhcpoffer(2), 1539 dhcpack(5), 1540 dhcpnak(6) 1541 dhcpknown(TBD),-- /*new*/ 1542 dhcpunknown(TBD)-- /*new*/ 1543 } 1544 MAX-ACCESS read-only 1545 STATUS current 1546 DESCRIPTION 1547 "The type of the last response message sent to this client. If 1548 the server does not capture this information, the value 32,767 1549 is returned." 1550 REFERENCE 1551 "RFC2131; RFC2132, section 9.6;draft-ietf-dhc-pv4-reconfigure- 1552 06.txt;draft-ietf-dhc-leasequery-02.txt" 1553 ::= { serverClientEntry 6 } 1555 --serverNotifyObjects: Objects which are used only in notifications 1557 serverNotifyDuplicateIPAddress OBJECT-TYPE 1558 SYNTAX IpAddress 1559 MAX-ACCESS accessible-for-notify 1560 STATUS current 1561 DESCRIPTION 1562 "The IP address found to be a duplicate. Duplicates are 1563 detected by servers which issue an ICMP ECHOREQUEST prior to 1564 offering an IP address lease." 1565 ::= { serverNotifyObjects 1 } 1567 serverNotifyDuplicateMAC OBJECT-TYPE 1568 SYNTAX PhysicalAddress 1569 MAX-ACCESS accessible-for-notify 1570 STATUS current 1571 DESCRIPTION 1572 "The offending MAC address which caused a duplicate IP address 1573 to be detected, if captured by the server, else 00-00-00-00-00- 1574 00." 1575 ::= { serverNotifyObjects 2 } 1577 serverNotifyClientDuplicateIP OBJECT-TYPE-- /*renamed*/ 1578 SYNTAX IpAddress 1579 MAX-ACCESS accessible-for-notify 1580 STATUS current 1581 DESCRIPTION 1582 "The IP Address offered by a server that the requesting client 1583 has determined to be a duplicate, detected by means of a 1584 gratuitous ARP message and reported through a DHCPDECLINE 1585 message." 1587 ::= { serverNotifyObjects 3 } 1589 -- Notifications 1591 serverMIBNotificationPrefix OBJECT IDENTIFIER 1592 ::= { serverMIB 2 }serverMIBNotifications OBJECT IDENTIFIER 1593 ::= { serverMIBNotificationPrefix 0 } 1595 serverFreeAddressLow NOTIFICATION-TYPE 1596 OBJECTS { 1597 serverSharedNetworkFreeAddressLowThreshold, 1598 serverSharedNetworkFreeAddresses 1599 } 1600 STATUS current 1601 DESCRIPTION 1602 "This notification signifies that the number of available IP 1603 addresses for a particular shared network has fallen below the 1604 value of serverSharedNetworkFreeAddressLowThreshold for that 1605 shared network." 1606 ::= { serverMIBNotifications 1 } 1608 serverFreeAddressHigh NOTIFICATION-TYPE 1609 OBJECTS { 1610 serverSharedNetworkFreeAddressHighThreshold, 1611 serverSharedNetworkFreeAddresses 1612 } 1613 STATUS current 1614 DESCRIPTION 1615 "This notification signifies that the number of available IP 1616 addresses for a particular shared network has risen above the 1617 value of serverSharedNetworkFreeAddressHighThreshold for that 1618 shared network." 1619 ::= { serverMIBNotifications 2 } 1621 serverServerStart NOTIFICATION-TYPE 1622 OBJECTS { serverNotifyClientDuplicateIP } 1623 STATUS current 1624 DESCRIPTION 1625 "This notification signifies that the server of the specified 1626 type has started on the host from which this notification has 1627 been sent." 1628 ::= { serverMIBNotifications 3 } 1630 serverServerStop NOTIFICATION-TYPE 1631 OBJECTS { serverNotifyClientDuplicateIP } 1632 STATUS current 1633 DESCRIPTION 1634 "This notification signifies that the server of the specified 1635 type has stopped normally on the host from which this 1636 notification has been sent." 1637 ::= { serverMIBNotifications 4 } 1639 serverDuplicateAddress NOTIFICATION-TYPE 1640 OBJECTS { 1641 serverNotifyDuplicateIPAddress, 1642 serverNotifyDuplicateMAC, 1643 serverNotifyClientDuplicateMAC 1644 } 1645 STATUS current 1646 DESCRIPTION 1647 "This notification signifies that a duplicate IP address has 1648 been detected. The DHCP server can detect this condition 1649 through the ping-before-offer mechanism. Alternatively, the 1650 client may have sent a DHCPDECLINE back to the server; this is 1651 assumed to be the result of the client detecting that the 1652 address was in use. In either case, the DHCP server marks the 1653 IP address as unavailable for leasing to clients. The 1654 serverNotifyClientDuplicateMAC object indicates whether the 1655 client or server detected this condition." 1656 ::= { serverMIBNotifications 5 }-- /*renumbered*/ 1658 serverAddressConflict NOTIFICATION-TYPE 1659 OBJECTS { serverNotifyClientDuplicateIP } 1660 STATUS current 1661 DESCRIPTION 1662 ::= { serverMIBNotifications 6 }-- /*renumbered*/ 1664 -- Conformance 1666 serverMIBConformanceOBJECT-IDENTITY 1667 STATUS current 1668 DESCRIPTION 1669 "DHCP Server MIB objects are all defined in this branch." 1670 ::= { serverMIB 3 } 1672 serverMIBCompliancesOBJECT IDENTIFIER 1673 ::= { serverMIBConformance 1 } 1675 serverMIBGroupsOBJECT IDENTIFIER 1676 ::= { serverMIBConformance 2 } 1678 -- Compliance groups 1680 serverMIBCompliance MODULE-COMPLIANCE 1681 MODULE-- this module 1682 MANDATORY-GROUPS { 1683 serverSystemGroup, 1684 bootpCountersGroup, 1685 dhcpCountersGroup, 1686 serverConfigurationGroup, 1687 serverClientsGroup 1688 } 1689 OPTIONAL-GROUPS { 1690 bootpOptionalStatisticsGroup, 1691 dhcpOptionalStatisticsGroup 1692 } 1693 STATUS current 1694 DESCRIPTION 1695 "Describes the requirements for conformance to the DCHP Server 1696 MIB" 1697 ::= { serverMIBCompliances 1 } 1699 -- Object groups 1701 serverSystemGroup OBJECT-GROUP 1702 OBJECTS { 1703 serverSystemDescr, 1704 serverSystemObjectID 1705 } 1706 STATUS current 1707 DESCRIPTION 1708 "Objects belonging to the serverSystemGroup." 1709 ::= { serverMIBGroups 1 } 1711 bootpCountersGroup OBJECT-GROUP 1712 OBJECTS { 1713 bootpCountRequests, 1714 bootpCountInvalids, 1715 bootpCountReplies, 1716 bootpCountDroppedUnknownClients, 1717 bootpCountDroppedNotServingSubnet 1718 } 1719 STATUS current 1720 DESCRIPTION 1721 "Objects belonging to the bootpBountersGroup." 1722 ::= { serverMIBGroups 2 } 1724 dhcpCountersGroup OBJECT-GROUP 1725 OBJECTS { 1726 dhcpCountDiscovers, 1727 dhcpCountRequests, 1728 dhcpCountReleases, 1729 dhcpCountDeclines, 1730 dhcpCountInforms, 1731 dhcpCountInvalids, 1732 dhcpCountOffers, 1733 dhcpCountAcks, 1734 dhcpCountNacks, 1735 dhcpCountDroppedUnknownClient, 1736 dhcpCountDroppedNotServingSubnet 1737 } 1738 STATUS current 1739 DESCRIPTION 1740 "Objects belonging to the dhcpCountersGroup." 1741 ::= { serverMIBGroups 3 } 1743 bootpOptionalStatisticsGroup OBJECT-GROUP 1744 OBJECTS { 1745 bootpStatMinArrivalInterval, 1746 bootpStatMaxArrivalInterval, 1747 bootpStatLastArrivalTime, 1748 bootpStatSumSquaresArrivalTime, 1749 bootpStatMinResponseTime, 1750 bootpStatMaxResponseTime, 1751 bootpStatSumReponseTime, 1752 bootpStatSumSquaresResponseTime 1753 } 1754 STATUS current 1755 DESCRIPTION 1756 "Objects belonging to the bootpOptionalStatisticsGroup." 1757 ::= { serverMIBGroups 4 } 1759 dhcpOptionalStatisticsGroup OBJECT-GROUP 1760 OBJECTS { 1761 dhcpStatMinArrivalInterval, 1762 dhcpStatMaxArrivalInterval, 1763 dhcpStatLastArrivalTime, 1764 dhcpStatSumSquaresArrivalTime, 1765 dhcpStatMinResponseTime, 1766 dhcpStatMaxResponseTime, 1767 dhcpStatSumResponseTime, 1768 dhcpStatSumSquaresResponseTime 1769 } 1770 STATUS current 1771 DESCRIPTION 1772 "Objects belonging to the dhcpOptionalStatisticsGroup." 1773 ::= { serverMIBGroups 5 } 1775 serverConfigurationGroup OBJECT-GROUP 1776 OBJECTS { 1777 serverSubnet, 1778 serverSubnetMask, 1779 serverSubnetSharedNetwork, 1780 serverRangeStart, 1781 serverRangeEnd, 1782 serverRangeSubnetMask, 1783 serverRangeInUse, 1784 serverRangeOutstandingOffers, 1785 serverAddress, 1786 serverAddressSubnetMask, 1787 serverAddressRange, 1788 serverAddressType, 1789 serverAddressTimeRemaining, 1790 serverAddressAllowedProtocol, 1791 serverAddressServedProtocol, 1792 serverAddressHardwareAddress, 1793 serverAddressClientId, 1794 serverAddressHostName, 1795 serverAddressDomainName 1796 } 1797 STATUS current 1798 DESCRIPTION 1799 "Objects belonging to the serverConfigurationGroup." 1800 ::= { serverMIBGroups 6 } 1802 serverClientsGroup OBJECT-GROUP 1803 OBJECTS { 1804 serverClientHardwareAddress, 1805 serverClientSubnetMask, 1806 serverClientAddress, 1807 serverClientLastRequestTime, 1808 serverClientLastRequestType, 1809 serverClientLastResponseType 1810 } 1811 STATUS current 1812 DESCRIPTION 1813 "Objects belonging to the serverClientsGroup." 1814 ::= { serverMIBGroups 7 } 1816 serverSharedNetworkObjectsGroup OBJECT-GROUP 1817 OBJECTS { 1818 serverSharedNetworkFreeAddressLowThreshold, 1819 serverSharedNetworkFreeAddressHighThreshold, 1820 serverSharedNetworkFreeAddressValue 1821 } 1822 STATUS current 1823 DESCRIPTION 1824 "DHCP Server MIB objects used in shared networks." 1825 ::= { serverMIBGroups 8 } 1827 serverNotifyObjectsGroup OBJECT-GROUP 1828 OBJECTS { 1829 serverNotifyDuplicateIPAddress, 1830 serverNotifyDuplicateMAC, 1831 serverNotifyClientDuplicateMAC, 1832 serverNotifyClientDuplicateIP, 1833 serverNotifyContestedIpAddress 1834 } 1835 STATUS current 1836 DESCRIPTION 1837 "DHCP Server MIB objects used in notifications." 1838 ::= { serverMIBGroups 9 } 1840 serverNotificationsGroup NOTIFICATION-GROUP 1841 NOTIFICATIONS { 1842 serverFreeAddressLow, 1843 serverFreeAddressHigh, 1844 serverServerStart, 1845 serverServerStop, 1846 serverDNSQueueTooBig, 1847 serverOtherServerNotResponding, 1848 serverDuplicateAddress, 1849 serverAddressConflict, 1850 serverOtherServerResponding, 1851 serverFailoverConfigMismatch 1852 } 1853 STATUS current 1854 DESCRIPTION 1855 "Notifications that are implemented by the DHCP Server agent." 1856 ::= { serverMIBGroups 10 } 1858 END 1860 4. Intellectual Property 1862 The IETF takes no position regarding the validity or scope of any 1863 intellectual property or other rights that might be claimed to 1864 pertain to the implementation or use of the technology described in 1865 this document or the extent to which any license under such rights 1866 might or might not be available; neither does it represent that it 1867 has made any effort to identify any such rights. Information on the 1868 IETF's procedures with respect to rights in standards-track and 1869 standards-related documentation can be found in BCP-11. 1871 Copies of claims of rights made available for publication and any 1872 assurances of licenses to be made available, or the result of an 1873 attempt made to obtain a general license or permission for the use of 1874 such proprietary rights by implementers or users of this 1875 specification can be obtained from the IETF Secretariat. 1877 The IETF invites any interested party to bring to its attention any 1878 copyrights, patents or patent applications, or other proprietary 1879 rights that may cover technology that may be required to practice 1880 this standard. Please address the information to the IETF Executive 1881 Director. 1883 5. Notes 1885 This section will be removed when this memo goes to Working Group 1886 Last Call. 1888 5.1. Issues 1890 Not all of these issues have been resolved, even in the latest (-07) 1891 draft. Some may become items for future study, while some will 1892 probably be dropped. 1894 o Are placeholders for expected DHCP option values a good or bad 1895 idea? 1897 o Ryan Troll proposed four or five traps that Nathan Lane 1898 enthusiastically supported, but it has been difficult to achieve 1899 any consensus (or, for that matter, much interest) in them. 1901 o What is the best way to reset counters and statistics? Is it 1902 necessary to reset them at all? The -07 draft does not declare 1903 any counters as read-write or read-create, primarily to avoid 1904 these questions, as well as to provide fundamental security over 1905 objects. 1907 -- Do we need to reset them individually, as groups, or as a 1908 whole? 1910 -- Do we need a timestamp of when they were reset? 1912 o Should all invalid packets received be collapsed into a single 1913 counter for each protocol type (BOOTP and DHCP), or broken out by 1914 type of error? 1916 o If counted by error type, what is the set of errors that we should 1917 use? 1919 o Perhaps we should develop a common vocabulary (and glossary) for 1920 terms such as "abandoned" so that the objects defined and their 1921 descriptions aren't misinterpreted by implementers. 1923 o Do we need to be concerned about the potential size of some of the 1924 configuration data tables? Wouldn't it be better to maintain 1925 counters for things like number of leases assigned than to expect 1926 the management station to calculate the values by reading very 1927 large tables to count the number of leases in that state? 1929 5.2. Changes from Prior Drafts 1931 The "-01" revision removed the Server Identity section from the 1932 proposed MIB, relying on the Application MIB to accomplish the same 1933 result. 1935 The min/max (inter-arrival and response times) were changed to 1936 Unsigned32 so that they could be reset. Sums of inter-arrival and 1937 response times were deleted since the management station can easily 1938 calculate them. The last arrival time objects were added. 1940 The "-03" version incorporated the proposed configuration tables 1941 suggested by Ryan Troll of CMU. The "01" revision of this version 1942 added three elements to the server subnet table, number of 1943 outstanding offers, number of addresses in use, and number of free 1944 addresses, as well as changing subnet address to subnet mask in the 1945 server address, server range, and client address tables. The client 1946 MAC address element of the client address table was separated into a 1947 1-octet hardware type and a 16-octet client hardware address, causing 1948 a renumbering of the elements in this table. Clarifying text was 1949 added to several element descriptions, and limitations on values, and 1950 the reported value when the server did not support the data element 1951 were also specified. This version also incorporated an address 1952 change for one of the authors, revisions to standard text required by 1953 the IETF, and some editorial clarifications. 1955 The "-04" version changed the maximum size of the object 1956 serverAddressHostName from 64 to 255 octets, and added clarifying 1957 text to both that object and to serverAddressDomainName regarding the 1958 practical values for the length of both objects. 1960 The "-05" version added a number of traps suggested by Kim Kinnear, 1961 made a number of small renaming and renumbering changes (annotated in 1962 the MIB itself) and added the Shared Network concept to describe 1963 shared network segments: several subnetworks that coexist on one 1964 medium. This was done partly because the Address Range concept did 1965 not adequately describe the "scoping" of address pools as is common 1966 with many current server implementations. Also updated the author�s 1967 address and contact information, and incorporated a number of 1968 corrections and amplifications suggested by various readers of the "- 1969 04" draft, including a missing OID for serverNotifyObjects and a 1970 syntax error for PhysicalAddress. 1972 The "-06" version corrects a number of flaws reported by Rick Geesen 1973 and Jin Tao, mostly caused by typographical errors in the "-05" 1974 version as well as some unintentionally omitted text for 1975 serverNotifyObjects. 1977 The "-07" version changes BOOTP and DHCP statistics from mandatory to 1978 optional, renaming object identifiers as required to match. All 1979 objects, tables, and groups in previous drafts for Dynamic DNS 1980 updating and Failover have been removed. All tables were carefully 1981 examined to be certain that they really could be simply implemented. 1982 Many items were renamed or renumbered. Placeholder definitions of 1983 message types (both requests and responses) were added to support 1984 DHCPFORCERENEW, DHCPQUERY, DHCPKNOWN, and DHCPUNKNOWN. A few [more] 1985 typographical errors were found and fixed. Because of an error 1986 posting the �07 draft to the editor's queue it was not accepted in 1987 time for IETF-52 and is being submitted to the Internet-Drafts editor 1988 with one change identified by Alan Hackert. Finally, some of the 1989 initial text was brought in line with standard requirements for 1990 Internet-Drafts. 1992 6. Acknowledgements 1994 This document is the result of work undertaken the by DHCP working 1995 group. The editors would like to particularly acknowledge the 1996 development team from Carnegie-Mellon University whose work creating 1997 a private MIB for their DHCP server inspired the development of this 1998 proposal. In particular, many thanks to Ryan Troll who provided a 1999 great deal of useful feedback during the development of this MIB. 2001 Thanks to Ryan Troll, Nathan Lane, Kim Kinnear, Yannick Koehler, 2002 Nathan Lane, Rick Geesen, Jin Tao, James Brister, and Alan Hackert 2003 for their review, comments, and contributions. 2005 7. Security Considerations 2007 There are no management objects defined in this MIB that have a MAX- 2008 ACCESS clause of read-write or read-create. Such objects may be 2009 considered sensitive or vulnerable in some environments. The support 2010 for SET operations in a non-secure environment without proper 2011 protection can have a negative effect on network operations. Many 2012 network administrators object to settable management objects because 2013 of the limited security features of SNMPv1 and SNMPv2. We have 2014 chosen not to fight that battle in constructing this MIB. 2016 SNMPv1 by itself is not a secure environment. Even if the network 2017 itself is secure (for example by using IPSEC), there is no control as 2018 to who on the secure network is allowed to access and GET / SET (read 2019 / change / create / delete) the objects in this MIB. 2021 SNMPv2 communities provide a minimal level of access control, but it 2022 is recommended that the implementers consider the security features 2023 as provided by the SNMPv3 framework. Specifically, the use of the 2024 User-based Security Model [RFC2274] and the View-based Access Control 2025 Model [RFC2275] is recommended. 2027 It is then a customer/user responsibility to ensure that the SNMP 2028 entity giving access to an instance of this MIB, is properly 2029 configured to give access to the objects only to those principals 2030 (users) that have legitimate rights to indeed GET or SET 2031 (change/create/delete) them. 2033 Denial of Service attacks on a DHCP server are conceivable by 2034 flooding the SNMP (sub-)agent with requests, tying up host system and 2035 server resources processing SNMP messages. The authors know of no 2036 way to wholly prevent such attacks, but have attempted to construct 2037 relatively simple tables to minimize the work required to respond to 2038 messages. 2040 8. References 2042 [DEN] Directory Enabled Networks Working Group, 2043 http://www.universe.digex.net/~murchiso/den. 2045 [RFC1123] R. Braden, "Requirements for Internet Hosts -- Application 2046 and Support," RFC 1123, October 1989. 2048 [RFC2287] Krupczak, R., and J. Saperia, "Definitions of System-Level 2049 Managed Objects for Applications," RFC 2287, February 1998. 2051 [RFC2578] Case, J., McCloghrie, K., Perkins, D., Rose, M., 2052 Schoenwaelder, J., and S. Waldbusser, "Structure of Management 2053 Information for Version 2 of the Simple Network Management Protocol 2054 (SNMPv2)," RFC 2578, April 1999. 2056 [RFC2579] Case, J., McCloghrie, K., Rose, M., Schoenwaelder, J., and 2057 S. Waldbusser, "Textual Conventions for Version 2 of the Simple 2058 Network Management Protocol (SNMPv2)," RFC 2579, April 1999. 2060 [RFC2580] Case, J., McCloghrie, K., Rose, M., Schoenwaelder, J., and 2061 S. Waldbusser, "Conformance Statements for Version 2 of the Simple 2062 Network Management Protocol (SNMPv2)," RFC 2580, April 1999. 2064 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 2065 Requirement Levels," RFC 2119, BCP 14, March 1997. 2067 [RFC2131] Droms, R., "Dynamic Host Configuration Protocol," RFC 2131, 2068 March 1997. 2070 [RFC2132] Alexander, S. and Droms, R., "DHCP Options and BOOTP Vendor 2071 Extensions," RFC 2132, March 1997. 2073 [RFC2287] Krupczak, C. and Saperia, J., "Definitions of System-Level 2074 Managed Objects for Applications," RFC 2287, February 1998. 2076 , Yves T'Joens and Christian 2077 Hublet, Peter De Schrijver, "The DHCP Reconfigure Extension," July 2078 2001 2080 , Rich Woundy and Kim Kinnear, 2081 "DHCP Lease Query," July 2001 2083 9. Editors' Addresses 2085 Richard Barr Hibbs 2086 952 Sanchez Street 2087 San Francisco, California 94114-3362 2088 USA 2090 Phone: +1-(415)-648-3920 2091 Fax: +1-(415)-648-9017 2092 Email: rbhibbs@pacbell.net 2094 Glenn Waters 2095 Nortel Networks 2096 310-875 Carling Avenue, 2097 Ottawa, Ontario K1S 5P1 2098 Canada 2100 Phone: +1-(613)-798-4925 2101 Email: gww@NortelNetworks.com 2103 10. Full Copyright Statement 2105 Copyright (C) The Internet Society, 2002.All Rights Reserved. 2107 This document and translations of it may be copied and furnished to 2108 others, and derivative works that comment on or otherwise explain it 2109 or assist in its implementation may be prepared, copied, published 2110 and distributed, in whole or in part, without restriction of any 2111 kind, provided that the above copyright notice and this paragraph are 2112 included on all such copies and derivative works.However, this 2113 document itself may not be modified in any way, such as by removing 2114 the copyright notice or references to the Internet Society or other 2115 Internet organizations, except as needed for the purpose of 2116 developing Internet standards in which case the procedures for 2117 copyrights defined in the Internet Standards process must be 2118 followed, or as required to translate it into languages other than 2119 English. 2121 The limited permissions granted above are perpetual and will not be 2122 revoked by the Internet Society or its successors or assigns. 2124 This document and the information contained herein is provided on an 2125 "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING 2126 TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING 2127 BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION 2128 HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF 2129 MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.