--
-- comIpDhcpClient.mib
-- MIB generated by MG-SOFT Visual MIB Builder Version 2.1 Build 205
-- Tuesday, July 03, 2001 at 09:54:22
--

	ZHONE-COM-IP-DHCP-CLIENT-MIB DEFINITIONS ::= BEGIN

		IMPORTS 
			ifIndex			
				FROM IF-MIB			
			SnmpAdminString			
				FROM SNMP-FRAMEWORK-MIB			
			IpAddress, Unsigned32, Gauge32, Counter32, OBJECT-TYPE, 
			MODULE-IDENTITY, OBJECT-IDENTITY			
				FROM SNMPv2-SMI			
			ipInterfaceEntry			
				FROM ZHONE-COM-IP-REC-MIB			
			zhoneIp, zhoneModules, zhoneShelfIndex, zhoneSlotIndex			
				FROM Zhone			
			ZhoneAdminString			
				FROM Zhone-TC;
	
	
-- 
-- 
-- 
-- 
		comIpDhcpClient MODULE-IDENTITY
			LAST-UPDATED "200106281700Z"
			ORGANIZATION
				"Zhone Technologies, Inc."
			CONTACT-INFO
				"Postal: 
				           Zhone Technologies, Inc.
				           @ Zhone Way
				           7001 Oakport Street
				           Oakland, CA  94621
				           USA
				Toll-Free: +1 877-ZHONE20 (+1 877-946-6320)
				      Tel: +1-510-777-7000
				      Fax: +1-510-777-7001
				   E-mail: support@zhone.com"
			DESCRIPTION
				"DHCP Client MIB using SNMPv2 SMI.
				IP Software
				Minneapolis, MN"
			REVISION "200106281114Z"
			DESCRIPTION
				"V01.00.02 - fix 17 slot limit problem"
			REVISION "200009281700Z"
			DESCRIPTION
				"V01.00.01 - Updated markup"
			REVISION "200009111501Z"
			DESCRIPTION
				"V01.00.00 - Initial Release"
			::= { zhoneModules 51 }
		
	
	
--
-- Node definitions
--
	
		dhcpClient OBJECT-IDENTITY
			STATUS current
			DESCRIPTION
				"DHCP Client Resource."
			::= { zhoneIp 1 }
		
		dhcpClientResourceTable OBJECT-TYPE
			SYNTAX SEQUENCE OF DhcpClientResourceEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This table contains the configuration information for the
				DHCP clients on this system."
			::= { dhcpClient 1 }
		
		dhcpClientResourceEntry OBJECT-TYPE
			SYNTAX DhcpClientResourceEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"A row in the DHCP Client Table.  This table is indexed by
				the shelf and card on which the client runs.  These indices are
				external to this MIB module."
			INDEX { zhoneShelfIndex, zhoneSlotIndex }
			::= { dhcpClientResourceTable 1 }
		
		DhcpClientResourceEntry ::=
			SEQUENCE { 
				dhcpOfferTimeout
					Unsigned32,
				dhcpDefaultLease
					Unsigned32,
				dhcpMinLease
					Unsigned32,
				dhcpClientErrors
					Counter32,
				dhcpAvgTimeForLease
					Gauge32
			 }

-- 
		dhcpOfferTimeout OBJECT-TYPE
			SYNTAX Unsigned32 (0..100)
			UNITS "seconds"
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"Interval to get additional DHCP offers."
			DEFVAL { 5 }
			::= { dhcpClientResourceEntry 1 }
		
-- 
		dhcpDefaultLease OBJECT-TYPE
			SYNTAX Unsigned32 (100..604800)
			UNITS "seconds"
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"Default value for requested lease length.  This value should not be
				less than dhcpMinLease.  Maximum allowed value is one week
				(604800 seconds)."
			DEFVAL { 3600 }
			::= { dhcpClientResourceEntry 2 }
		
-- 
		dhcpMinLease OBJECT-TYPE
			SYNTAX Unsigned32 (1..604800)
			UNITS "seconds"
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"Minimum accepted lease length.  This value should not be greater than
				dhcpDefaultLease.  Maximum allowed value is 1 week (604,800 seconds)."
			DEFVAL { 300 }
			::= { dhcpClientResourceEntry 3 }
		
-- 
		dhcpClientErrors OBJECT-TYPE
			SYNTAX Counter32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of errors that DHCP client has encountered."
			::= { dhcpClientResourceEntry 4 }
		
-- 
		dhcpAvgTimeForLease OBJECT-TYPE
			SYNTAX Gauge32
			UNITS "seconds"
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Average time to obtain a lease."
			::= { dhcpClientResourceEntry 5 }
		
		dhcpInterfacesTable OBJECT-TYPE
			SYNTAX SEQUENCE OF DhcpInterfacesEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"Interface-specific DHCP configuration and state.  This table
				augments the IpInterfaceTable in comIpRec.mib."
			::= { dhcpClient 2 }
		
		dhcpInterfacesEntry OBJECT-TYPE
			SYNTAX DhcpInterfacesEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"Rows will be added as network interfaces are added."
			AUGMENTS { ipInterfaceEntry }
			::= { dhcpInterfacesTable 1 }
		
		DhcpInterfacesEntry ::=
			SEQUENCE { 
				dhcpInterfaceServerName
					SnmpAdminString,
				dhcpInterfaceRenew
					Unsigned32,
				dhcpInterfaceRebind
					Unsigned32,
				dhcpInterfaceBootFile
					SnmpAdminString,
				dhcpInterfaceTftp
					IpAddress,
				dhcpInterfaceHostname
					ZhoneAdminString,
				dhcpInterfaceDomainName
					SnmpAdminString,
				dhcpInterfaceVendorClassId
					OCTET STRING,
				dhcpInterfaceDhcpClientId
					OCTET STRING,
				dhcpInterfaceState
					INTEGER
			 }

-- 
		dhcpInterfaceServerName OBJECT-TYPE
			SYNTAX SnmpAdminString
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Name of the DHCP offering server."
			::= { dhcpInterfacesEntry 1 }
		
-- 
-- 
		dhcpInterfaceRenew OBJECT-TYPE
			SYNTAX Unsigned32
			UNITS "seconds"
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Seconds until DHCP renewal occurs"
			::= { dhcpInterfacesEntry 2 }
		
-- 
-- 
		dhcpInterfaceRebind OBJECT-TYPE
			SYNTAX Unsigned32
			UNITS "seconds"
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Seconds until DHCP rebind occurs"
			::= { dhcpInterfacesEntry 3 }
		
-- 
--  
-- 
		dhcpInterfaceBootFile OBJECT-TYPE
			SYNTAX SnmpAdminString (SIZE (0..128))
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Name of the bootfile."
			::= { dhcpInterfacesEntry 4 }
		
-- 
		dhcpInterfaceTftp OBJECT-TYPE
			SYNTAX IpAddress
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Tftp address for the current interface."
			::= { dhcpInterfacesEntry 5 }
		
-- 
--  
-- 
		dhcpInterfaceHostname OBJECT-TYPE
			SYNTAX ZhoneAdminString
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Name of the host.  This will not be a fully-qualified
				hostname."
			::= { dhcpInterfacesEntry 6 }
		
-- 
-- 
		dhcpInterfaceDomainName OBJECT-TYPE
			SYNTAX SnmpAdminString
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Name of the domain."
			::= { dhcpInterfacesEntry 7 }
		
-- 
--  
-- 
		dhcpInterfaceVendorClassId OBJECT-TYPE
			SYNTAX OCTET STRING (SIZE (1..255))
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Vendor Class ID."
			::= { dhcpInterfacesEntry 8 }
		
-- 
		dhcpInterfaceDhcpClientId OBJECT-TYPE
			SYNTAX OCTET STRING (SIZE (4..255))
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"DHCP Client Id."
			::= { dhcpInterfacesEntry 9 }
		
-- 
-- 
		dhcpInterfaceState OBJECT-TYPE
			SYNTAX INTEGER
				{
				init(1),
				reboot(2),
				bound(3),
				verify(4),
				release(5),
				invalid(6),
				bind(7)
				}
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"Current state of the lease.  The user can only set init, 
				verify and release."
			::= { dhcpInterfacesEntry 10 }
		
--   My define structure to add that is not in the MIB
--   typedef struct
--   {
--       U_Long timeStamp;
--       U_Long dataLen;
--       Char   buffer[1000];
--   } DHCP_Compressed_Lease
-- 
		dnsTable OBJECT-TYPE
			SYNTAX SEQUENCE OF DnsEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"list of dns servers for the current interface"
			::= { dhcpClient 3 }
		
		dnsEntry OBJECT-TYPE
			SYNTAX DnsEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"list of dns servers for the current interface"
			INDEX { ifIndex, dnsIpAddress }
			::= { dnsTable 1 }
		
		DnsEntry ::=
			SEQUENCE { 
				dnsIpAddress
					IpAddress
			 }

-- 
		dnsIpAddress OBJECT-TYPE
			SYNTAX IpAddress
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"IP Address of DNS server"
			::= { dnsEntry 1 }
		
		routersTable OBJECT-TYPE
			SYNTAX SEQUENCE OF RoutersEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"list of routers servers for the current interface"
			::= { dhcpClient 4 }
		
		routersEntry OBJECT-TYPE
			SYNTAX RoutersEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"list of routers server for the current interface"
			INDEX { ifIndex, routersIpAddress }
			::= { routersTable 1 }
		
		RoutersEntry ::=
			SEQUENCE { 
				routersIpAddress
					IpAddress
			 }

-- 
		routersIpAddress OBJECT-TYPE
			SYNTAX IpAddress
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"IP Address of routers"
			::= { routersEntry 1 }
		
	
	END

--
-- comIpDhcpClient.mib
--
