DHCP-MIB DEFINITIONS ::= BEGIN
 
IMPORTS
        enterprises,
        OBJECT-TYPE
            FROM RFC1155-SMI
        DisplayString
            FROM RFC1213-MIB;
 
	metainfo	OBJECT IDENTIFIER ::= { enterprises 2871 }
	metaip		OBJECT IDENTIFIER ::= { metainfo 1 }

        dhcp            OBJECT IDENTIFIER ::= { metaip 1 }
        dhcpServ  	OBJECT IDENTIFIER ::= { dhcp 1 }
--        dhcpLeasePool  	OBJECT IDENTIFIER ::= { dhcp 2 }

 
-- DHCP MIB

    dhcpServIdent OBJECT-TYPE
       SYNTAX  DisplayString
       ACCESS  read-only
       STATUS  current
       DESCRIPTION
		"Implementation identification string for the DHCP Service."
	::= { dhcpServ 1 }

    dhcpServUpTime OBJECT-TYPE
       SYNTAX  Counter
       ACCESS  read-only
       STATUS  current
       DESCRIPTION
		"If the server has a persistent state (e.g., a process),
		this value will be the time elapsed in seconds since it
		started.  For software without persistant state, this
		value will be zero."
	::= { dhcpServ 2 }
		
   dhcpTotalDiscovers OBJECT-TYPE
       SYNTAX  Counter
       ACCESS  read-only
       STATUS  mandatory
       DESCRIPTION
		"Total number of DHCPDISCOVER packets received."
       ::= { dhcpServ 3 }

   dhcpServTotalRequests OBJECT-TYPE
       SYNTAX  Counter
       ACCESS  read-only
       STATUS  mandatory
       DESCRIPTION
		"Total number of DHCPREQUEST packets received."
       ::= { dhcpServ 4 }

   dhcpServTotalReleases OBJECT-TYPE
       SYNTAX  Counter
       ACCESS  read-only
       STATUS  mandatory
       DESCRIPTION
		"Total number of DHCPRELEASE packets received."
       ::= { dhcpServ 5 }

   dhcpServTotalOffers OBJECT-TYPE
       SYNTAX  Counter
       ACCESS  read-only
       STATUS  mandatory
       DESCRIPTION
		"Total number of DHCPOFFER packets sent."
       ::= { dhcpServ 6 }

   dhcpServTotalNoOfAcks OBJECT-TYPE
       SYNTAX  Counter
       ACCESS  read-only
       STATUS  mandatory
       DESCRIPTION
		"Total number of DHCPACK packets sent."
       ::= { dhcpServ 7 }

   dhcpServTotalNacks OBJECT-TYPE
       SYNTAX  Counter
       ACCESS  read-only
       STATUS  mandatory
       DESCRIPTION
		"Total number of DHCPNAK packets sent."
       ::= { dhcpServ 8 }

   dhcpServTotalDeclines OBJECT-TYPE
       SYNTAX  Counter
       ACCESS  read-only
       STATUS  mandatory
       DESCRIPTION
		"Total number of DHCPDECLINE packets received."
       ::= { dhcpServ 9 }

   dhcpServTotalInforms OBJECT-TYPE
       SYNTAX  Counter
       ACCESS  read-only
       STATUS  mandatory
       DESCRIPTION
		"Total number of DHCPINFORM packets received."
       ::= { dhcpServ 10 }

   dhcpServiceRole OBJECT-TYPE
       SYNTAX  INTEGER {
                   primary(0),
                   backup(1),
                   standalone(2)
               }
       ACCESS  read-only
       STATUS  mandatory
       DESCRIPTION
		"Role of the DHCP Service for Failover."
       ::= { dhcpServ 11 }

-- LeasePool Configuration Group 

   dhcpLeasePoolTable OBJECT-TYPE
       SYNTAX  SEQUENCE OF dhcpLeasePoolTableEntry
       ACCESS  not-accessible
       STATUS  mandatory
       DESCRIPTION
	       "A table of subnets maintained by the DHCP service."
       ::= { dhcp 2 }

   dhcpLeasePoolTableEntry  OBJECT-TYPE
       SYNTAX  DHCPLeasePoolTableEntry
       ACCESS  not-accessible
       STATUS  mandatory
       DESCRIPTION
		"Configuration and statistics for each lease pool."
      INDEX   { dhcpLeasePoolSubnetAddr }
       ::= { dhcpLeasePoolTable 1 }

   DHCPLeasePoolTableEntry ::= SEQUENCE {
	dhcpLeasePoolSubnetAddr
		IpAddress,

	dhcpLeasePoolSubnetMask
		IpAddress,

	dhcpLeasePoolAddrInUse
		Counter,

	dhcpLeasePoolTotalAddr
		Counter
	}

   dhcpLeasePoolSubnetAddr  OBJECT-TYPE
       SYNTAX  IpAddress
       ACCESS  read-only
       STATUS  mandatory
       DESCRIPTION
		"Subnet address for this lease pool definition."
       ::= { dhcpLeasePoolTableEntry 1 }

   dhcpLeasePoolSubnetMask  OBJECT-TYPE
       SYNTAX  IpAddress
       ACCESS  read-only
       STATUS  mandatory
       DESCRIPTION
		"Subnet mask for this lease pool definition."
       ::= { dhcpLeasePoolTableEntry 2 }

   dhcpLeasePoolAddrInUse  OBJECT-TYPE
      SYNTAX  Counter
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
	   	"Total number of leases currently in use for this lease pool."
      ::= { dhcpLeasePoolTableEntry 3 }

   dhcpLeasePoolTotalAddr  OBJECT-TYPE
      SYNTAX  Counter
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
	   	"Total number of leases contained in this lease pool."
      ::= { dhcpLeasePoolTableEntry 4 }

-- Traps

   dhcpLeaseIssued TRAP-TYPE
	ENTERPRISE  dhcp
	DESCRIPTION
		    "A LeaseIssued trap signifies that the DHCP
		  service has issued a new lease."
	::= 0

   dhcpLeaseShortage TRAP-TYPE
	ENTERPRISE  dhcp
	DESCRIPTION
		    "A LeaseShortage trap signifies that there is
		  a limited number of leases left for the DHCP
		  service to distribute."
	::= 1

   END
