-- ***************************************************************** -- CISCO-IP-ADDRESS-POOL-MIB -- Definitions of managed objects describing IP address pools. -- -- February 2010, Patrick R. Gili -- -- Copyright (c) 2010 by Cisco Systems Inc. -- All rights reserved. -- ***************************************************************** CISCO-IP-ADDRESS-POOL-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, NOTIFICATION-TYPE, OBJECT-TYPE, Gauge32, Unsigned32 FROM SNMPv2-SMI MODULE-COMPLIANCE, NOTIFICATION-GROUP, OBJECT-GROUP FROM SNMPv2-CONF RowPointer, RowStatus, StorageType, TimeStamp, TruthValue FROM SNMPv2-TC InetAddressType, InetAddress, InetAddressPrefixLength FROM INET-ADDRESS-MIB IpAddrPoolInstanceIdentifier, IpAddrPoolInstanceIdentifierOrZero, IpAddressPoolNameOrNull, IpAddressPoolGroupName, IpAddressPoolGroupNameOrNull, IpAddressPoolThresholdUnits FROM CISCO-IP-ADDRESS-POOL-TC-MIB ciscoMgmt FROM CISCO-SMI; ciscoIpAddressPoolMIB MODULE-IDENTITY LAST-UPDATED "201006070000Z" ORGANIZATION "Cisco Systems, Inc." CONTACT-INFO "Cisco Systems, Inc. Customer Service Postal: 170 W Tasman Drive San Jose, CA 95134 Telephone: +1 800 553-NETS Email: cs-snmp@cisco.com" DESCRIPTION "This MIB modules defines objects that describe common aspects of IP address pools. IP Address Pool Manager ======================= The IP address pool manager consists of the software that maintains IP address pools and supports the following capabilities: - Create an IP address pool group. - Destroy an IP address pool group. - Create an IP address pool and add it to an IP address pool group. - Remove an IP address pool from an IP address pool group and destroy it. - Create a range of IP addresses and add it to an IP address pool. - Remove a range of IP addresses from an IP address pool and destroy it. - Allocate an IP address from an IP address pool. - Return a previously allocated IP address to the IP address pool that it was allocated from. - Create a set of IP prefixes and adding it to an IP address pool. - Remove a set of IP prefixes from an IP address pool and destroy it. - Allocate an IP prefix from an IP address pool. - Return a previously allocated IP prefix to the IP address pool that it was allocated from. IP Address Pool =============== An IP address pool consists of a collection of IP addresses from which a client (e.g., PPP or DHCP) can allocate an IP address for the purpose of assigning it to a remote peer. This collection consists of a one or more range of IP addresses. Observe that human interfaces allow a user to specify ranges of IP addresses using a variety of means to simplify the process. For example, a human interface may simply allow a user to specify a subnet. No matter what abstraction a human interface employs, the end result is always one or more range of IP addresses. Thus, this MIB module abstracts an IP address pool as one or more range of IP addresses. This places the burden on any application employing other abstractions to transform to the abstraction defined by this MIB module. Alternatively, an IP address pool can also consist of a collection of IP prefixes from which a client can allocate an IP prefix for the purpose of assigning it to a remote peer. This collection consists of one or more set of IP prefixes. Observe that the term 'IP prefix' here can refer to an IPv4 subnet or an IPv6 prefix. IP Address Pool Group ===================== An IP address pool group contains the IP address pools belonging to the same administrative domain. Examples of administrative domains include a Virtual Route Forwarding (VRF) instance and a Virtual Private Network (VPN). Observe that the IP addresses contained by the IP address pools in two distinct IP address pool groups may overlap. IP Address Pool Threshold Monitoring ==================================== An IP address pool manager maintains a number of gauges for the purpose of monitoring the number of allocated IP addresses. We refer to these gauges as 'in-use gauges'. Each in-use gauge has a corresponding state that can have one of two values: 1) Off The IP address pool manager monitors the number of allocated addresses or prefixes. If this value is greater than or equal to the configured rising threshold and the previous value was less than the same rising threshold, then the IP address manager transitions the state to 'On'. 2) On The IP address pool manager monitors the number of allocated addresses or prefixes. If the value is less than or equal to the configured falling threshold and the previous value was greater than the same falling threshold, then the IP address manager transitions the state to 'Off'. Observe that while the values of the configured rising and falling thresholds may be the same, this may result in undesirable behavior (i.e., the IP address pool manager may generate more threshold crossing notifications than desirable). The IP address pool manager only generates threshold crossing notifications when it transitions the corresponding state of an in-use gauge and the value of ciapSystemNotifyEnable is 'true'. The IP address pool manager may maintain in-use gauges for the following: - A range of IP addresses comprising an IP address pool - A set of IP prefixes comprising an IP address pool - An IP address pool - An IP address pool group Observe that the IP address pool manager must initialize the state of each in-use gauge to 'Off' for threshold monitoring to operate in the prescribed manner." REVISION "201002020000Z" DESCRIPTION "The initial version of the MIB module." ::= { ciscoMgmt 748 } -- ********************************************************************* -- * Textual Conventions * -- ********************************************************************* -- -- ********************************************************************* -- * Top-Level Trees * -- ********************************************************************* ciscoIpAddressPoolMIBNotifs OBJECT IDENTIFIER ::= { ciscoIpAddressPoolMIB 0 } ciscoIpAddressPoolMIBObjects OBJECT IDENTIFIER ::= { ciscoIpAddressPoolMIB 1 } ciscoIpAddressPoolMIBConform OBJECT IDENTIFIER ::= { ciscoIpAddressPoolMIB 2 } -- ********************************************************************* -- * Object Sub-trees * -- ********************************************************************* ciapGlobal OBJECT IDENTIFIER ::= { ciscoIpAddressPoolMIBObjects 1 } ciapPools OBJECT IDENTIFIER ::= { ciscoIpAddressPoolMIBObjects 2 } ciapPoolGroups OBJECT IDENTIFIER ::= { ciscoIpAddressPoolMIBObjects 3 } ciapAllocatedAddresses OBJECT IDENTIFIER ::= { ciscoIpAddressPoolMIBObjects 4 } ciapNotifyData OBJECT IDENTIFIER ::= { ciscoIpAddressPoolMIBObjects 5 } -- ********************************************************************* -- * Objects * -- ********************************************************************* ciapGlobalNotifyEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies whether the IP address pool manager generates notifications defined by this MIB module." DEFVAL { false } ::= { ciapGlobal 1 } ciapGlobalThresholdUnits OBJECT-TYPE SYNTAX IpAddressPoolThresholdUnits MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the units for ciapGlobalThresholdRising and ciapGlobalThresholdLow." DEFVAL { absolute } ::= { ciapGlobal 2 } ciapGlobalThresholdRising OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the default rising threshold for in-use gauges maintained by the IP address pool manager. This value must be greater than or equal to the value of ciapSystemThresholdFalling. For more detail, see the description of IP address pool threshold monitoring provided by the descriptive text associated with the MODULE-IDENTITY statement." DEFVAL { 0 } ::= { ciapGlobal 3 } ciapGlobalThresholdFalling OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the default falling threshold for in-use gauges maintained by the IP address pool manager. This value must be less than or equal to the value of ciapSystemThresholdRising. For more detail, see the description of IP address pool threshold monitoring provided by the descriptive text associated with the MODULE-IDENTITY statement." DEFVAL { 0 } ::= { ciapGlobal 4 } ciapPoolIdNext OBJECT-TYPE SYNTAX IpAddrPoolInstanceIdentifierOrZero MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the next available identifier for the creation of a new row in the ciapPoolTable. If no available identifier exists, then this object has the value '0'." ::= { ciapPools 1 } ciapPoolTable OBJECT-TYPE SYNTAX SEQUENCE OF CiapPoolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists the IP address pools maintained by the IP address pool manager." ::= { ciapPools 2 } ciapPoolEntry OBJECT-TYPE SYNTAX CiapPoolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry describes an single IP address pool. A peer SNMP entity may create an IP address pool by setting an instance of ciapPoolStatus to 'createAndWait' or 'createAndGo'. Observe that an implementation that does not support these options must specify these limitations in an agent capabilities statement. Other management entities (e.g., the local console) may perform actions resulting in the creation of an IP address pool. In these cases, the IP address pool manager must automatically create a row in the ciapPoolTable. A peer SNMP entity may destroy an IP address pool by setting the corresponding instance of ciapPoolStatus to 'destroy'. Observe that an implementation that does not support this option must specify this limitation in an agent capabilities statement. Other management entities may perform actions resulting in the destruction of an IP address pool. In these cases, the IP address pool manager must automatically destroy the corresponding row in the ciapPoolTable." INDEX { ciapPoolId } ::= { ciapPoolTable 1 } CiapPoolEntry ::= SEQUENCE { ciapPoolId IpAddrPoolInstanceIdentifier, ciapPoolStatus RowStatus, ciapPoolStorage StorageType, ciapPoolName IpAddressPoolNameOrNull, ciapPoolType INTEGER, ciapPoolContainedIn IpAddressPoolGroupNameOrNull, ciapPoolThresholdUnits IpAddressPoolThresholdUnits, ciapPoolThresholdRising Unsigned32, ciapPoolThresholdFalling Unsigned32, ciapPoolAddressesInUse Gauge32, ciapPoolAddressesFree Gauge32 } ciapPoolId OBJECT-TYPE SYNTAX IpAddrPoolInstanceIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object uniquely identifies the IP address pool." ::= { ciapPoolEntry 1 } ciapPoolStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the status of this IP address pool. The following columns must be valid before activating this IP address pool: - ciapPoolStorage - ciapPoolName - ciapPoolType - ciapPoolContainedIn - ciapPoolThresholdUnits - ciapPoolThresholdRising - ciapPoolThresholdFalling However, these objects specify valid default values. Thus, it is possible to use create-and-go row creation semantics without setting additional columns. An implementation must allow an EMS/NMS to modify any column when this IP address pool is 'active', including corresponding columns in tables that have a one-to-one or sparse dependent relationship on the ciapPoolTable. An implementation must document any variation in a corresponding agent capabilities statement." ::= { ciapPoolEntry 2 } ciapPoolStorage OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the memory realization of this IP address pool." DEFVAL { volatile } ::= { ciapPoolEntry 3 } ciapPoolName OBJECT-TYPE SYNTAX IpAddressPoolNameOrNull MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the name assigned to this IP address pool. This name must uniquely identify an IP address pool in the context of the IP address pool manager. Observe that an implementation may reserve names for special IP address pools. For example, an IP address may reserve the name 'default' to denote the default IP address pool. An implementation should document reserved names in a corresponding agent capabilities statement." DEFVAL { "" } ::= { ciapPoolEntry 4 } ciapPoolType OBJECT-TYPE SYNTAX INTEGER { other(1), shared(2), local(3), dhcp(4) } MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the how the system uses this IP address pool: 'other' The implementation of the MIB module does not recognize this IP address pool's type. 'shared' The system uses this IP address pool regardless of the entity (e.g., IPCP, IPsec, DHCP) allocating IP addresses from this IP address pool. Sometimes we use the term 'untyped pool' to refer to an IP address pool used in this manner. 'local' The system restricts the use this IP address pool to assign IP addresses to peers when establishing a connection (e.g., PPP and IPsec) to the system. 'dhcp' The system restricts the use of this IP address pool to a DHCP server." DEFVAL { shared } ::= { ciapPoolEntry 5 } ciapPoolContainedIn OBJECT-TYPE SYNTAX IpAddressPoolGroupNameOrNull MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the name of the IP address pool group to which this IP address pool belongs. If the value of this column is the null string, then the pool does not belong to any IP address pool group. Observe that an implementation may reserve names for special IP address pool groups. For example, an IP address may reserve the name 'default' to denote the default Virtual Route Forwarding (VRF) instance. An implementation should document reserved names in a corresponding agent capabilities statement." DEFVAL { "" } ::= { ciapPoolEntry 6 } ciapPoolThresholdUnits OBJECT-TYPE SYNTAX IpAddressPoolThresholdUnits UNITS "IP addresses" MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the units for the corresponding instances of ciapPoolThresholdRising and ciapPoolThresholdFalling. The value of ciapGlobalThresholdUnits.0 specifies the default value for newly created instances of this object." ::= { ciapPoolEntry 7 } ciapPoolThresholdRising OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the rising threshold for the in-use gauge corresponding to this IP address pool, which must have a value greater than or equal to the corresponding instance of ciapPoolThresholdFalling. If this value is '0' and the corresponding instance of ciapPoolThresholdFalling is '0', then the IP address pool manager does not monitor this IP address pool for threshold crossing events. The value of ciapGlobalThresholdRising.0 specifies the default value for newly created instances of this object. For more detail, see the description of IP address pool threshold monitoring provided by the descriptive text associated with the MODULE-IDENTITY statement." ::= { ciapPoolEntry 8 } ciapPoolThresholdFalling OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the falling threshold for the in-use gauge corresponding to this IP address pool, which must have a value less than or equal to the corresponding instance of ciapPoolThresholdRising. If this value is '0' and the corresponding instance of ciapPoolThresholdRising is '0', then the IP address pool manager does not monitor this IP address pool for threshold crossing events. The value of ciapGlobalThresholdFalling.0 specifies the default value for newly created instances of this object. For more detail, see the description of IP address pool threshold monitoring provided by the descriptive text associated with the MODULE-IDENTITY statement." ::= { ciapPoolEntry 9 } ciapPoolAddressesInUse OBJECT-TYPE SYNTAX Gauge32 UNITS "IP addresses/prefixes" MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the number of IP addresses or prefixes allocated from this IP address pool." ::= { ciapPoolEntry 10 } ciapPoolAddressesFree OBJECT-TYPE SYNTAX Gauge32 UNITS "IP addresses/prefixes" MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the number of available IP addresses or prefixes in this IP address pool." ::= { ciapPoolEntry 11 } ciapPoolTableChanged OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the value of sysUpTime the last time one of the following changes occurred to the ciapPoolTable: - A row was created and added to the ciapPoolTable. - A row was removed from the ciapPoolTable and destroyed. - An instance of an object in the row was modified, including objects contained by the ciapPoolTable and tables that have a one-to-one or sparse dependent relationship on the ciapPoolTable." ::= { ciapPools 3 } ciapRangeTable OBJECT-TYPE SYNTAX SEQUENCE OF CiapRangeEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists the ranges of IP addresses contained by each IP address pool maintained by the IP address pool manager." ::= { ciapPools 4 } ciapRangeEntry OBJECT-TYPE SYNTAX CiapRangeEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry describes a single range of IP addresses contained by an IP address pool. A peer SNMP entity may create a range of IP addresses by setting an instance of ciapRangeStatus to 'createAndWait' or 'createAndGo'. Observe that an implementation that does not support these options must specify these limitations in an agent capabilities statement. Other management entities (e.g., the local console) may perform actions resulting in the creation of a range of IP addresses. In these cases, the IP address pool manager must automatically create a row in the ciapRangeTable. A peer SNMP entity may destroy a range of IP addresses by setting the corresponding instance of ciapRangeStatus to 'destroy'. Observe that an implementation that does not support this option must specify this limitation in an agent capabilities statement. Other management entities may perform actions resulting in the destruction of a range of IP addresses. In these cases, the IP address pool manager must automatically destroy the corresponding row in the ciapRangeTable." INDEX { ciapPoolId, ciapRangeAddressType, ciapRangeAddressLower } ::= { ciapRangeTable 1 } CiapRangeEntry ::= SEQUENCE { ciapRangeAddressType InetAddressType, ciapRangeAddressLower InetAddress, ciapRangeStatus RowStatus, ciapRangeStorage StorageType, ciapRangeAddressUpper InetAddress, ciapRangeCacheSize Unsigned32, ciapRangeRecycleDelay Unsigned32, ciapRangePriority Unsigned32, ciapRangeThresholdUnits IpAddressPoolThresholdUnits, ciapRangeThresholdRising Unsigned32, ciapRangeThresholdFalling Unsigned32, ciapRangeAddressesInUse Gauge32, ciapRangeAddressesFree Gauge32 } ciapRangeAddressType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the type of IP address denoted by the ciapRangeAddressLower and ciapRangeAddressUpper." ::= { ciapRangeEntry 1 } ciapRangeAddressLower OBJECT-TYPE SYNTAX InetAddress (SIZE (4..16)) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the first IP address in this range of IP addresses." ::= { ciapRangeEntry 2 } ciapRangeStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the status of this range of IP addresses. The following columns must be valid before activating this range of IP addresses: - ciapRangeStorage - ciapRangeAddressUpper - ciapRangeCacheSize - ciapRangeRecycleDelay - ciapRangePriority - ciapRangeThresholdUnits - ciapRangeThresholdRising - ciapRangeThresholdFalling An implementation must allow an EMS/NMS to modify any column when this range of IP addresses is 'active', including corresponding columns in tables that have a one-to-one or sparse dependent relationship on the ciapRangeTable. An implementation must document any variation in a corresponding agent capabilities statement." ::= { ciapRangeEntry 3 } ciapRangeStorage OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the memory realization of this range of IP addresses." DEFVAL { volatile } ::= { ciapRangeEntry 4 } ciapRangeAddressUpper OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the last IP address in this range of IP addresses. This value must denote an IP address greater than or equal to the IP address indicated by the corresponding instance of ciapRangeAddressLower." ::= { ciapRangeEntry 5 } ciapRangeCacheSize OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) UNITS "IP addresses" MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the size of the address cache associated with this range of IP addresses. The address cache provides a list of IP addresses most recently returned to this range of IP addresses. The IP address pool manager always allocates IP addresses from the address cache first. If an implementation does not support address caching, then it must report a value of zero for this object and it must not allow write access to this object." DEFVAL { 0 } ::= { ciapRangeEntry 6 } ciapRangeRecycleDelay OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the time the IP address pool manager holds an IP address after its return before making it available for reallocation. Observe that the IP addresses held by the IP address pool manager are considered in use until actually returned to the pool. If an implementation does not support delayed recycling of IP addresses, then it must always report a value of zero for this object and it must not allow write access to this object." DEFVAL { 0 } ::= { ciapRangeEntry 7 } ciapRangePriority OBJECT-TYPE SYNTAX Unsigned32 (0..255) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the relative priority assigned to this range of IP addresses. The IP address pool manager allocates IP addresses from ranges of IP addresses based on a range's assigned priority, where higher values specify higher priority." DEFVAL { 0 } ::= { ciapRangeEntry 8 } ciapRangeThresholdUnits OBJECT-TYPE SYNTAX IpAddressPoolThresholdUnits MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the units for the corresponding instances of ciapRangeThresholdRising and ciapRangeThresholdFalling. The value of ciapGlobalThresholdUnits.0 specifies the default value for newly created instances of this object." ::= { ciapRangeEntry 9 } ciapRangeThresholdRising OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the rising threshold for the in-use gauge corresponding to this range of IP addresses, which must have a value greater than or equal to the corresponding instance of ciapRangeThresholdFalling. If this value is '0' and the corresponding instance of ciapRangeThresholdFalling is '0', then the IP address pool manager does not monitor this range of IP addresses for threshold crossing events. The value of ciapGlobalThresholdRising.0 specifies the default value for newly created instances of this object. For more detail, see the description of IP address pool threshold monitoring provided by the descriptive text associated with the MODULE-IDENTITY statement." ::= { ciapRangeEntry 10 } ciapRangeThresholdFalling OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the falling threshold for the in-use gauge corresponding to this range of IP addresses, which must have a value less than or equal to the corresponding instance of ciapRangeThresholdRising. If this value is '0' and the corresponding instance of ciapRangeThresholdRising is '0', then the IP address pool manager does not monitor this range of IP addresses for threshold crossing events. The value of ciapGlobalThresholdFalling.0 specifies the default value for newly created instances of this object. For more detail, see the description of IP address pool threshold monitoring provided by the descriptive text associated with the MODULE-IDENTITY statement." ::= { ciapRangeEntry 11 } ciapRangeAddressesInUse OBJECT-TYPE SYNTAX Gauge32 UNITS "IP addresses" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of IP addresses allocated from this range of IP addresses." ::= { ciapRangeEntry 12 } ciapRangeAddressesFree OBJECT-TYPE SYNTAX Gauge32 UNITS "IP addresses" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of available IP addresses in this range of IP addresses." ::= { ciapRangeEntry 13 } ciapRangeTableChanged OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the value of sysUpTime the last time one of the following changes occurred to the ciapRangeTable: - A row was created and added to the ciapRangeTable. - A row was removed from the ciapRangeTable and destroyed. - An instance of an object in the row was modified, including objects contained by the ciapRangeTable and tables that have a one-to-one or sparse dependent relationship on the ciapRangeTable." ::= { ciapPools 5 } ciapPrefixTable OBJECT-TYPE SYNTAX SEQUENCE OF CiapPrefixEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists the IP prefixes contained by each IP address pool maintained by the IP address pool manager." ::= { ciapPools 6 } ciapPrefixEntry OBJECT-TYPE SYNTAX CiapPrefixEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry describes a single set of IP prefixes contained by an IP address pool. In this context, an IP prefix also describes a IPv4 subnet. A peer SNMP entity may create a set of IP prefixes by setting an instance of ciapPrefixStatus to 'createAndWait' or 'createAndGo'. Observe that an implementation that does not support these options must specify these limitations in an agent capabilities statement. Other management entities (e.g., the local console) may perform actions resulting in the creation of a set of IP prefixes. In these cases, the IP address pool manager must automatically create a row in the ciapPrefixTable. A peer SNMP enitty may destroy a set of IP prefixes by setting the corresponding instance of ciapPrefixStatus to 'destroy'. Observe that an implementation that does not support this option must specify this limitation in an agent capabilities statement. Other management entities may perform action resulting in the destruction of a set of IP prefixes. In these cases, the IP address pool manager must automatically destroy the corresponding row in the ciapPrefixTable." INDEX { ciapPoolId, ciapPrefixType, ciapPrefixAddress, ciapPrefixAddressMask } ::= { ciapPrefixTable 1 } CiapPrefixEntry ::= SEQUENCE { ciapPrefixType InetAddressType, ciapPrefixAddress InetAddress, ciapPrefixAddressMask InetAddress, ciapPrefixStatus RowStatus, ciapPrefixStorage StorageType, ciapPrefixAssignedLength InetAddressPrefixLength, ciapPrefixCacheSize Unsigned32, ciapPrefixRecycleDelay Unsigned32, ciapPrefixPriority Unsigned32, ciapPrefixThresholdUnits IpAddressPoolThresholdUnits, ciapPrefixThresholdRising Unsigned32, ciapPrefixThresholdFalling Unsigned32, ciapPrefixPrefixesInUse Gauge32, ciapPrefixPrefixesFree Gauge32 } ciapPrefixType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the type of IP address denoted by ciapPrefixAddress and ciapPrefixMask." ::= { ciapPrefixEntry 1 } ciapPrefixAddress OBJECT-TYPE SYNTAX InetAddress (SIZE (4..16)) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the first IP prefix in this set of IP prefixes when bitwise AND'ed with the corresponding instance of ciapPrefixAddressMask." ::= { ciapPrefixEntry 2 } ciapPrefixAddressMask OBJECT-TYPE SYNTAX InetAddress (SIZE (4..16)) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates a mask which when bitwise AND'ed with the corresponding instance of ciapPrefixAddress yields the first IP prefix in this set of IP prefixes." ::= { ciapPrefixEntry 3 } ciapPrefixStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the status of this set of IP prefixes. The following columns must be valid before activating this range of IP addresses: - ciapPrefixStorage - ciapPrefixAssignedLength - ciapPrefixCacheSize - ciapPrefixRecycleDelay - ciapPrefixPriority - ciapPrefixThresholdUnits - ciapPrefixThresholdRising - ciapPrefixThresholdFalling An implementation must allow an EMS/NMS to modify any column when this set of IP prefixes is 'active', including corresponding columns in tables that have a one-to-one or sparse dependent relationship on the ciapPrefixTable. An implementation must document any variation in a corresponding agent capabilities statement." ::= { ciapPrefixEntry 4 } ciapPrefixStorage OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the memory realization of this set of IP prefixes." DEFVAL { volatile } ::= { ciapPrefixEntry 5 } ciapPrefixAssignedLength OBJECT-TYPE SYNTAX InetAddressPrefixLength MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the length of the IP prefix assigned from this set of IP prefixes. The value of this column must be greater than or equal to the length of the first IP prefix in this set of IP prefixes." ::= { ciapPrefixEntry 6 } ciapPrefixCacheSize OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) UNITS "IP prefixes" MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the size of the IP prefix cache associated with this set of IP prefixes. The IP prefix cache provides a list of IP prefixes most recently returned to this range of IP prefixes. The IP address pool manager always allocates IP prefixes from the IP prefix cache first. If an implementation does not support address caching, then it must report a value of zero for this object and it must not allow write access to this object." DEFVAL { 0 } ::= { ciapPrefixEntry 7 } ciapPrefixRecycleDelay OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the time the IP address pool manager holds an IP prefix after its return before making it available for reallocation. Observe that the IP prefixes held by the IP address pool manager are considered in use until actually returned to the pool. If an implementation does not support delayed recycling of IP prefixes, then it must always report a value of zero for this object and it must not allow write access to this object." DEFVAL { 0 } ::= { ciapPrefixEntry 8 } ciapPrefixPriority OBJECT-TYPE SYNTAX Unsigned32 (0..255) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the relative priority assigned to this set of IP prefixes. The IP address pool manager allocates IP prefixes from sets of IP prefixes based on a set's assigned priority, where higher values specify higher priority." DEFVAL { 0 } ::= { ciapPrefixEntry 9 } ciapPrefixThresholdUnits OBJECT-TYPE SYNTAX IpAddressPoolThresholdUnits MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the units for the corresponding instances of ciapPrefixThresholdRising and ciapPrefixThresholdFalling. The value of ciapGlobalThresholdUnits.0 specifies the default value for newly created instances of this object." ::= { ciapPrefixEntry 10 } ciapPrefixThresholdRising OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the rising threshold for the in-use gauge corresponding to this set of IP prefixes, which must have a value greater than or equal to the value of ciapPrefixThresholdFalling. If this value is '0' and the corresponding instance of ciapPrefixThresholdFalling is '0', then the IP address pool manager does not monitor this set of IP prefixes for threshold crossing events. The value of ciapGlobalThresholdRising.0 specifies the default value for newly created instances of this object. For more detail, see the description of IP address pool threshold monitoring provided by the descriptive text associated with the MODULE-IDENTITY statement." ::= { ciapPrefixEntry 11 } ciapPrefixThresholdFalling OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the falling threshold for the in-use gauge corresponding to this set of IP prefixes, which must have a value less than or equal to the corresponding instance of ciapPrefixThresholdRising. If this value is '0' and the corresponding instance of ciapPrefixThresholdRising is '0', then the IP address pool manager does not monitor this set of IP prefixes for threshold crossing events. The value of ciapGlobalThresholdFalling.0 specifies the default value for newly created instances of this object. For more detail, see the description of IP address pool threshold monitoring provided by the descriptive text associated with the MODULE-IDENTITY statement." ::= { ciapPrefixEntry 12 } ciapPrefixPrefixesInUse OBJECT-TYPE SYNTAX Gauge32 UNITS "IP prefixes" MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the number of IP prefixes allocated from this set of IP prefixes." ::= { ciapPrefixEntry 13 } ciapPrefixPrefixesFree OBJECT-TYPE SYNTAX Gauge32 UNITS "IP prefixes" MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the number of available IP prefixes in this set of IP prefixes." ::= { ciapPrefixEntry 14 } ciapPrefixTableChanged OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the value of sysUpTime the last time one of the following changes occurred to the ciapPrefixTable: - A row was created and added to the ciapPrefixTable. - A row was removed from the ciapPrefixTable and destroyed. - An instance of an object in the row was modified, including objects contained by the ciapPrefixTable and tables that have a one-to-one or sparse dependent relationship on the ciapPrefixTable." ::= { ciapPools 7 } ciapPoolGroupIdNext OBJECT-TYPE SYNTAX IpAddrPoolInstanceIdentifierOrZero MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the next available identifier for the creation of a new row in the ciapPoolGroupTable. If no available identifier exists, then this object has the value '0'." ::= { ciapPoolGroups 1 } ciapPoolGroupTable OBJECT-TYPE SYNTAX SEQUENCE OF CiapPoolGroupEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists the IP address pool groups maintained by the IP address pool manager." ::= { ciapPoolGroups 2 } ciapPoolGroupEntry OBJECT-TYPE SYNTAX CiapPoolGroupEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry describes an IP address pool group. The IP address pool manager creates an IP address pool group and inserts it into the ciapPoolGroupTable when an entity sets the value of an instance of ciapPoolContainedIn to a value that no other IP address pool belongs to. Likewise, the IP address pool manager removes an IP address pool group from the ciapPoolGroupTable and destroys it when no IP address pools belong to it." INDEX { ciapPoolGroupId } ::= { ciapPoolGroupTable 1 } CiapPoolGroupEntry ::= SEQUENCE { ciapPoolGroupId IpAddrPoolInstanceIdentifier, ciapPoolGroupName IpAddressPoolGroupName, ciapPoolGroupThresholdUnits IpAddressPoolThresholdUnits, ciapPoolGroupThresholdRising Unsigned32, ciapPoolGroupThresholdFalling Unsigned32, ciapPoolGroupAddressesInUse Gauge32, ciapPoolGroupAddressesFree Gauge32 } ciapPoolGroupId OBJECT-TYPE SYNTAX IpAddrPoolInstanceIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object uniquely identifies the IP address pool group." ::= { ciapPoolGroupEntry 1 } ciapPoolGroupName OBJECT-TYPE SYNTAX IpAddressPoolGroupName MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the name assigned to the IP address pool group." ::= { ciapPoolGroupEntry 2 } ciapPoolGroupThresholdUnits OBJECT-TYPE SYNTAX IpAddressPoolThresholdUnits MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the units for the corresponding instances of ciapPoolGroupThresholdRising and ciapPoolGroupThresholdFalling. The value of ciapGlobalThresholdUnits.0 specifies the default value for newly created instances of this object." ::= { ciapPoolGroupEntry 3 } ciapPoolGroupThresholdRising OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the rising threshold for the in-use gauge corresponding to this IP address pool group, which must have a value greater than or equal to the corresponding instance of ciapPoolGroupThresholdFalling. If this value is '0' and the corresponding instance of ciapPoolGroupThresholdRising is '0', then the IP address pool manager does not monitor this IP address pool group for threshold crossing events. The value of ciapGlobalThresholdRising.0 specifies the default value for newly created instances of this object. For more detail, see the description of IP address pool threshold monitoring provided by the descriptive text associated with the MODULE-IDENTITY statement." ::= { ciapPoolGroupEntry 4 } ciapPoolGroupThresholdFalling OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the falling threshold for the in-use gauge corresponding to this IP address pool group, which must have a value less than or equal to the corresponding instance of ciapPoolGroupThresholdRising. If this value is '0' and the corresponding instance of ciapPoolGroupThresholdFalling is '0', then the IP address pool manager does not monitor this IP address pool group for threshold crossing events. The value of ciapGlobalThresholdFalling.0 specifies the default value for newly created instances of this object. For more detail, see the description of IP address pool threshold monitoring provided by the descriptive text associated with the MODULE-IDENTITY statement." ::= { ciapPoolGroupEntry 5 } ciapPoolGroupAddressesInUse OBJECT-TYPE SYNTAX Gauge32 UNITS "IP addresses/prefixes" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the total number of IP addresses or prefixes allocated from IP address pools in this IP address pool group." ::= { ciapPoolGroupEntry 6 } ciapPoolGroupAddressesFree OBJECT-TYPE SYNTAX Gauge32 UNITS "IP addresses/prefixes" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the total number of available IP addresses or prefixes in the IP address pools in this IP address pool group." ::= { ciapPoolGroupEntry 7 } ciapPoolGroupContainsTable OBJECT-TYPE SYNTAX SEQUENCE OF CiapPoolGroupContainsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists the IP address pools contained by each IP address pool group maintained by the IP address pool manager." ::= { ciapPoolGroups 3 } ciapPoolGroupContainsEntry OBJECT-TYPE SYNTAX CiapPoolGroupContainsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry identifies a single IP address pool contained by an IP address pool group. The IP address pool manager creates a row in the ciapPoolGroupContainsTable upon creation of a row in the ciapPoolTable. Likewise, the IP address pool manager destroys a row in the ciapPoolGroupContainsTable upon the destruction of a row in the ciapPoolTable." INDEX { ciapPoolGroupId, ciapPoolGroupContainsId } ::= { ciapPoolGroupContainsTable 1 } CiapPoolGroupContainsEntry ::= SEQUENCE { ciapPoolGroupContainsId IpAddrPoolInstanceIdentifier } ciapPoolGroupContainsId OBJECT-TYPE SYNTAX IpAddrPoolInstanceIdentifier MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the IP address pool contained by the corresponding IP address pool group." ::= { ciapPoolGroupContainsEntry 1 } ciapAllocatedAddressTable OBJECT-TYPE SYNTAX SEQUENCE OF CiapAllocatedAddressEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists of the IP addresses, IPv4 subnets, and IPv6 prefixes allocated from the IP address pools maintained by the IP address pool manager." ::= { ciapAllocatedAddresses 1 } ciapAllocatedAddressEntry OBJECT-TYPE SYNTAX CiapAllocatedAddressEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry describes a single IP address, IPv4 subnet, or IPv6 prefix allocated from an IP address pool maintained by the IP address pool manager. The IP address pool manager creates a row in the ciapAllocatedAddressTable when it successfully allocates an IP address, IPv4 subnet, or IPv6 prefix from an IP address pool. Likewise, the IP address pool manager destroys a row in the ciapAllocatedAddressTable when it returns an IP address, IPv4 subnet, or IPv6 prefix to the IP address pool that it was previously allocated from." INDEX { ciapPoolId, ciapAllocatedAddressType, ciapAllocatedAddress } ::= { ciapAllocatedAddressTable 1 } CiapAllocatedAddressEntry ::= SEQUENCE { ciapAllocatedAddressType InetAddressType, ciapAllocatedAddress InetAddress, ciapAllocatedAddressMask InetAddress } ciapAllocatedAddressType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the type of IP address for the corresponding instance of ciapAllocatedAddress." ::= { ciapAllocatedAddressEntry 1 } ciapAllocatedAddress OBJECT-TYPE SYNTAX InetAddress (SIZE (4..16)) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the IP address, IPv4 subnet, or IPv6 prefix allocated from the corresponding IP address pool." ::= { ciapAllocatedAddressEntry 2 } ciapAllocatedAddressMask OBJECT-TYPE SYNTAX InetAddress (SIZE (4..16)) MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates a mask for the corresponding instance of ciapAllocatedAddress. If the value of this column is all 1's, then the corresponding instance of ciapAllocatedAddress denotes an IP address. If the value of this column is not all 1's and the corresponding instance of ciapAllocatedAddressType is 'ipv4', then the corresponding instance of ciapAllocatedAddress denotes an IPv4 subnet when logically ANDed with the value of this column. If the value of this column is not all 1's and the corresponding instance of ciapAllocatedAddressType is 'ipv6', then the corresponding instance of ciapAllocatedAddress denotes an IPv6 prefix when logically ANDed with the value of this column." ::= { ciapAllocatedAddressEntry 3 } ciapNotifyResource OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This object indicates the resource for which the in-use gauge crosses a threshold the last time the system generated a ciapEventThresholdRising or ciapEventThresholdFalling notification. More specifically, this object indicates a row pointer corresponding to the resource, which may be one a row in one of the following tables: - ciapPoolGroupTable to indicate the in-use gauge associated with an IP address pool group has crossed a threshold. - ciapPoolTable to indicate the in-use gauge associated with an IP address pool has crossed a threshold. - ciapRangeTable to indicate the in-use gauge associated with a range of IP addresses has crossed a threshold. - ciapNetworkTable to indicate the in-use gauge associated with a set of IP networks (which includes IPv4 subnets and IPv6 prefixes) has crossed a threshold." ::= { ciapNotifyData 1 } ciapNotifyThresholdUnits OBJECT-TYPE SYNTAX IpAddressPoolThresholdUnits MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This object indicates the units for: 1) ciapNotifyThresholdRising the last time the system generated a ciapEventThresholdRising notification, or 2) ciapNotifyThresholdFalling the last time the system generated a ciapEventThresholdFalling notification." ::= { ciapNotifyData 2 } ciapNotifyThresholdRising OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This object indicates the rising threshold an in-use gauge crossed the last time the system generated a ciapEventThresholdRising notification." ::= { ciapNotifyData 3 } ciapNotifyThresholdFalling OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This object indicates the falling threshold an in-use gauge cross the last time the system generated a ciapEventThresholdFalling notification." ::= { ciapNotifyData 4 } ciapNotifyInUse OBJECT-TYPE SYNTAX Gauge32 UNITS "IP addresses/prefixes" MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This object indicates the value of the in-use gauge that crossed a threshold the last time the system generated a ciapEventThresholdRising or ciapEventThresholdFalling notification." ::= { ciapNotifyData 5 } ciapNotifyFree OBJECT-TYPE SYNTAX Gauge32 UNITS "IP addresses/prefixes" MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This object indicates the value of the corresponding free gauge the last time the system generated a ciapThresholdRising or ciapThresholdFalling notification." ::= { ciapNotifyData 6 } -- ********************************************************************* -- * Notifications * -- ********************************************************************* ciapEventThresholdRising NOTIFICATION-TYPE OBJECTS { ciapNotifyResource, ciapNotifyThresholdUnits, ciapNotifyThresholdRising, ciapNotifyInUse, ciapNotifyFree } STATUS current DESCRIPTION "The system generates this notification when the IP address pool manager transitions the state of the in-use gauge associated with a resource from 'Off' to 'On'. For more detail, see the description of IP address pool threshold monitoring provided by the descriptive text associated with the MODULE-IDENTITY statement." ::= { ciscoIpAddressPoolMIBNotifs 1 } ciapEventThresholdFalling NOTIFICATION-TYPE OBJECTS { ciapNotifyResource, ciapNotifyThresholdUnits, ciapNotifyThresholdFalling, ciapNotifyInUse, ciapNotifyFree } STATUS current DESCRIPTION "The system generates this notification when the IP address pool manager transitions the state of the in-use gauge associated with a resource from 'On' to 'Off'. For more detail, see the description of IP address pool threshold monitoring provided by the descriptive text associated with the MODULE-IDENTITY statement." ::= { ciscoIpAddressPoolMIBNotifs 2 } -- ********************************************************************* -- * Conformance * -- ********************************************************************* ciscoIpAddressPoolMIBCompliances OBJECT IDENTIFIER ::= { ciscoIpAddressPoolMIBConform 1 } ciscoIpAddressPoolMIBGroups OBJECT IDENTIFIER ::= { ciscoIpAddressPoolMIBConform 2 } ciscoIpAddressPoolCompliance01 MODULE-COMPLIANCE STATUS current DESCRIPTION "This compliance statement specifies the minimal requirements an implementation must meet in order to claim full compliance with the definition of the CISCO-IP-ADDRESS-POOL-MIB." MODULE -- this module MANDATORY-GROUPS { ciapGlobalGroup, ciapPoolGroup, ciapRangeGroup, ciapPoolGroupGroup, ciapNotifDataGroup, ciapNotifsGroup } GROUP ciapPrefixGroup DESCRIPTION "This group is mandatory only for those implementations that support IP prefix pools." OBJECT ciapGlobalNotifyEnable MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapGlobalThresholdUnits MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapGlobalThresholdRising MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapGlobalThresholdFalling MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPoolName MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPoolStatus MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPoolStorage MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPoolType MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPoolContainedIn MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPoolThresholdUnits MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPoolThresholdRising MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPoolThresholdFalling MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapRangeStatus MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapRangeStorage MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapRangeAddressUpper MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapRangeCacheSize MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapRangeRecycleDelay MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapRangePriority MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapRangeThresholdUnits MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapRangeThresholdRising MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapRangeThresholdFalling MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPrefixStatus MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPrefixStorage MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPrefixAssignedLength MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPrefixCacheSize MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPrefixRecycleDelay MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPrefixPriority MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPrefixThresholdUnits MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPrefixThresholdRising MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPrefixThresholdFalling MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPoolGroupThresholdUnits MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPoolGroupThresholdRising MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." OBJECT ciapPoolGroupThresholdFalling MIN-ACCESS read-only DESCRIPTION "An implementation must at least provide read-only access to this object." ::= { ciscoIpAddressPoolMIBCompliances 1 } -- ********************************************************************* -- * Units of Conformance * -- ********************************************************************* ciapGlobalGroup OBJECT-GROUP OBJECTS { ciapGlobalNotifyEnable, ciapGlobalThresholdUnits, ciapGlobalThresholdRising, ciapGlobalThresholdFalling } STATUS current DESCRIPTION "This group contains objects describing data that applies to the IP address pool manager as a whole." ::= { ciscoIpAddressPoolMIBGroups 1 } ciapPoolGroup OBJECT-GROUP OBJECTS { ciapPoolIdNext, ciapPoolName, ciapPoolStatus, ciapPoolStorage, ciapPoolType, ciapPoolContainedIn, ciapPoolThresholdUnits, ciapPoolThresholdRising, ciapPoolThresholdFalling, ciapPoolAddressesInUse, ciapPoolAddressesFree, ciapPoolTableChanged, ciapAllocatedAddressMask } STATUS current DESCRIPTION "This group contains objects describing IP address pools." ::= { ciscoIpAddressPoolMIBGroups 2 } ciapRangeGroup OBJECT-GROUP OBJECTS { ciapRangeStatus, ciapRangeStorage, ciapRangeAddressUpper, ciapRangeCacheSize, ciapRangeRecycleDelay, ciapRangePriority, ciapRangeThresholdUnits, ciapRangeThresholdRising, ciapRangeThresholdFalling, ciapRangeAddressesInUse, ciapRangeAddressesFree, ciapRangeTableChanged } STATUS current DESCRIPTION "This group contains objects describing IP addresses comprising an IP address pool." ::= { ciscoIpAddressPoolMIBGroups 3 } ciapPrefixGroup OBJECT-GROUP OBJECTS { ciapPrefixStatus, ciapPrefixStorage, ciapPrefixAssignedLength, ciapPrefixCacheSize, ciapPrefixRecycleDelay, ciapPrefixPriority, ciapPrefixThresholdUnits, ciapPrefixThresholdRising, ciapPrefixThresholdFalling, ciapPrefixPrefixesInUse, ciapPrefixPrefixesFree, ciapPrefixTableChanged } STATUS current DESCRIPTION "This group contains objects describing IP prefixes comprising an IP address pool." ::= { ciscoIpAddressPoolMIBGroups 4 } ciapPoolGroupGroup OBJECT-GROUP OBJECTS { ciapPoolGroupIdNext, ciapPoolGroupName, ciapPoolGroupThresholdUnits, ciapPoolGroupThresholdRising, ciapPoolGroupThresholdFalling, ciapPoolGroupAddressesInUse, ciapPoolGroupAddressesFree, ciapPoolGroupContainsId } STATUS current DESCRIPTION "This group contains objects describing IP address pool groups." ::= { ciscoIpAddressPoolMIBGroups 5 } ciapNotifDataGroup OBJECT-GROUP OBJECTS { ciapNotifyResource, ciapNotifyThresholdUnits, ciapNotifyThresholdRising, ciapNotifyThresholdFalling, ciapNotifyInUse, ciapNotifyFree } STATUS current DESCRIPTION "This group contains objects describing data conveyed by notifications defined by this MIB module." ::= { ciscoIpAddressPoolMIBGroups 6 } ciapNotifsGroup NOTIFICATION-GROUP NOTIFICATIONS { ciapEventThresholdRising, ciapEventThresholdFalling } STATUS current DESCRIPTION "This group contains notifications used to indicate threshold crossing events relating to ranges of IP addresses." ::= { ciscoIpAddressPoolMIBGroups 7 } END