-- ============================================================================
-- Copyright (C) 2022 by  HUAWEI TECHNOLOGIES. All rights reserved.
--
-- DESCRIPTION:  HUAWEI-IPPOOL-MIB
-- Reference:  
-- Version: V2.48
-- History:
--         v3.01
--         modified by huangjun 2009-12-08
-- ============================================================================
    HUAWEI-IPPOOL-MIB DEFINITIONS ::= BEGIN

        IMPORTS
            huaweiUtility
                FROM HUAWEI-MIB
            IpAddress,Integer32,OBJECT-TYPE, MODULE-IDENTITY,NOTIFICATION-TYPE
                FROM SNMPv2-SMI 
			MODULE-COMPLIANCE,OBJECT-GROUP,NOTIFICATION-GROUP
				FROM SNMPv2-CONF
            DisplayString, RowStatus, TruthValue
                FROM SNMPv2-TC
            Ipv6Address, Ipv6AddressIfIdentifier, Ipv6AddressPrefix
                FROM IPV6-TC;

        hwIppool MODULE-IDENTITY
            LAST-UPDATED "202204150000Z"
            ORGANIZATION 
			"Huawei Technologies Co.,Ltd."
            CONTACT-INFO 
                "Huawei Industrial Base
  Bantian, Longgang
   Shenzhen 518129
   People's Republic of China
   Website: http://www.huawei.com
   Email: support@huawei.com
 "
           
            DESCRIPTION 
                "The MIB contains objects of module IPPOOL."
            REVISION
            "202204150000Z" --April 15, 2022
            DESCRIPTION
            "V2.47-V2.48 modify range for hwBasUnrImportRouteReachThreshold"

             REVISION
            "202202250000Z" --Feb 25, 2022
            DESCRIPTION
            "V2.46-V2.47 added hwBasUnrImportRouteReachThreshold"

            REVISION
            "202202080000Z" --January 8, 2022
            DESCRIPTION
            "V2.45-V2.46 added hwIPPoolDAPDeviceSubnetFullAlarm,hwIPv6PoolDAPDevicePrefixFullAlarm"

             REVISION
            "202106220000Z" --Jun 22, 2021
            DESCRIPTION
            "V2.44-V2.45 delete invalid comment."

             REVISION
            "202103310000Z" --Mar 31, 2021
            DESCRIPTION
            "V2.43-V2.44 modify the description of node in hwUserIPConflictAlarm."

             REVISION
            "202011200000Z" --Nov 20, 2020
            DESCRIPTION
            "V2.42-V2.43 modify the range of node in hwIPDhcpSvrRefCount hwIPDhcpv6SvrGroupRefCount."

             REVISION
            "202008270000Z" --Aug 27, 2020
            DESCRIPTION
            "V2.41-V2.42 modify the range of node in hwIPv6PrefixIndex hwIPv6PoolIndex and hwIPv6RemotePoolIndex."

             REVISION
            "202007220000Z" --July 22, 2020
            DESCRIPTION
            "V2.40-V2.41 modify the range of node in hwIPPoolGroupIndex."

             REVISION
            "202006220000Z" --June 22, 2020
            DESCRIPTION
            "V2.39-V2.40 modify the range of node in hwIPPoolGroupIndex."

             REVISION
            "202003270000Z" --March 27, 2020
            DESCRIPTION
            "V2.38-V2.39 add hwDhcpv6ServerDown, hwDHCPv6ServerAddr."

            REVISION
            "201911290000Z" --November 29, 2019
            DESCRIPTION
            "V2.37-V2.38 add hwDapPoolStatusTable, hwDapSubnetStatusTable, hwDapV6PoolStatusTable and hwDapV6PrefixStatusTable."

            REVISION
            "201909120000Z" --September 12, 2019
            DESCRIPTION
            "V2.36-V2.37 Modify sever to server."

            REVISION
            "201903290000Z" --Mar 29, 2019
            DESCRIPTION
            "V2.35-V2.36 add hwRemoteIPPoolIPTotalNum and hwRemoteIPPoolIPUsedNum."

            REVISION
            "201903200000Z" --Mar 20, 2019
            DESCRIPTION
            "V2.34-V2.35 Change the uint of hwIPPoolIpAddrRenewal and hwIPPoolIpAddrRebinding."
 
           REVISION
            "201902160000Z" --February16, 2019
            DESCRIPTION
            "V2.33-V2.34 the value range and default value of hwIPPoolDhcpServerDeadCount are changed."
 
           REVISION
            "201901290000Z" --January 29, 2019
            DESCRIPTION
            "V2.32-V2.33 Consistency,Expand the range of values."

            REVISION
            "201812280000Z" --Dec 28, 2018
            DESCRIPTION
            "V2.31-V2.32 add hwCUPoolGroupUsedIPExhaust and hwCUPoolGroupUsedIPExhaustResume."

            REVISION
            "201812240000Z" --Dec 24, 2018
            DESCRIPTION
            "V2.30-V2.31 add hwCUPoolGroupUsedIPReachThreshold and hwCUPoolGroupUsedIPReachThresholdResume."
            
            REVISION
            "201812130000Z" --Dec 13, 2018
            DESCRIPTION
            "V2.29-V2.30 modify the object type of node hwCUIPDynSubnetStatus hwCUIPPoolDynSubnetTable."
 
            REVISION
            "201812130000Z" --Dec 13, 2018
            DESCRIPTION
            "V2.28-V2.29 modify the range of node in hwCUIPv6PoolStatisticTable and hwCUIPPoolDynSubnetTable."

            REVISION
            "201808010000Z" --Aug 1, 2018
            DESCRIPTION
            "V2.27-V2.28 modify the range of node in hwCUIPPoolStatisticTable."

            REVISION
            "201807120000Z" --July 12, 2018
            DESCRIPTION
            "V2.26-V2.27 modify trap node hwPoolVPNInstance and hwVPNPoolThreshold."
   
            REVISION
            "201806140000Z" --Jun 14, 2018
            DESCRIPTION
            "V2.25-V2.26  modify ip pool vpn nodes."
  
            REVISION
            "201805210000Z" --May 21, 2018
            DESCRIPTION
            "V2.24-V2.25  add ip pool vpn nodes."

            REVISION
            "201801290000Z" --January 29, 2018
            DESCRIPTION
             "Modify V2.23-V2.24 added hwCUIPPoolStatisticTable,hwCUIPv6PoolStatisticTable,hwCUIPPoolDynSubnetTable"

           REVISION
            "201801260000Z" --January 26, 2018
            DESCRIPTION
             "Modify V2.22-V2.23 modify for reset warning after an ip pool is isolated"
				
           REVISION
            "201801200000Z" --January 20, 2018
            DESCRIPTION
             "Modify V2.21-V2.22 modify for mib add DAPIPV6 leaf node"
			 
           REVISION
            "201801180000Z" --January 18, 2018
            DESCRIPTION
             "Modify V2.20-V2.21 modify for mib discription"

           REVISION
            "201711270000Z" --November 26, 2017
            DESCRIPTION
             "Modify V2.20-V2.21 modify for dapv6"

           REVISION
            "201709260000Z" --September 26, 2017
            DESCRIPTION
             "Modify V2.19-V2.20 modify length of ip pool name 32->128"

           REVISION
            "201704180000Z" --April 18, 2017  
            DESCRIPTION
             "Modify V2.18-V2.19 add for DAP and IPV6 pool warning"

            REVISION
            "201611170000Z" --nov 17, 2016
            DESCRIPTION
             "Modify V2.16-V2.17 add isolate pool warning"

            REVISION
            "201609270000Z" --September 27, 2016
            DESCRIPTION
             "Modify V2.15-V2.16 mod pool and pool-group subnet warning"
             
            REVISION
            "201603101109Z" --March 10, 2016
            DESCRIPTION
             "Modify V2.14-V2.15 mod hwIPSectionIndex<0-7> for  hwIPSectionIndex<0-255>."

            REVISION
            "201512240000Z" --Dec 24, 2015
            DESCRIPTION
             "Modify V2.13-V2.14 mod hwUserIPAddress for  hwUserIPConflictAlarm."
                
            REVISION  "201508120000Z" --August 12, 2015
            DESCRIPTION
            "Modify V2.12-V2.13 mod hwIPPoolType for supporting local rui-slave address pool."

            REVISION  "201503310000Z" --March 11, 2015
            DESCRIPTION
            "Modify V2.11-V2.12 mod for DAP warning fail reason."

            REVISION  "201502110000Z" --February 11, 2015
            DESCRIPTION
            "Modify V2.10-V2.11 mod for hwIPv6RemotePoolExportHostRoutePDprefix."

            REVISION  "201412260000Z" --December 26, 2014
            DESCRIPTION
            "Modify V2.09-V2.10 add for pool weight and DAP warning."

            REVISION
            "201412260000Z" --December 26, 2014
            DESCRIPTION
            "V2.08-V2.09 add for pool weight and DAP warning."

            REVISION
            "201407250000Z" --July 25, 2014
            DESCRIPTION
            "V2.07-V2.08 add four dhcpv6 server support polling."


              REVISION
            "201403140000Z" --Mar 14, 2014
            DESCRIPTION
            "  V1.2-V1.3 add four nodes."

	    REVISION
            "201311280000Z" --Aug 08, 2013

            DESCRIPTION 
                "The MIB contains objects of module IPPOOL."
	    REVISION
            "201311080000Z" --Aug 08, 2013

            DESCRIPTION 
                "The MIB contains objects of module IPPOOL."
	    REVISION
            "201310170000Z" --Aug 08, 2013
            
            DESCRIPTION
            " V1.3-V1.4 add three nodes for export NA/PD/ND route,three table for DHCP enhence."
	    
             REVISION
            "201307270000Z" --July 27, 2013
            DESCRIPTION
            " V1.2-V1.3 add four nodes."

             REVISION
            "201307190000Z" --July 19, 2013
            DESCRIPTION
            " V1.1-V1.2 add two nodes for dhcp server down."

            REVISION
            "201305220000Z" --May 22, 2013
            DESCRIPTION
            "V1.0-V1.1  increate option/s size from 64 to 255."

             ::= { huaweiUtility 8 }
        hwIPPoolMibObjects OBJECT IDENTIFIER ::= { hwIppool 1 }

        hwIPPoolTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPPoolEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "hwIPPoolTable is used to configure information about an address pool."
            ::= { hwIPPoolMibObjects 1 }

        hwIPPoolEntry OBJECT-TYPE
            SYNTAX HwIPPoolEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The configuration list of IP address pool, which is used to configure the relevant attributes of the IP address pool inside the device."
            INDEX { hwIPPoolIndex }
            ::= { hwIPPoolTable 1 }

        HwIPPoolEntry ::=
            SEQUENCE {
                hwIPPoolIndex
                    Integer32,
                hwIPPoolName
                    DisplayString,
                hwIPPoolRouterIPAddr
                    IpAddress,
                hwIPPoolRouterIPMask
                    IpAddress,
                hwIPPoolPriDNSIPAddr
                    IpAddress,
                hwIPPoolSecDNSIPAddr
                    IpAddress,
                hwIPPoolPriNBNSIPAddr
                    IpAddress,
                hwIPPoolSecNBNSIPAddr
                    IpAddress,
                hwIPPoolIPAddrLease
                    Integer32,
                hwIPPoolStatus
                    RowStatus,
                hwIPPoolVPNInstance
                    DisplayString,
                hwIPPoolType
                    INTEGER,
                hwIPPoolNetwork
                    IpAddress,
                hwIPPoolNetworkMask
                    IpAddress,
                hwIPPoolIPTotalNum
                    Integer32,    
                hwIPPoolIPUsedNum
                    Integer32,
                hwIPPoolIPConflictNum
                    Integer32, 
                hwIPPoolIPExcludeNum
                    Integer32, 
                hwIPPoolIPIdleNum
                    Integer32,
                hwIPPoolIPUsedPercent
                    Integer32,
                hwIPPoolDNSIPAddrString
                    OCTET STRING,  
                hwIPPoolDNSIPAddrStringUndo
                    OCTET STRING,
                hwIPPoolNBNSIPAddrString
                    OCTET STRING,
                hwIPPoolNBNSIPAddrStringUndo
                    OCTET STRING,
                hwIPPoolRouterUnnumberedIfName 
                    OCTET STRING,
                hwIPPoolConflictAutoRecycleInterval 
                    Integer32,
                hwIPPoolLowAddr
                    IpAddress,                          
                hwIPPoolHighAddr
                    IpAddress,
                hwIPPoolReqNum
                    Integer32,
                hwIPPoolReqSucNum
                    Integer32
             }

        hwIPPoolIndex OBJECT-TYPE
            SYNTAX Integer32 (0..16383)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the unique index of the IP address pool."
            ::= { hwIPPoolEntry 1 }

        hwIPPoolName OBJECT-TYPE
            SYNTAX DisplayString (SIZE (1..128))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "IP address pool name, the service module guarantees the exclusiveness of the name."
            ::= { hwIPPoolEntry 2 }

        hwIPPoolRouterIPAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Gateway IP address.
                By default, the mask is 255.255.255.255."
            ::= { hwIPPoolEntry 3 }

        hwIPPoolRouterIPMask OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Gateway mask.
                By default, the mask is 255.255.255.255."
            ::= { hwIPPoolEntry 4 }

        hwIPPoolPriDNSIPAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Primary DNS IP address.
                By default, it is 255.255.255.255."
            ::= { hwIPPoolEntry 5 }

        hwIPPoolSecDNSIPAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Second DNS IP address.
                By default, it is 255.255.255.255."
            ::= { hwIPPoolEntry 6 }

        hwIPPoolPriNBNSIPAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Primary Netbios IP address.
                By default, it is 255.255.255.255."
            ::= { hwIPPoolEntry 7 }

        hwIPPoolSecNBNSIPAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Second Netbios IP address.
                By default, it is 255.255.255.255."
            ::= { hwIPPoolEntry 8 }

        hwIPPoolIPAddrLease OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "IP address lease: 0~(1000*24*60-1)(m)  unit: minute. It is allowed not to specify the lease during the adding. The default value is 3*24*60(m)."
            ::= { hwIPPoolEntry 9 }

        hwIPPoolStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Row admin status, either Add or Delete.
                Supports adding and deletion."
            ::= { hwIPPoolEntry 10 }

        hwIPPoolVPNInstance OBJECT-TYPE
            SYNTAX DisplayString(SIZE (1..31))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "IP VPN-instance name."
            ::= { hwIPPoolEntry 11 }

        hwIPPoolType OBJECT-TYPE
            SYNTAX INTEGER {local(1),relay(2),server(3),localRuiSlave(4)}
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Value indicates the type of pool, 1-local, 2-relay, 3-server, 4-localRuiSlave."
            ::= { hwIPPoolEntry 12 }
            
        hwIPPoolNetwork OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Network ip address of a DHCP Server global pool. 
            To delete a configured network ip, please set
            hwDHCPSGlobalPoolConfigUndoFlag to 1"
            ::= { hwIPPoolEntry 13 }
    
    hwIPPoolNetworkMask OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Net mask of a DHCP Server global pool(network).
            The SET operation to this object ought to be with
            the SET of hwDHCPSGlobalPoolNetwork together, and
            any SET operation alone to this object will be
            regarded as an invalid operation.
            When a network ip of a DHCP server global pool was 
            deleted, the net mask would also be deleted
            automatically, and no further operation needed"
        ::= { hwIPPoolEntry 14 }   
 
    hwIPPoolIPTotalNum OBJECT-TYPE
            SYNTAX Integer32  
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the total number of IP addresses."
            ::= { hwIPPoolEntry 15 }
            
        hwIPPoolIPUsedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IP addresses in use."
            ::= { hwIPPoolEntry 16 }
            
        hwIPPoolIPConflictNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of conflicting IP addresses that are not in use."
            ::= { hwIPPoolEntry 17 }
        
        hwIPPoolIPExcludeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IP addresses that cannot be allocated."
            ::= { hwIPPoolEntry 18 }
            
        hwIPPoolIPIdleNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle addresses."
            ::= { hwIPPoolEntry 19 }
            
        hwIPPoolIPUsedPercent OBJECT-TYPE
            SYNTAX Integer32 (0..100)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "used percent."
            ::= { hwIPPoolEntry 20 } 
       
        hwIPPoolDNSIPAddrString OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (0..129))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "String of DNS server ip addresses for DHCP clients.
            Since mostly 8 ip addresses can be configured for a pool
            totally, a string is defined to get or configure 8
            ip addresses at a time"
            ::= { hwIPPoolEntry 21 } 

        hwIPPoolDNSIPAddrStringUndo OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (0..129))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "A DNS server ip address to be deleted. This object
            is only for deleting a given ip address of DNS server."
            ::= { hwIPPoolEntry 22 }

        hwIPPoolNBNSIPAddrString OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (0..129))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                 "String of NetBIOS server ip addresses for DHCP
            clients. Since mostly 8 ip addresses can be configured for
            a pool totally, so a string is defined to get or
            configure 8 ip addresses at a time"
            ::= {  hwIPPoolEntry 23 }     

        hwIPPoolNBNSIPAddrStringUndo OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (0..129))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "A NetBIOS server ip address to delete. This
            object is only for deleting a given ip address of NetBIOS
            server"
        ::= {  hwIPPoolEntry 24 }
        
        hwIPPoolRouterUnnumberedIfName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..64))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "unnumbered interface name."
            ::= { hwIPPoolEntry 25 }
            
        hwIPPoolConflictAutoRecycleInterval  OBJECT-TYPE
            SYNTAX Integer32 (0 | 30..1440)
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The flag indicates whether funtion of conflict auto recycle is enabled."
            ::= { hwIPPoolEntry 26 }
                    
        hwIPPoolLowAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
               "The lowest IP address in the pool."
            ::= { hwIPPoolEntry 27 }

        hwIPPoolHighAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
               "The highest IP address in the pool."
            ::= { hwIPPoolEntry 28 }

        hwIPPoolReqNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
               "The number of the request packet."
            ::= { hwIPPoolEntry 29 }

        hwIPPoolReqSucNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
               "The number of the effective request packet."
            ::= { hwIPPoolEntry 30 }

        hwIPSectionTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPSectionEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The configuration table of IP section."
            ::= { hwIPPoolMibObjects 2 }

        hwIPSectionEntry OBJECT-TYPE
            SYNTAX HwIPSectionEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "IPSection Entry.
                IP section configuration table, used to manage the IP address of user.
                There are at most eight address sections to each address pool. Its indexes are   hwIPPoolIndex (from the external) and HwIPSectionIndex."
            INDEX { hwIPPoolIndex, hwIPSectionIndex }
            ::= { hwIPSectionTable 1 }

        HwIPSectionEntry ::=
            SEQUENCE {
                hwIPSectionIndex
                    Integer32,
                hwIPSectionDesc
                    DisplayString,
                hwIPSectionLowAddr
                    IpAddress,
                hwIPSectionHighAddr
                    IpAddress,
                hwIPSectionLength
                    Integer32,
                hwIPSectionUsedNum
                    Integer32,
                hwIPSectionConflict
                    Integer32,
                hwIPSectionInvalid
                    Integer32,
                hwIPSectionAvailableNum
                    Integer32,
                hwIPSectionRowStatus
                    RowStatus
             }

        hwIPSectionIndex OBJECT-TYPE
            SYNTAX Integer32 (0..255)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the address segment index."
            ::= { hwIPSectionEntry 1 }

        hwIPSectionDesc OBJECT-TYPE
            SYNTAX DisplayString (SIZE (1..32))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "IP section DESCRIPTION, which can be empty."
            ::= { hwIPSectionEntry 2 }

        hwIPSectionLowAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "This object indicates the start IP address of the address pool."
            ::= { hwIPSectionEntry 3 }

        hwIPSectionHighAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "This object indicates the end IP address in the address segment."
            ::= { hwIPSectionEntry 4 }

        hwIPSectionLength OBJECT-TYPE
            SYNTAX Integer32 (0..65536)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the address segment length."
            ::= { hwIPSectionEntry 5 }

        hwIPSectionUsedNum OBJECT-TYPE
            SYNTAX Integer32 (0..65536)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IP addresses that have been allocated."
            ::= { hwIPSectionEntry 6 }

        hwIPSectionConflict OBJECT-TYPE
            SYNTAX Integer32 (0..65536)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The number of conflict addresses."
            ::= { hwIPSectionEntry 7 }

        hwIPSectionInvalid OBJECT-TYPE
            SYNTAX Integer32 (0..65536)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of invalid IP addresses."
            ::= { hwIPSectionEntry 8 }

        hwIPSectionAvailableNum OBJECT-TYPE
            SYNTAX Integer32 (0..65536)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle addresses."
            ::= { hwIPSectionEntry 9 }

        hwIPSectionRowStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "This object indicates the status of an address segment. Currently, the status of the address pool can be added (4) or deleted (6)."
            ::= { hwIPSectionEntry 10 }

        hwIPPoolExtTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPPoolExtEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "Extend table of the local address pool.
                 When IP addresses are allocated by the built-in DHCP servers, you need to configure the lease and option."
            ::= { hwIPPoolMibObjects 3 }
        
        hwIPPoolExtEntry OBJECT-TYPE
            SYNTAX HwIPPoolExtEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "DESCRIPTION."
            INDEX { hwIPPoolIndex }
            ::= { hwIPPoolExtTable 1 }
        
        HwIPPoolExtEntry ::=
            SEQUENCE { 
                hwIPPoolAvailableStatus
                    Integer32,
                hwIPDhcpOptionId1
                    Integer32,
                hwIPDhcpOption1
                    DisplayString,
                hwIPDhcpOptionId2
                    Integer32,
                hwIPDhcpOption2
                    DisplayString,
                hwIPDhcpOptionId3
                    Integer32,
                hwIPDhcpOption3
                    DisplayString,
                hwIPDhcpOptionId4
                    Integer32,
                hwIPDhcpOption4
                    DisplayString,
                hwIPDnsSuffix
                    DisplayString,
                hwIPDhcpSvrIPRsv
                    Integer32,
                hwIPPoolIpAddrRenewal
                    Integer32,
                hwIPPoolIpAddrRebinding
                    Integer32,
                hwIPPoolSIPAddr1
                    IpAddress,
                hwIPPoolSIPAddr2
                    IpAddress,
                hwIPPoolSIPName1
                    DisplayString,
                hwIPPoolSIPName2
                    DisplayString
                 }

        hwIPPoolAvailableStatus OBJECT-TYPE
            SYNTAX Integer32(0..1)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Whether the address is prohibited."
            ::= { hwIPPoolExtEntry 1 }

        hwIPDhcpOptionId1 OBJECT-TYPE
            SYNTAX Integer32 (128..255)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Option ID.
                 When IP addresses are allocated by the built-in DHCP server, the option is a configuration parameter, which needs to be defined and explained by the carrier."
            ::= { hwIPPoolExtEntry 2 }
        
        hwIPDhcpOption1 OBJECT-TYPE
            SYNTAX DisplayString (SIZE (0..32))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Value of the option."
            ::= { hwIPPoolExtEntry 3 }
        

        hwIPDhcpOptionId2 OBJECT-TYPE
            SYNTAX Integer32 (128..255)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Option ID.
                 When IP addresses are allocated by the built-in DHCP server, the option is a configuration parameter, which needs to be defined and explained by the carrier."
            ::= { hwIPPoolExtEntry 4 }
        
        hwIPDhcpOption2 OBJECT-TYPE
            SYNTAX DisplayString (SIZE (0..32))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Value of the option."
            ::= { hwIPPoolExtEntry 5 }
            
        hwIPDhcpOptionId3 OBJECT-TYPE
            SYNTAX Integer32 (128..255)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Option ID.
                 When IP addresses are allocated by the built-in DHCP server, the option is a configuration parameter, which needs to be defined and explained by the carrier."
            ::= { hwIPPoolExtEntry 6 }
        
        hwIPDhcpOption3 OBJECT-TYPE
            SYNTAX DisplayString (SIZE (0..32))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Value of the option."
            ::= { hwIPPoolExtEntry 7 }
            
        hwIPDhcpOptionId4 OBJECT-TYPE
            SYNTAX Integer32 (128..255)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Option ID.
                 When IP addresses are allocated by the built-in DHCP server, the option is a configuration parameter, which needs to be defined and explained by the carrier."
            ::= { hwIPPoolExtEntry 8 }
        
        hwIPDhcpOption4 OBJECT-TYPE
            SYNTAX DisplayString (SIZE (0..32))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Value of the option."
            ::= { hwIPPoolExtEntry 9 }

        hwIPDnsSuffix OBJECT-TYPE
            SYNTAX DisplayString (SIZE(0..50))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "DNS suffix, a string of 0-50 characters.
                If the value is 0, it indicates that the suffix is deleted."
            ::= { hwIPPoolExtEntry 10 }

        hwIPDhcpSvrIPRsv OBJECT-TYPE
            SYNTAX Integer32 (0..255)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "mode of IP addresses reserving. 1 indicates leasing management, 2 indicates MAC binding, and other values are invalid.  "
            ::= { hwIPPoolExtEntry 11 }

        hwIPPoolIpAddrRenewal OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "ip address renewal: 0~(1000*24*60-1)*60(s)  unit: second. It is allowed not to  specify the renewal during the adding. The default value is 129600(s)"
            ::= { hwIPPoolExtEntry 12 }

        hwIPPoolIpAddrRebinding OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "ip address rebinding: 0~(1000*24*60-1)*60(s)  unit: second. It is allowed not to specify the rebinding during the adding. The default value is 226800(s)"
            ::= { hwIPPoolExtEntry 13 }

        hwIPPoolSIPAddr1 OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "SIP Server IP address"
            ::= { hwIPPoolExtEntry 14 }

        hwIPPoolSIPAddr2 OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "SIP Server IP address"
            ::= { hwIPPoolExtEntry 15 }

        hwIPPoolSIPName1 OBJECT-TYPE
            SYNTAX DisplayString (SIZE(0..63))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The name of SIP server. 0 indicates to delete the SIP server. "
            ::= { hwIPPoolExtEntry 16 }

        hwIPPoolSIPName2 OBJECT-TYPE
            SYNTAX DisplayString (SIZE(0..63))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The name of SIP server. 0 indicates to delete the SIP server. "
            ::= { hwIPPoolExtEntry 17 }

        hwIPAddressStatusTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPAddressStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "Address status table.
                 It supports the query and setting of status of the local address pool. 
                 It does not support the query and setting of status of the remote address pool for the following reasons:
                  1. The status of the remote address pool cannot be set.
                  2. The remote and local address pools map different status tables, with different indexes.
                  3. The remote address pool is managed by the remote equipment, rather than the local equipment. The local equipment displays only the approximate status of the remote address pool."
            ::= { hwIPPoolMibObjects 4 }
        
        hwIPAddressStatusEntry OBJECT-TYPE
            SYNTAX HwIPAddressStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "DESCRIPTION."
            INDEX { hwIPPoolIndex, hwIPSectionIndex, hwIPAddress }
            ::= { hwIPAddressStatusTable 1 }
        
        HwIPAddressStatusEntry ::=
            SEQUENCE { 
                hwIPAddress
                    IpAddress,
                hwIPAddressStatus
                    INTEGER ,
                hwPoolName
                    DisplayString
                    }

        hwIPAddress OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "IP address."
            ::= { hwIPAddressStatusEntry 1 }       
    

        hwIPAddressStatus OBJECT-TYPE
            SYNTAX INTEGER
                {
                    idle(0),
                    occupied(1),
                    prohibitive(2),
                    conflictive(3)
                }
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Status of the address."
            ::= { hwIPAddressStatusEntry 2 }       
        
        
        hwPoolName OBJECT-TYPE
            SYNTAX DisplayString (SIZE (1..128))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "IP address pool name."
            ::= { hwIPAddressStatusEntry 3 }


        hwDhcpSvrGroupTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwDhcpSvrGroupEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "Configuration table of the DHCP server group.
                 To monitor the status of the remote DHCP server, you need to configure the local DHCP server.
                 You can configure a maximum of 4094 DHCP server groups.
                 Each server group consists of two DHCP servers. Select the server based on the server status."
            ::= { hwIPPoolMibObjects 5 }
        
        hwDhcpSvrGroupEntry OBJECT-TYPE
            SYNTAX HwDhcpSvrGroupEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "DESCRIPTION."
            INDEX { hwIPPoolDhcpSvrGroupIndex }
            ::= { hwDhcpSvrGroupTable 1 }
        
        HwDhcpSvrGroupEntry ::=
            SEQUENCE { 
                hwIPPoolDhcpSvrGroupIndex
                    Integer32,
                hwIPPoolDhcpSvrGroupName
                    DisplayString,
                hwIPDhcpSvrPriAddr
                    IpAddress,
                hwIPDhcpSvrScdiAddr
                    IpAddress,
                hwIPDhcpSvrPriState
                    INTEGER,
                hwIPDhcpScdPriState
                    INTEGER,
                hwIPDhcpSvrAutoRelease
                    TruthValue,
                hwIPDhcpSvrRefCount
                    Integer32,
                hwIPDhcpSvrRowStatus
                    RowStatus,  
                hwIPDhcpSvrPriVpnInstance
                    DisplayString,
                hwIPDhcpSvrScdVpnInstance
                    DisplayString,
                hwIPDhcpSvrSouce
                    OCTET STRING    
             }

        hwIPPoolDhcpSvrGroupIndex OBJECT-TYPE
            SYNTAX Integer32 (0..4095)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Index of a DHCP server group.
                 When you create an address pool, the equipment adds the hwIPPoolDhcpSvrGroupIndex entry by default and sends it to the NMS."
            ::= { hwDhcpSvrGroupEntry 1 }
        
        hwIPPoolDhcpSvrGroupName OBJECT-TYPE
            SYNTAX DisplayString (SIZE (1..32))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Name of the DHCP server group."
            ::= { hwDhcpSvrGroupEntry 2 }
        
        hwIPDhcpSvrPriAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Primary IP address of the DHCP server group."
            ::= { hwDhcpSvrGroupEntry 3 }
        
        hwIPDhcpSvrScdiAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Secondary IP address of the DHCP server group."
            ::= { hwDhcpSvrGroupEntry 4 }
        
        hwIPDhcpSvrPriState OBJECT-TYPE  
            SYNTAX INTEGER
                {
                stop(0),
                use(1)
                }
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Status of the primary DHCP server."
            ::= { hwDhcpSvrGroupEntry 5 }
        
        hwIPDhcpScdPriState OBJECT-TYPE
            SYNTAX INTEGER
                {
                stop(0),
                use(1)
                }
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Status of the secondary DHCP server."
            ::= { hwDhcpSvrGroupEntry 6 }
        
        hwIPDhcpSvrAutoRelease OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Whether the server supports the Release packet."
            ::= { hwDhcpSvrGroupEntry 7 }
        
        hwIPDhcpSvrRefCount OBJECT-TYPE
            SYNTAX Integer32 (0..16384)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of times the server group is referenced."
            ::= { hwDhcpSvrGroupEntry 8 }
        
        hwIPDhcpSvrRowStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "DHCP server row status."
            ::= { hwDhcpSvrGroupEntry 9 }  
            
        hwIPDhcpSvrPriVpnInstance OBJECT-TYPE 
            SYNTAX DisplayString (SIZE (1..31))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "VPN instance of the primary DHCP server."
            ::= { hwDhcpSvrGroupEntry 10 }  
         
         hwIPDhcpSvrScdVpnInstance OBJECT-TYPE 
            SYNTAX DisplayString (SIZE (1..31))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "VPN instance of the secondary DHCP server."
            ::= { hwDhcpSvrGroupEntry 11 } 

         hwIPDhcpSvrSouce OBJECT-TYPE 
            SYNTAX OCTET STRING (SIZE (1..47))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "DHCP source interface address."
            ::= { hwDhcpSvrGroupEntry 12 } 
        
        hwRemotePoolTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwRemotePoolEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "Configuration table of the remote address pool.
                 The remote address pool must be configured on the local equipment in the following cases:
                   Users obtain IP addresses through the built-in DHCP client and need to renew the addresses.
                   The equipment needs to record the IP addresses to be renewed.
                   The equipment needs to report the routes of the users."
            ::= { hwIPPoolMibObjects 6 }
        
        hwRemotePoolEntry OBJECT-TYPE
            SYNTAX HwRemotePoolEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "DESCRIPTION."
            INDEX { hwRemoteIPPoolIndex }
            ::= { hwRemotePoolTable 1 }
        
        HwRemotePoolEntry ::=
            SEQUENCE { 
                hwRemoteIPPoolIndex
                    Integer32,
                hwRemoteIPPoolName
                    DisplayString,
                hwRemoteIPPoolRouterIPAddr
                    IpAddress,
                hwRemoteIPPoolRouterIPMask
                    IpAddress,
                hwRemoteIPPoolDhcpSvrGroupID
                    Integer32,
                hwRemoteIPPoolAvailableStatus
                    INTEGER,
                hwRemoteIPPoolRowStatus
                    RowStatus,
                hwRemoteIPPoolPriDNSIPAddress
                    IpAddress,
                hwRemoteIPPoolSecDNSIPAddress
                    IpAddress,
                hwRemoteIPPoolPriNBNSIPAddress
                    IpAddress,
                hwRemoteIPPoolSecNBNSIPAddress
                    IpAddress,
                hwRemoteIPPoolVPNInstance
                    DisplayString,
                hwRemoteIPPoolDhcpGroupName
                    DisplayString,
                hwRemoteIPPoolLeaseManageEnable
                    INTEGER,
                hwRemoteIPPoolWeight
                    Integer32,
                hwRemoteIPPoolIPTotalNum
                    Integer32,
                hwRemoteIPPoolIPUsedNum
                    Integer32
             }

        hwRemoteIPPoolIndex OBJECT-TYPE
            SYNTAX Integer32 (0..16383)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Index of an address pool.
                 When you create an address pool, the equipment adds the hwRemoteIPPoolIndex x entry by default and sends it the NMS.
                "
            ::= { hwRemotePoolEntry 1 }
        
        hwRemoteIPPoolName OBJECT-TYPE
            SYNTAX DisplayString (SIZE (1..128))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Name of an address pool.
                 The service module ensures that the name is unique."
            ::= { hwRemotePoolEntry 2 }
        
        hwRemoteIPPoolRouterIPAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "IP address of the gateway."
            ::= { hwRemotePoolEntry 3 }
        
        hwRemoteIPPoolRouterIPMask OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "IP address mask."
            ::= { hwRemotePoolEntry 4 }
        
        hwRemoteIPPoolDhcpSvrGroupID OBJECT-TYPE
            SYNTAX Integer32 (0..4096)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Name of the associated DHCP server group."
            ::= { hwRemotePoolEntry 5 }
        
        hwRemoteIPPoolAvailableStatus OBJECT-TYPE
            SYNTAX INTEGER
                {
                 locked(0),
                 unlocked(1)
                }
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Whether the address pool is locked, 0: locked, 1: not locked."
            ::= { hwRemotePoolEntry 6 }

        hwRemoteIPPoolRowStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                 "
                 Row status of IP pool.  
                 "
            ::= { hwRemotePoolEntry 7 }
            
        hwRemoteIPPoolPriDNSIPAddress OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "IP address of the active DNS server."
            ::= { hwRemotePoolEntry 8 }

        hwRemoteIPPoolSecDNSIPAddress OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "IP address of the standby DNS server."
            ::= { hwRemotePoolEntry 9 }

        hwRemoteIPPoolPriNBNSIPAddress OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "IP address of the active NBNS server."
            ::= { hwRemotePoolEntry 10 }

        hwRemoteIPPoolSecNBNSIPAddress OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "IP address of the standby NBNS server."
            ::= { hwRemotePoolEntry 11 }

        hwRemoteIPPoolVPNInstance OBJECT-TYPE
            SYNTAX DisplayString (SIZE (1..31))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "IP VPN-instance name."
            ::= { hwRemotePoolEntry 12 }
            
        hwRemoteIPPoolDhcpGroupName OBJECT-TYPE
            SYNTAX DisplayString (SIZE (1..32))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "DHCP server group name."
            ::= { hwRemotePoolEntry 13 }

       hwRemoteIPPoolLeaseManageEnable OBJECT-TYPE
            SYNTAX INTEGER
                {
                 disable(0),
                 enable(1)
                }
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Whether the address pool lease manage is enable, 0: diable, 1: enable."
            ::= { hwRemotePoolEntry 14 }

        hwRemoteIPPoolWeight  OBJECT-TYPE
            SYNTAX Integer32 (0..100)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The weight of this Remote IP pool."
            ::= { hwRemotePoolEntry 15 }

        hwRemoteIPPoolIPTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the total number of IP addresses of remote ip address pool."
            ::= { hwRemotePoolEntry 16}

        hwRemoteIPPoolIPUsedNum OBJECT-TYPE
            SYNTAX Integer32 
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the used number of IP addresses of remtoe ip address pool."
            ::= { hwRemotePoolEntry 17}



--Statistics of address pool usage
        hwIPPoolStatistic OBJECT IDENTIFIER ::= { hwIPPoolMibObjects 7 }
        
        hwIPPoolNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of configured address pools."
            ::= { hwIPPoolStatistic 1 }

        hwIPIdleTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle IPv4 addresses on the device."
            ::= { hwIPPoolStatistic 2 }

        hwIPUsedTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IP addresses in use on the device."
            ::= { hwIPPoolStatistic 3 }

        hwIPConflictTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of conflicting IP addresses on the device."
            ::= { hwIPPoolStatistic 4 }
    
        hwIPExcludeTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IP addresses that the device is not allowed to allocate."
            ::= { hwIPPoolStatistic 5 }

        hwIPTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IPv4 addresses on the device."
            ::= { hwIPPoolStatistic 6 }

        hwIPUsedPercent OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the usage of IPv4 addresses on the device."
            ::= { hwIPPoolStatistic 7 }

        hwDhcpServerTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwDhcpServerEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "DHCP server configuration table."
            ::= { hwIPPoolMibObjects 8 }
        hwDhcpServerEntry OBJECT-TYPE
            SYNTAX HwDhcpServerEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "Description."
            INDEX { hwDhcpServerIndex }
            ::= { hwDhcpServerTable 1 }
        HwDhcpServerEntry ::=
            SEQUENCE { 
                 hwDhcpServerIndex
                     Integer32,
                 hwIPPoolDhcpServerIP
                     IpAddress,
                 hwIPPoolDhcpServerVRFName
                     OCTET STRING,
                 hwIPPoolDhcpServerState
                     INTEGER,
                 hwIPPoolDhcpServerSendDisvSpdNum
                     Integer32,
                 hwIPPoolDhcpServerSendDisvSpdSec
                     Integer32,
                 hwIPPoolDhcpServerDeadCount
                     Integer32,
                 hwIPPoolDhcpServerNakCount
                     Integer32,
                 hwIPPoolDhcpServerTimeout
                     Integer32,
                 hwIPPoolDhcpServerDeadTime
                     Integer32
                     }

        hwDhcpServerIndex OBJECT-TYPE
        SYNTAX Integer32 (0..4095)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The index of DHCP server."
            ::= { hwDhcpServerEntry 1 }
        hwIPPoolDhcpServerIP OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The IP address of DHCP server."
            ::= { hwDhcpServerEntry 2 }
        hwIPPoolDhcpServerVRFName OBJECT-TYPE 
            SYNTAX OCTET STRING (SIZE (1..31))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The name of VPN instance for the master DHCP server.   "
            ::= { hwDhcpServerEntry 3 }   
        hwIPPoolDhcpServerState OBJECT-TYPE  
            SYNTAX INTEGER
            {
             down(0),
             up(1)
            }
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The state of DHCP server."
            ::= { hwDhcpServerEntry 4 }
        hwIPPoolDhcpServerSendDisvSpdNum OBJECT-TYPE
            SYNTAX Integer32 (0..65535)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The send discovering speed number."
            ::= { hwDhcpServerEntry 5 }
        hwIPPoolDhcpServerSendDisvSpdSec OBJECT-TYPE
            SYNTAX Integer32 (0..255)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The interval of discovery packets sent by DHCP server.  "
            ::= { hwDhcpServerEntry 6 }
         hwIPPoolDhcpServerDeadCount OBJECT-TYPE
            SYNTAX Integer32 (0..64)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The threshold of no response packets from DHCP server, when the number count over the threshold, DHCP server is changed from up to down status.
                The default value is 0."
            ::= { hwDhcpServerEntry 7 }
            
            hwIPPoolDhcpServerNakCount OBJECT-TYPE
            SYNTAX Integer32 (0..255)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The threshold of nak packets from DHCP server, when nak packets count over the threshold, DHCP server is changed from up to down status.
                The default value is 10."
            ::= { hwDhcpServerEntry 8 }
            
            hwIPPoolDhcpServerTimeout OBJECT-TYPE
            SYNTAX Integer32 (1..60)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The timeout interval for response packet,the time unit is second and default value is 25 seconds."
            ::= { hwDhcpServerEntry 9 }
            
            hwIPPoolDhcpServerDeadTime OBJECT-TYPE
            SYNTAX Integer32 (1..65535)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The interval of DHCP server automatically recover up status, the time unit is minute and default value is 3 minutes."
            ::= { hwDhcpServerEntry 10 }
         
         hwIPPoolOptionTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPPoolOptionEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "A table for configuring options to DHCP server pools,
               include option code type and value and so on ."
            ::= { hwIPPoolMibObjects 9 }
        
        hwIPPoolOptionEntry OBJECT-TYPE
            SYNTAX HwIPPoolOptionEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "DESCRIPTION."
            INDEX { hwIPPoolIndex,hwIPDhcpOptionId }
            ::= { hwIPPoolOptionTable 1 }
        
        HwIPPoolOptionEntry ::=
            SEQUENCE {  
                    hwIPDhcpOptionId
                        Integer32,
                    hwIPDhcpOption
                        OCTET STRING,
                    hwIPDhcpOptionRowStatus 
                        RowStatus          
                 }
                 
        hwIPDhcpOptionId OBJECT-TYPE
            SYNTAX Integer32 (2..254)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Option ID.
                 When IP addresses are allocated by the built-in DHCP server, the option is a configuration parameter, which needs to be defined and explained by the carrier."
            ::= { hwIPPoolOptionEntry 1 }           
            
        hwIPDhcpOption OBJECT-TYPE
            SYNTAX OCTET STRING(SIZE (0..255))
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Value of the option."
            ::= { hwIPPoolOptionEntry 2 }       

        hwIPDhcpOptionRowStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "This object is used to configuration new rows in this
            table, modify existing rows, and to delete
            existing rows.Only three actions are used: active(1),
            createAndGo(4), destroy(6).
            while configuration new option, you must specify option type 
            and value"
            ::= { hwIPPoolOptionEntry 3 }                            
            
        hwIPPoolGroupTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPPoolGroupEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "Configuration table of the address Pool Group.
                 IP Pool Group support an aggregation of IP Pools. Many Ip Pools of different gateway can be referenced by IP Pool Group.
                 The max number of IP Pools referenced by an Ip Pool Group is 1024 "
            ::= { hwIPPoolMibObjects 10 }
        
        hwIPPoolGroupEntry OBJECT-TYPE
            SYNTAX HwIPPoolGroupEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The configuration list of IP address pool group, which is used to configure the relevant attributes of the IP address pool group inside the device."
            INDEX { hwIPPoolGroupName }
            ::= { hwIPPoolGroupTable 1 }
        
        HwIPPoolGroupEntry ::=
            SEQUENCE { 
                hwIPPoolGroupName
                    OCTET STRING,
                hwIPPoolGroupVPNInstance
                    OCTET STRING,
                hwIPPoolGroupIncludeUndo
                    TruthValue,
                hwIPPoolGroupRowStatus
                    RowStatus
             }

        hwIPPoolGroupName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..128))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "
                Name of an IP Pool Group.
                "
            ::= { hwIPPoolGroupEntry 1 }
        
        hwIPPoolGroupVPNInstance OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..31))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "
                Vpn instance of an address Pool Group.
                Vpn instance of All IP Pools must accord with the vpn instance of IP Pool Group.
                Use string '--' to undo vpn instance in Pool Group.
                "
            ::= { hwIPPoolGroupEntry 2 }
                             
        hwIPPoolGroupIncludeUndo OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Whether dereference all IP Pools in Pool Group.
                 Only support dereference all IP Pools in this operation. If dereference Pool one by one is needed, please use IPPoolGroupExtTable.
                "
            ::= { hwIPPoolGroupEntry 3 }

        hwIPPoolGroupRowStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                 "
                 Row status of IP Pool Group. 
                 Support Active, CreateAndGo and Destroy. 
                 "
            ::= { hwIPPoolGroupEntry 4 }
            
            
        hwIPPoolGroupExtTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPPoolGroupExtEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "Configuration extension table of the address pool group.
                 The extension table can set the order of an IP pool in IP Pool Group.
                 The extension table can be used to dereference an IP pool in IP pool Group.
                 "
            ::= { hwIPPoolMibObjects 11 }
        
        hwIPPoolGroupExtEntry OBJECT-TYPE
            SYNTAX HwIPPoolGroupExtEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The configuration list of IP address pool group extension table."
            INDEX { hwIPPoolGroupName,hwIPPoolGroupExtIncludePoolName }
            ::= { hwIPPoolGroupExtTable 1 }
        
        HwIPPoolGroupExtEntry ::=
            SEQUENCE { 
                hwIPPoolGroupExtIncludePoolName
                    OCTET STRING,
                hwIPPoolGroupExtIncludePoolMoveOrder
                    Integer32,
                hwIPPoolGroupExtRowStatus
                    RowStatus
             }

        hwIPPoolGroupExtIncludePoolName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..128))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "
                The IP Pool referenced in IP Pool Group.
                "
            ::= { hwIPPoolGroupExtEntry 1 }
        
        hwIPPoolGroupExtIncludePoolMoveOrder OBJECT-TYPE
            SYNTAX Integer32 (1..1024)
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The order of IP Pool in IP Pool Group.
                 Specify the move order to adjust the order of the IP Pool in IP Pool Group.
                 Only supoort set operation."
            ::= { hwIPPoolGroupExtEntry 2 }
                             
        hwIPPoolGroupExtRowStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                 "
                 Row status of IP pool group extension. 
                 Support CreateAndGo and Destroy. 
                 "
            ::= { hwIPPoolGroupExtEntry 3 }
            
            
        hwIPPoolGroupDisplayTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPPoolGroupDisplayEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "
                Display table of the address pool group.
                "
            ::= { hwIPPoolMibObjects 12 }
        
        hwIPPoolGroupDisplayEntry OBJECT-TYPE
            SYNTAX HwIPPoolGroupDisplayEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The configuration list of IP address pool display group table."
            INDEX { hwIPPoolGroupName }
            ::= { hwIPPoolGroupDisplayTable 1 }
        
        HwIPPoolGroupDisplayEntry ::=
            SEQUENCE { 
                hwIPPoolGroupIncludePoolNum
                    Integer32,
                hwIPPoolGroupBoundByDomainNum
                    Integer32,
                hwIPPoolGroupIPTotalNum
                    Integer32,
                hwIPPoolGroupIPUsedNum
                    Integer32,
                hwIPPoolGroupIPConflictedNum
                    Integer32,
                hwIPPoolGroupIPDisableNum
                    Integer32,
                hwIPPoolGroupIPDesignatedNum
                    Integer32,
                hwIPPoolGroupIPFreeNum
                    Integer32,
                hwIPPoolGroupIPUsedPercent
                    Integer32
             }

        hwIPPoolGroupIncludePoolNum OBJECT-TYPE
            SYNTAX Integer32 (0..1024)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "
                This object indicates the number of address pools referenced in the address pool group.
                "
            ::= { hwIPPoolGroupDisplayEntry 1 }
        
        hwIPPoolGroupBoundByDomainNum OBJECT-TYPE
            SYNTAX Integer32 (0..1024)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "
                This object indicates the number of address pool groups referenced by domains.
                "
            ::= { hwIPPoolGroupDisplayEntry 2 }
            
        hwIPPoolGroupIPTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "
                This object indicates the total number of addresses in the address pool group.
                "
            ::= { hwIPPoolGroupDisplayEntry 3 }
            
        hwIPPoolGroupIPUsedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "
                The Used number of IP in IP Pool Group.
                "
            ::= { hwIPPoolGroupDisplayEntry 4 }
            
        hwIPPoolGroupIPConflictedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "
                The Conflicted number of IP in IP Pool Group.
                "
            ::= { hwIPPoolGroupDisplayEntry 5 }
            
        hwIPPoolGroupIPDisableNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "
                The Disable number of IP in IP Pool Group.
                "
            ::= { hwIPPoolGroupDisplayEntry 6 }
            
        hwIPPoolGroupIPDesignatedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "
                The Designated number of IP in IP Pool Group.
                "
            ::= { hwIPPoolGroupDisplayEntry 7 }
            
        hwIPPoolGroupIPFreeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "
                The Free number of IP in IP Pool Group.
                "
            ::= { hwIPPoolGroupDisplayEntry 8 }
            
        hwIPPoolGroupIPUsedPercent OBJECT-TYPE
            SYNTAX Integer32 (0..1024)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "
                The Used Percent of IP in IP Pool Group.
                "
            ::= { hwIPPoolGroupDisplayEntry 9 }

        hwIPPoolDomainSearchListTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPPoolDomainSearchListEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "
                Set the domain search list which is uesed to fill content of DHCP packet option 119.
                The option is passed from the DHCP Server to the DHCP Client to specify the domain 
                search list used when resolving hostnames using DNS.
                "
            ::= { hwIPPoolMibObjects 13 }

    hwIPv6PrefixTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPv6PrefixEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "
                The configuration table of IPv6 prefix pool.
                "
            ::= { hwIPPoolMibObjects 16 }

    hwIPv6PoolTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPv6PoolEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "
                The configuration table of IPv6 address pool.
                "
            ::= { hwIPPoolMibObjects 17 }

    hwIPv6PoolStatusTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPv6PoolStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "
                The configuration table of IPv6 address pool's usage.
                "
            ::= { hwIPPoolMibObjects 18 }

    hwIPv6DuidBindPrefixTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPv6DuidBindPrefixEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "
                The binding of client DUID and prefix.
                "
            ::= { hwIPPoolMibObjects 19 }

    hwDhcpv6SvrGroupTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwDhcpv6SvrGroupEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "
                The configuration table of the DHCPv6 server group.
                "
            ::= { hwIPPoolMibObjects 20 }

    hwIPv6RemotePoolTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPv6RemotePoolEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "
                The configuration table of IPv6 remote address pool.
                "
            ::= { hwIPPoolMibObjects 21 }

        hwIPPoolDomainSearchListEntry OBJECT-TYPE
            SYNTAX HwIPPoolDomainSearchListEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The configuration list of IP address pool DomainSearchList table."
            INDEX { hwIPPoolIndex, hwIPPoolDomainSearchList }
            ::= { hwIPPoolDomainSearchListTable 1 }
        
        
        HwIPPoolDomainSearchListEntry ::=
            SEQUENCE { 
                hwIPPoolDomainSearchList
                    OCTET STRING,
                hwIPPoolDomainSearchListRowStatus
                    RowStatus
             }

        hwIPPoolDomainSearchList OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..32))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "
                The domain search list which is used to fill content of DHCP packet option 119.
                "
            ::= { hwIPPoolDomainSearchListEntry 1 }
        
        hwIPPoolDomainSearchListRowStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "
                Row status of IP pool DomainSearchList. 
                Support CreateAndGo and Destroy.
                "
            ::= { hwIPPoolDomainSearchListEntry 2 }

 hwIPv6PrefixEntry OBJECT-TYPE
            SYNTAX HwIPv6PrefixEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The configuration list of IPv6 prefix pool."
            INDEX { hwIPv6PrefixIndex }
            ::= { hwIPv6PrefixTable 1 }

        hwIPv6PoolEntry OBJECT-TYPE
            SYNTAX HwIPv6PoolEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The configuration list of IPv6 address pool."
            INDEX { hwIPv6PoolIndex }
            ::= { hwIPv6PoolTable 1 }

        hwIPv6PoolStatusEntry OBJECT-TYPE
            SYNTAX HwIPv6PoolStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The configuration list of IPv6 address pool's usage."
            INDEX { hwIPv6PoolIndex }
            ::= { hwIPv6PoolStatusTable 1 }

        hwIPv6DuidBindPrefixEntry OBJECT-TYPE
            SYNTAX HwIPv6DuidBindPrefixEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The binding of client's DUID and prefix."
            INDEX { hwIPv6PrefixIndex, hwIPv6ClientDuid }
            ::= { hwIPv6DuidBindPrefixTable 1 }

        hwDhcpv6SvrGroupEntry OBJECT-TYPE
            SYNTAX HwDhcpv6SvrGroupEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The configuration list of DHCPv6 server group."
            INDEX { hwDhcpv6SvrGroupIndex }
            ::= { hwDhcpv6SvrGroupTable 1 }

        hwIPv6RemotePoolEntry OBJECT-TYPE
            SYNTAX HwIPv6RemotePoolEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The configuration list of IPv6 remote address pool."
            INDEX { hwIPv6RemotePoolIndex }
            ::= { hwIPv6RemotePoolTable 1 }

        HwIPPoolDomainSearchListEntry ::=
            SEQUENCE { 
                hwIPPoolDomainSearchList
                    OCTET STRING,
                hwIPPoolDomainSearchListRowStatus
                    RowStatus
             }

        HwIPv6PrefixEntry ::=
            SEQUENCE { 
                hwIPv6PrefixIndex
                    Integer32,
                hwIPv6PrefixName
                    OCTET STRING,
                hwIPv6PrefixType
                    INTEGER,
                hwIPv6Prefix
                    Ipv6AddressPrefix,
                hwIPv6PrefixLen
                    Integer32,
                hwIPv6PrefixDelegatingLen
                    Integer32,
                hwIPv6PrefixAdvPreferredLifetime
                    Integer32,
                hwIPv6PrefixAdvValidLifetime
                    Integer32,
                hwIPv6PrefixAvailableStatus
                    TruthValue,
                hwIPv6VPNInstance
                    OCTET STRING,
                hwIPv6PrefixReservedFlag
                    INTEGER,
                hwIPv6LinkAddress
                    Ipv6Address,
                hwIPv6SlaacUnsharedFlag
                    TruthValue,
                hwIPv6PrefixRowStatus
                    RowStatus,
				hwIPPoolPDUnshareOnly
					TruthValue
             }

        hwIPv6PrefixIndex OBJECT-TYPE
            SYNTAX Integer32 (0..16383)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The index of IPv6 prefix pool."
            ::= { hwIPv6PrefixEntry 1 }

        hwIPv6PrefixName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..32))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The name of IPv6 prefix pool"
            ::= { hwIPv6PrefixEntry 2 }

        hwIPv6PrefixType OBJECT-TYPE
            SYNTAX INTEGER {local(1),delegation(2),remote(3)}
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The type of IPv6 prefix pool."
            ::= { hwIPv6PrefixEntry 3 }

        hwIPv6Prefix OBJECT-TYPE
            SYNTAX Ipv6AddressPrefix
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The prefix of IPv6 prefix pool. This node is valid only for local and delegation prefix pool."
            ::= { hwIPv6PrefixEntry 4 }

        hwIPv6PrefixLen OBJECT-TYPE
            SYNTAX Integer32 (0..128)
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The prefix length of IPv6 prefix pool. Note that 0 is not a configurable value."
            ::= { hwIPv6PrefixEntry 5 }

        hwIPv6PrefixDelegatingLen OBJECT-TYPE
            SYNTAX Integer32 (0..128)
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The delegating prefix length of IPv6 prefix pool. Note that 0 is not a configurable value. This node is valid only for local and delegation prefix pool."
            ::= { hwIPv6PrefixEntry 6 }

        hwIPv6PrefixAdvPreferredLifetime OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The preferred lifetime(seconds) of IPv6 prefix pool."
            ::= { hwIPv6PrefixEntry 7 }

        hwIPv6PrefixAdvValidLifetime OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The valid lifetime(seconds) of the IPv6 prefix."
            ::= { hwIPv6PrefixEntry 8 }

        hwIPv6PrefixAvailableStatus OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The flag indicating whether the IPv6 prefix pool is locked."
            ::= { hwIPv6PrefixEntry 9 }

        hwIPv6VPNInstance OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..31))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The vpn instance name of the IPv6 prefix pool."
            ::= { hwIPv6PrefixEntry 10 }

        hwIPv6PrefixReservedFlag OBJECT-TYPE
            SYNTAX INTEGER { noneReserved(0), macReserved(1), macPlusLeaseReserved(2), duidReserved(3), duidPlusLeaseReserved(4)}
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The reserved flag of the IPv6 prefix pool. 0-none reserved, 1-mac reserved, 2-mac plus lease reserved, 3-duid reserved, 4-duid plus lease reserved."
            ::= { hwIPv6PrefixEntry 11 }

        hwIPv6LinkAddress OBJECT-TYPE
            SYNTAX Ipv6Address
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The link address of the IPv6 remote prefix pool. This node is valid only for remote prefix pool."
            ::= { hwIPv6PrefixEntry 12 }

        hwIPv6SlaacUnsharedFlag OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The flag indicates whether prefix pool is used in unshared-mode. The node is valid only for delegation prefix pool."
            ::= { hwIPv6PrefixEntry 13 }

        hwIPv6PrefixRowStatus OBJECT-TYPE
            SYNTAX RowStatus 
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Row admin status. Support adding, modification and deletion."
            ::= { hwIPv6PrefixEntry 14 }
			
		hwIPPoolPDUnshareOnly OBJECT-TYPE
            SYNTAX TruthValue 
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The flag indicates whether the prefix pool only for DHCPv6 IA_PD. The node is valid only for delegation prefix pool."
            ::= { hwIPv6PrefixEntry 15 }
			
        HwIPv6PoolEntry ::=
            SEQUENCE {
                hwIPv6PoolIndex
                    Integer32,
                hwIPv6PoolName
                    OCTET STRING,
                hwIPv6PoolType
                    INTEGER,
                hwIPv6PoolPrefixName
                    OCTET STRING,
                hwIPv6PoolDnsIPAddr
                    OCTET STRING,
                hwIPv6PoolDnsSearchList
                    OCTET STRING,
                hwIPv6PoolPreference
                    Integer32,
                hwIPv6PoolAvailableStatus
                    TruthValue,
                hwIPv6PoolRenewPercent
                    Integer32,
                hwIPv6PoolRebindingPercent
                    Integer32,
                hwIPv6PoolRapidCommitFlag
                    TruthValue,
                hwIPv6PoolUnicastOption
                    TruthValue,
                hwIPv6PoolAFTRName
                    OCTET STRING,
                hwIPv6PoolRowStatus
                    RowStatus
             }

        HwIPv6PoolStatusEntry ::=
            SEQUENCE {
                hwIPv6FreeAddressNum
                    Integer32,
                hwIPv6UsedAddressNum
                    Integer32,
                hwIPv6FreePrefixNum
                    Integer32,
                hwIPv6UsedPrefixNum
                    Integer32,
                hwIPv6AddressTotalNum
                    Integer32,
                hwIPv6AddressUsedNum
                    Integer32,
                hwIPv6AddressFreeNum
                    Integer32,
                hwIPv6AddressConflictNum
                    Integer32,
                hwIPv6AddressExcludeNum
                    Integer32,
                hwIPv6AddressUsedPercent
                    Integer32,
                hwIPv6NDRAPrefixTotalNum
                    Integer32,
                hwIPv6NDRAPrefixUsedNum
                    Integer32,
                hwIPv6NDRAPrefixFreeNum
                    Integer32,
                hwIPv6NDRAPrefixConflictNum
                    Integer32,
                hwIPv6NDRAPrefixExcludeNum
                    Integer32,
                hwIPv6NDRAPrefixUsedPercent
                    Integer32,
                hwIPv6PDPrefixTotalNum
                    Integer32,
                hwIPv6PDPrefixUsedNum
                    Integer32,
                hwIPv6PDPrefixFreeNum
                    Integer32,
                hwIPv6PDPrefixConflictNum
                    Integer32,
                hwIPv6PDPrefixExcludeNum
                    Integer32,
                hwIPv6PDPrefixUsedPercent
                    Integer32,
                hwV6PoolName
                    DisplayString
             }

        HwIPv6DuidBindPrefixEntry ::=
            SEQUENCE {
                hwIPv6ClientDuid
                    OCTET STRING,
                hwIPv6BindPrefix
                    Ipv6AddressPrefix,
                hwIPv6DuidBindPrefixRowStatus
                    RowStatus
             }

        HwDhcpv6SvrGroupEntry ::=
            SEQUENCE {
                hwDhcpv6SvrGroupIndex
                    Integer32,
                hwDhcpv6SvrGroupName
                    OCTET STRING,
                hwIPDhcpv6SvrAddr1
                    Ipv6Address,
                hwIPDhcpv6SvrAddr2
                    Ipv6Address,
                hwIPDhcpv6PriSvrState
                    INTEGER,
                hwIPDhcpv6ScdSvrState
                    INTEGER,
                hwIPDhcpv6SvrAutoRelease
                    TruthValue,
                hwIPDhcpv6SvrGroupRefCount
                    Integer32,
                hwDhcpv6SvrInterface1
                    DisplayString,
                hwDhcpv6SvrInterface2
                    DisplayString,
                hwDhcpv6SvrAlgorithm
                    INTEGER,
                hwDhcpv6SvrWeight1
                    Integer32,
                hwDhcpv6SvrWeight2
                    Integer32,
                hwIPDhcpv6Svr1VrfName
                    OCTET STRING,
                hwIPDhcpv6Svr2VrfName
                    OCTET STRING,
                hwDhcpv6SvrGroupRowStatus
                    RowStatus,
               hwDhcpv6SvrSourceInterface
                    OCTET STRING
             }

        HwIPv6RemotePoolEntry ::=
            SEQUENCE {
                hwIPv6RemotePoolIndex
                    Integer32,
                hwIPv6RemotePoolName
                    OCTET STRING,
                hwIPv6RemotePoolPrefixName
                    OCTET STRING,
                hwIPv6RemotePoolDhcpv6SvrGroupName
                    OCTET STRING,
                hwIPv6RemotePoolAvailableStatus
                    TruthValue,
                hwIPv6RemotePoolExportHostRouteFlag
                    TruthValue,
                hwIPv6RemotePoolRowStatus
                    RowStatus,
				hwIPv6RemotePoolExportHostRouteIPv6Address
                    TruthValue,	
				hwIPv6RemotePoolExportHostRoutePDPrefix
                    TruthValue,
				hwIPv6RemotePoolExportHostRouteNDPrefix
                    TruthValue,
                hwIPv6RemotePoolWeight Integer32				
             }
             
                hwIPv6PoolIndex OBJECT-TYPE
            SYNTAX Integer32 (0..16383)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The index of IPv6 addres pool."
            ::= { hwIPv6PoolEntry 1 }

        hwIPv6PoolName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..32))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The name of IPv6 addres pool."
            ::= { hwIPv6PoolEntry 2 }

        hwIPv6PoolType OBJECT-TYPE
            SYNTAX INTEGER {local(1),delegation(2),relay(3)}
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The type of IPv6 addres pool."
            ::= { hwIPv6PoolEntry 3 }

        hwIPv6PoolPrefixName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..32))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The prefix pool name of IPv6 addres pool."
            ::= { hwIPv6PoolEntry 4 }

        hwIPv6PoolDnsIPAddr OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..81))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The DNS of IPv6 addres pool. The format to set value is : operator+space+primary DNS+space+secondary DNS. operator: 1-Add, 2-Delete."
            ::= { hwIPv6PoolEntry 5 }

        hwIPv6PoolDnsSearchList OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..32))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The DNS search list of IPv6 addres pool."
            ::= { hwIPv6PoolEntry 6 }

        hwIPv6PoolPreference OBJECT-TYPE
            SYNTAX Integer32 (0..255)
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The preference of IPv6 addres pool."
            ::= { hwIPv6PoolEntry 7 }

        hwIPv6PoolAvailableStatus OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The flag indicating whether IPv6 address pool is locked."
            ::= { hwIPv6PoolEntry 8 }

        hwIPv6PoolRenewPercent OBJECT-TYPE
            SYNTAX Integer32 (10..99)
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The renew time percent of IPv6 addres pool. When hwIPv6PoolRenewPercent is specified, you need also specify hwIPv6PoolRebindingPercent."
            ::= { hwIPv6PoolEntry 9 }

        hwIPv6PoolRebindingPercent OBJECT-TYPE
            SYNTAX Integer32 (10..99)
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The rebinding time percent of IPv6 addres pool. When hwIPv6PoolRebindingPercent is specified, you need also specify hwIPv6PoolRenewPercent."
            ::= { hwIPv6PoolEntry 10 }

        hwIPv6PoolRapidCommitFlag OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The flag indicating whether DHCPv6 rapid-commit is enabled."
            ::= { hwIPv6PoolEntry 11 }

        hwIPv6PoolUnicastOption OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The flag indicating whether DHCPv6 server unicast option is enabled."
            ::= { hwIPv6PoolEntry 12 }

        hwIPv6PoolAFTRName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..63))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Configure the name of Address Family Transition Router."
            ::= { hwIPv6PoolEntry 13 }

        hwIPv6PoolRowStatus OBJECT-TYPE
            SYNTAX RowStatus 
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Row admin status. Support adding, modification and deletion."
            ::= { hwIPv6PoolEntry 14 }

        hwIPv6FreeAddressNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle addresses in the address pool."
            ::= { hwIPv6PoolStatusEntry 1 }

        hwIPv6UsedAddressNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of addresses in use in the address pool."
            ::= { hwIPv6PoolStatusEntry 2 }

        hwIPv6FreePrefixNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle prefixes in the address pool."
            ::= { hwIPv6PoolStatusEntry 3 }

        hwIPv6UsedPrefixNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of prefixes in use in the address pool."
            ::= { hwIPv6PoolStatusEntry 4 }

        hwIPv6AddressTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IPv6 addresses in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 5 }

        hwIPv6AddressUsedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IPv6 addresses in use in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 6 }
            
        hwIPv6AddressFreeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle IPv6 addresses in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 7 }
            
        hwIPv6AddressConflictNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of conflicting IPv6 addresses in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 8 }

        hwIPv6AddressExcludeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IPv6 addresses that cannot be used in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 9 }  
            
        hwIPv6AddressUsedPercent OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the IPv6 address usage of the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 10 }  
            
        hwIPv6NDRAPrefixTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of NDRA prefixes in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 11 } 
            
        hwIPv6NDRAPrefixUsedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of NDRA prefixes in use in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 12 } 
            
        hwIPv6NDRAPrefixFreeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle NDRA prefixes in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 13 }  
            
        hwIPv6NDRAPrefixConflictNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of conflicting NDRA prefixes in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 14 }                      
            
        hwIPv6NDRAPrefixExcludeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of NDRA prefixes that cannot be used in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 15 }
            
        hwIPv6NDRAPrefixUsedPercent OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the IPv6 NDRA prefix usage of the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 16 }
            
        hwIPv6PDPrefixTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of PD prefixes in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 17 }

        hwIPv6PDPrefixUsedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of PD prefixes in use in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 18 }
            
        hwIPv6PDPrefixFreeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle PD prefixes in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 19 } 
            
        hwIPv6PDPrefixConflictNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of conflicting PD prefixes in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 20 } 
            
        hwIPv6PDPrefixExcludeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of PD prefixes that cannot be used in the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 21 } 
            
        hwIPv6PDPrefixUsedPercent OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the IPv6 PD prefix usage of the IPv6 address pool."
            ::= { hwIPv6PoolStatusEntry 22 } 
            
        hwV6PoolName OBJECT-TYPE
            SYNTAX DisplayString (SIZE (1..32))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "IPv6 address pool name."
            ::= { hwIPv6PoolStatusEntry 23 }

        hwIPv6ClientDuid OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (8..28))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The client duid."
            ::= { hwIPv6DuidBindPrefixEntry 1 }

        hwIPv6BindPrefix OBJECT-TYPE
            SYNTAX Ipv6AddressPrefix
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The binding prefix of client."
            ::= { hwIPv6DuidBindPrefixEntry 2 }

        hwIPv6DuidBindPrefixRowStatus OBJECT-TYPE
            SYNTAX RowStatus 
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Row admin status. Support adding and deletion."
            ::= { hwIPv6DuidBindPrefixEntry 3 }

        hwDhcpv6SvrGroupIndex OBJECT-TYPE
            SYNTAX Integer32 (0..4095)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The index of DHCPv6 server group."
            ::= { hwDhcpv6SvrGroupEntry 1 }

        hwDhcpv6SvrGroupName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..32))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The name of DHCPv6 server group."
            ::= { hwDhcpv6SvrGroupEntry 2 }

        hwIPDhcpv6SvrAddr1 OBJECT-TYPE
            SYNTAX Ipv6Address
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The primary DNS address."
            ::= { hwDhcpv6SvrGroupEntry 3 }

        hwIPDhcpv6SvrAddr2 OBJECT-TYPE
            SYNTAX Ipv6Address
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The seconday DNS address."
            ::= { hwDhcpv6SvrGroupEntry 4 }

        hwIPDhcpv6PriSvrState OBJECT-TYPE
            SYNTAX INTEGER {down(0), up(1)}
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The status of primary DNS."
            ::= { hwDhcpv6SvrGroupEntry 5 }

        hwIPDhcpv6ScdSvrState OBJECT-TYPE
            SYNTAX INTEGER {down(0), up(1)}
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The status of secondary DNS."
            ::= { hwDhcpv6SvrGroupEntry 6 }

        hwIPDhcpv6SvrAutoRelease OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The flag indicating whether server will automaticly send DHCPv6 release packet."
            ::= { hwDhcpv6SvrGroupEntry 7 }

        hwIPDhcpv6SvrGroupRefCount OBJECT-TYPE
            SYNTAX Integer32 (0..16384)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The referenced count of DHCPv6 server group."
            ::= { hwDhcpv6SvrGroupEntry 8 }

        hwDhcpv6SvrInterface1 OBJECT-TYPE
            SYNTAX DisplayString
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The outer interface of primary DHCPv6 server."
            ::= { hwDhcpv6SvrGroupEntry 9 }

        hwDhcpv6SvrInterface2 OBJECT-TYPE
            SYNTAX DisplayString
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The outer interface of secondary DHCPv6 server."
            ::= { hwDhcpv6SvrGroupEntry 10 }

        hwDhcpv6SvrAlgorithm OBJECT-TYPE
            SYNTAX INTEGER {masterbackup(1), loadingshare(2), polling(3)}
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The algorithm of selecting DHCPv6 server."
            ::= { hwDhcpv6SvrGroupEntry 11 }

        hwDhcpv6SvrWeight1 OBJECT-TYPE
            SYNTAX Integer32 (0..100)
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The weight of primary DHCPv6 server."
            ::= { hwDhcpv6SvrGroupEntry 12 }

        hwDhcpv6SvrWeight2 OBJECT-TYPE
            SYNTAX Integer32 (0..100)
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The weight of secondary DHCPv6 server."
            ::= { hwDhcpv6SvrGroupEntry 13 }

        hwIPDhcpv6Svr1VrfName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..31))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The vpn instance name of primary DHCPv6 server."
            ::= { hwDhcpv6SvrGroupEntry 14 }

        hwIPDhcpv6Svr2VrfName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..31))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The vpn instance name of secondary DHCPv6 server."
            ::= { hwDhcpv6SvrGroupEntry 15 }

        hwDhcpv6SvrGroupRowStatus OBJECT-TYPE
            SYNTAX RowStatus 
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Row admin status. Support adding, modification and deletion."
            ::= { hwDhcpv6SvrGroupEntry 16 }

     hwDhcpv6SvrSourceInterface OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..47)) 
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The interface name whose IP address is the source IP address carried in the packets sent to the server."
            ::= { hwDhcpv6SvrGroupEntry 17 }


        hwIPv6RemotePoolIndex OBJECT-TYPE
            SYNTAX Integer32 (0..16383)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The index of remote address pool."
            ::= { hwIPv6RemotePoolEntry 1 }

        hwIPv6RemotePoolName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..32))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The name of remote address pool."
            ::= { hwIPv6RemotePoolEntry 2 }

        hwIPv6RemotePoolPrefixName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..32))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The prefix pool name of remote address pool."
            ::= { hwIPv6RemotePoolEntry 3 }

        hwIPv6RemotePoolDhcpv6SvrGroupName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..32))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The DHCPv6 server group name of remote address pool."
            ::= { hwIPv6RemotePoolEntry 4 }

        hwIPv6RemotePoolAvailableStatus OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The flag indicating whether remote address pool is locked."
            ::= { hwIPv6RemotePoolEntry 5 }
        hwIPv6RemotePoolExportHostRouteFlag OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The flag indicating whether to export ipv6 host route."
            ::= { hwIPv6RemotePoolEntry 6 }

        hwIPv6RemotePoolRowStatus OBJECT-TYPE
            SYNTAX RowStatus 
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Row admin status. Support adding, modification and deletion."
            ::= { hwIPv6RemotePoolEntry 7 }
		hwIPv6RemotePoolExportHostRouteIPv6Address OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The flag indicating whether to export host's ipv6 address route ."
            ::= { hwIPv6RemotePoolEntry 8 }
			
		hwIPv6RemotePoolExportHostRoutePDPrefix OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The flag indicating whether to export host's pd prefix route."
            ::= { hwIPv6RemotePoolEntry 9 }
			
		hwIPv6RemotePoolExportHostRouteNDPrefix OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The flag indicating whether to export host's nd prefix route."
            ::= { hwIPv6RemotePoolEntry 10 }
	    
	    hwIPv6RemotePoolWeight  OBJECT-TYPE
            SYNTAX Integer32 (0..100)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The weight of this Remote IPv6 pool."
            ::= { hwIPv6RemotePoolEntry 11 }

        hwIPv6PoolStatistic OBJECT IDENTIFIER ::= { hwIPPoolMibObjects 22 }
        
        hwIpv6PoolNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of configured IPv6 address pools."
            ::= { hwIPv6PoolStatistic 1 }

        hwIpv6AddressIdleTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle IPv6 addresses on the device."
            ::= { hwIPv6PoolStatistic 2 }

        hwIpv6PrefixIdleTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle IPv6 prefixes on the device."
            ::= { hwIPv6PoolStatistic 3 }

        hwIpv6AddressUsedTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IPv6 addresses in use on the device."
            ::= { hwIPv6PoolStatistic 4 }
    
        hwIpv6PrefixUsedTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IPv6 prefixes in use on the device."
            ::= { hwIPv6PoolStatistic 5 }
        
        hwAllIPv6AddressTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IPv6 addresses on the device."
            ::= { hwIPv6PoolStatistic 6 }
            
        hwAllIPv6AddressUsedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IPv6 addresses in use on the device."
            ::= { hwIPv6PoolStatistic 7 }
            
        hwAllIPv6AddressIdleNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle IPv6 addresses on the device."
            ::= { hwIPv6PoolStatistic 8 }
          
        hwAllIPv6ConflictAddressNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of conflicting IPv6 addresses on the device."
            ::= { hwIPv6PoolStatistic 9 }
          
        hwAllIPv6ExcludeAddressNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of IPv6 addresses that cannot be used on the device."
            ::= { hwIPv6PoolStatistic 10 }
          
        hwAllIPv6AddressUsedPercent OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the usage of IPv6 addresses on the device."
            ::= { hwIPv6PoolStatistic 11 }
          
        hwAllNDRAPrefixTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of NDRA prefixes on the device."
            ::= { hwIPv6PoolStatistic 12 }
          
        hwAllNDRAPrefixUsedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of NDRA prefixes in use on the device."
            ::= { hwIPv6PoolStatistic 13 }
          
        hwAllNDRAPrefixFreeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle NDRA prefixes on the device."
            ::= { hwIPv6PoolStatistic 14 }
          
        hwAllNDRAPrefixConflictNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of conflicting NDRA prefixes on the device."
            ::= { hwIPv6PoolStatistic 15 }
          
        hwAllNDRAPrefixExcludeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of NDRA prefixes that cannot be used on the device."
            ::= { hwIPv6PoolStatistic 16 }
          
        hwAllNDRAPrefixUsedPercent OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the usage of NDRA prefixes on the device."
            ::= { hwIPv6PoolStatistic 17 }
          
        hwAllPDPrefixTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of PD prefixes on the device."
            ::= { hwIPv6PoolStatistic 18 }
            
        hwAllPDPrefixUsedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of PD prefixes in use on the device."
            ::= { hwIPv6PoolStatistic 19 }
            
        hwAllPDPrefixFreeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of idle PD prefixes on the device."
            ::= { hwIPv6PoolStatistic 20 }
            
        hwAllPDPrefixConflictNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of conflicting PD prefixes on the device."
            ::= { hwIPv6PoolStatistic 21 }      
            
        hwAllPDPrefixExcludeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the number of PD prefixes that cannot be used on the device."
            ::= { hwIPv6PoolStatistic 22 }  

        hwAllPDPrefixUsedPercent OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object indicates the usage of PD prefixes on the device."
            ::= { hwIPv6PoolStatistic 23 }

       hwDhcpv6ServerTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwDhcpv6ServerEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "
                DHCPv6 server configuration table.
                "
            ::= { hwIPPoolMibObjects 23 }  
            
        hwDhcpv6ServerEntry OBJECT-TYPE             
          SYNTAX HwDhcpv6ServerEntry
          MAX-ACCESS not-accessible
          STATUS current
          DESCRIPTION
              "The configuration of DHCPv6 server table."
          INDEX { hwDhcpv6SvrIndex }
          ::= { hwDhcpv6ServerTable 1 }
          
      HwDhcpv6ServerEntry ::=      
           SEQUENCE { 
            hwDhcpv6SvrIndex
                Integer32,
            hwDhcpv6ServerIP
                Ipv6Address, 
            hwDhcpv6ServerVRFName
                OCTET STRING,
            hwDhcpv6ServerIfIndex
                Integer32,    
            hwDhcpv6ServerState
                INTEGER,
            hwDhcpv6ServerSendSolicitSpeedNum
                Integer32, 
            hwDhcpv6ServerSendSolicitSpeedSec
                Integer32
          }

        hwDhcpv6SvrIndex OBJECT-TYPE
            SYNTAX Integer32 (0..4095)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The index of DHCPv6 server."
            ::= { hwDhcpv6ServerEntry 1 }  
            
        hwDhcpv6ServerIP OBJECT-TYPE
            SYNTAX Ipv6Address
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The IPv6 address of DHCPv6 server."
            ::= { hwDhcpv6ServerEntry 2 } 
            
        hwDhcpv6ServerVRFName OBJECT-TYPE 
            SYNTAX OCTET STRING (SIZE (1..31))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The name of VPN instance for the DHCPv6 server.   "
            ::= { hwDhcpv6ServerEntry 3 } 
  
        hwDhcpv6ServerIfIndex OBJECT-TYPE
            SYNTAX Integer32 
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The IfIndex of DHCPv6 server."
            ::= { hwDhcpv6ServerEntry 4 } 
                        
        hwDhcpv6ServerState OBJECT-TYPE  
            SYNTAX INTEGER
            {
             down(0),
             up(1)
            }
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The state of DHCPv6 server."
            ::= { hwDhcpv6ServerEntry 5 }   
            
        hwDhcpv6ServerSendSolicitSpeedNum OBJECT-TYPE
            SYNTAX Integer32 (0..65535)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The speed of sending solicit packet."
            ::= { hwDhcpv6ServerEntry 6 } 
            
        hwDhcpv6ServerSendSolicitSpeedSec OBJECT-TYPE
            SYNTAX Integer32 (0..10)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The interval of solicit packets sent by DHCPv6 server.  "
            ::= { hwDhcpv6ServerEntry 7 }                      

        hwIPPoolOptionExtTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPPoolOptionExtEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "A Ext table for configuring options to DHCP server pools,
               include option code type and value and so on ."
            ::= { hwIPPoolMibObjects 14 }
        
        hwIPPoolOptionExtEntry OBJECT-TYPE
            SYNTAX HwIPPoolOptionExtEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "DESCRIPTION."
            INDEX { hwIPPoolIndex, hwIPDhcpOptionId, hwIPDhcpOptionSubId }
            ::= { hwIPPoolOptionExtTable 1 }
        
        HwIPPoolOptionExtEntry ::=
            SEQUENCE {  
                    hwIPDhcpOptionSubId
                        Integer32,
                    hwIPDhcpOptionSubType
                        INTEGER,  
                    hwIPDhcpOptionSubValue
                        OCTET STRING,
                    hwIPDhcpOptionSubRowStatus 
                        RowStatus          
                 }
                 
        hwIPDhcpOptionSubId OBJECT-TYPE
            SYNTAX Integer32 (1..254)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Sub Option ID.
                 When IP addresses are allocated by the built-in DHCP server, the option is a configuration parameter, which needs to be defined and explained by the carrier."
            ::= { hwIPPoolOptionExtEntry 1 }           
      
        hwIPDhcpOptionSubType OBJECT-TYPE
            SYNTAX INTEGER {ip(1), string(2)}
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Value indicates the type of sub-option, 1-ip, 2-string."
            ::= { hwIPPoolOptionExtEntry 2 }    
   
        hwIPDhcpOptionSubValue OBJECT-TYPE
            SYNTAX OCTET STRING(SIZE (1..64))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Value of the sub-option."
            ::= { hwIPPoolOptionExtEntry 3 }       

                   
            
        hwIPDhcpOptionSubRowStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "This object is used to configuration new rows in this
            table, modify existing rows, and to delete
            existing rows.Only three actions are used: active(1),
            createAndGo(4), destroy(6).
            while configuration new suboption, you must specify suboption type 
            and value"
            ::= { hwIPPoolOptionExtEntry 50 }                            

         hwIPPoolReplyOptionTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPPoolReplyOptionEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "A table for configuring options which will be replied to client 
                 in according to specified option value of DHCP client request "
            ::= { hwIPPoolMibObjects 15 }
        
        hwIPPoolReplyOptionEntry OBJECT-TYPE
            SYNTAX HwIPPoolReplyOptionEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "DESCRIPTION."
            INDEX { hwIPPoolIndex,hwIPDhcpSpecOptionId,hwIPDhcpSpecOption,hwIPDhcpReplyOptionId,hwIPDhcpReplyOptionSubId }
            ::= { hwIPPoolReplyOptionTable 1 }
        
        HwIPPoolReplyOptionEntry ::=
            SEQUENCE {  
                    hwIPDhcpSpecOptionId
                        Integer32,
                    hwIPDhcpSpecOption
                        OCTET STRING,
                    hwIPDhcpReplyOptionId
                        Integer32,
                    hwIPDhcpReplyOptionSubId
                        Integer32,
                    hwIPDhcpReplyOptionSubType
                        INTEGER,
                    hwIPDhcpReplyOptionSub
                        OCTET STRING,                                                                        
                    hwIPDhcpReplyOptionRowStatus 
                        RowStatus       
                 }
                 
        hwIPDhcpSpecOptionId OBJECT-TYPE
            SYNTAX Integer32 (60..60)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Option ID.
                 Option code from DHCP request of client."
            ::= { hwIPPoolReplyOptionEntry 1 }                 

        hwIPDhcpSpecOption OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE(1..64))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Option ID.
                 Option code from DHCP request of client."
            ::= { hwIPPoolReplyOptionEntry 2 }           
            
        hwIPDhcpReplyOptionId OBJECT-TYPE
            SYNTAX Integer32 (2..254)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "This object is used to configuration option code which is needed to 
                reply to client according to specified option value in DHCP request,
                Option code, from 2 to 254, include 2 and 254, exclude
                  3,6,15,44,46,50-54,57-60,82"
            ::= { hwIPPoolReplyOptionEntry 3 }

        hwIPDhcpReplyOptionSubId OBJECT-TYPE
            SYNTAX Integer32 (1..254)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Sub Option ID.
                 When IP addresses are allocated by the built-in DHCP server, the option is a configuration parameter, 
                 which needs to be defined and explained by the carrier."
            ::= { hwIPPoolReplyOptionEntry 4 }           
      
        hwIPDhcpReplyOptionSubType OBJECT-TYPE
            SYNTAX INTEGER {ip(1), string(2), hex(3)}
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Value indicates the type of sub-option, 1-ip, 2-string, 3-hex."
            ::= { hwIPPoolReplyOptionEntry 5 }    
   
        hwIPDhcpReplyOptionSub OBJECT-TYPE
            SYNTAX OCTET STRING(SIZE (1..128))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Value of the sub-option."
            ::= { hwIPPoolReplyOptionEntry 6 }       
                        
        hwIPDhcpReplyOptionRowStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "This object is used to configuration new rows in this
            table, modify existing rows, and to delete
            existing rows.Only three actions are used: active(1),
            createAndGo(4), destroy(6).
            while configuration new option, you must specify option type 
            and value"
            ::= { hwIPPoolReplyOptionEntry 50 }                           

	hwIPV6AddressStatusTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPV6AddressStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "A table for configuring the status of ipv6 address which in ipv6 local preifx "
            ::= { hwIPPoolMibObjects 24 }
			
	hwIPV6AddressStatusEntry OBJECT-TYPE
            SYNTAX HwIPV6AddressStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "DESCRIPTION."
            INDEX { hwIPv6PrefixIndex,hwIPv6Address }
            ::= { hwIPV6AddressStatusTable 1 }
        
        HwIPV6AddressStatusEntry ::=
            SEQUENCE {  
                    hwIPv6Address
                        Ipv6Address,
                    hwIPv6AddressStatus
                        INTEGER,
                    hwIPv6LocalPrefixName
                        DisplayString    
                 }
                 
        hwIPv6Address OBJECT-TYPE
            SYNTAX Ipv6Address
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Ipv6Address."
            ::= { hwIPV6AddressStatusEntry 1 }
			
		hwIPv6AddressStatus OBJECT-TYPE
            SYNTAX INTEGER
                {
                    idle(0),
                    occupied(1),
                    prohibitive(2),
                    conflictive(3),
                    flex(4),
                    static(5),
                    radius(6),
                    reserved(7)
                }
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Ipv6Address status: idle(0) occupied(1) prohibitive(2) conflictive(3).
				Status can set idle(0) when prohibitive(2) conflictive(3) reserved(7),set prohibitive(2) when idle(0)."
            ::= { hwIPV6AddressStatusEntry 2 }
			
		hwIPv6LocalPrefixName OBJECT-TYPE
            SYNTAX DisplayString (SIZE (1..32))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Ipv6 Local prefix's name."
            ::= { hwIPV6AddressStatusEntry 3 }
		
		hwIPV6PrefixStatusTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPV6PrefixStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "A table for configuring the status of ipv6 prefix which in ipv6 delegation preifx "
            ::= { hwIPPoolMibObjects 25 }
			
		hwIPV6PrefixStatusEntry OBJECT-TYPE
            SYNTAX HwIPV6PrefixStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "DESCRIPTION."
            INDEX { hwIPv6PrefixIndex,hwIpv6Prefix }
            ::= { hwIPV6PrefixStatusTable 1 }
        
        HwIPV6PrefixStatusEntry ::=
            SEQUENCE {  
                    hwIpv6Prefix
                        Ipv6AddressPrefix,
					hwIpv6PrefixLen
						Integer32,
                    hwIPv6PrefixStatus
                        INTEGER,
                    hwIPv6DelegationPrefixName
                        DisplayString    
                 }
                 
        hwIpv6Prefix OBJECT-TYPE
            SYNTAX Ipv6AddressPrefix
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Ipv6Prefix."
            ::= { hwIPV6PrefixStatusEntry 1 }
			
		hwIpv6PrefixLen OBJECT-TYPE
            SYNTAX Integer32(1..128)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Ipv6PrefixLength."
            ::= { hwIPV6PrefixStatusEntry 2 }
			
		hwIPv6PrefixStatus OBJECT-TYPE
            SYNTAX INTEGER
                {
                    idle(0),
                    occupied(1),
                    prohibitive(2),
                    conflictive(3),
					flex(4),
                    static(5),
					radius(6),
                    reserved(7),
                    binded(8)
                }
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Ipv6 Prefix status:idle(0) occupied(1) prohibitive(2) conflictive(3).
				Status can set idle(0) when prohibitive(2) conflictive(3) reserved(7),set prohibitive(2) when idle(0)."
            ::= { hwIPV6PrefixStatusEntry 3 }
			
		hwIPv6DelegationPrefixName OBJECT-TYPE
            SYNTAX DisplayString (SIZE (1..32))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Ipv6 Delegation prefix's name."
            ::= { hwIPV6PrefixStatusEntry 4 }
		
		hwIPPoolConstantIndex OBJECT IDENTIFIER ::= { hwIPPoolMibObjects 26 }
        hwIPPoolConstantIndexEnable OBJECT-TYPE
            SYNTAX Integer32(0..1)
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Enable IP Pool Constant index function."
            ::= { hwIPPoolConstantIndex 1 }       
            
        hwIPPoolSetting OBJECT IDENTIFIER ::= { hwIPPoolMibObjects 27 }
        hwIPPoolAlgorithm OBJECT-TYPE
            SYNTAX INTEGER{
                         enable(1),
                         disable(2)
                         }
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The ipv4 remote pool algorithm."
            ::= { hwIPPoolSetting 1 }      
            
        hwIPv6PoolAlgorithm OBJECT-TYPE
            SYNTAX INTEGER{
                         enable(1),
                         disable(2)
                         }
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The ipv6 remote pool algorithm."
            ::= { hwIPPoolSetting 2 }    

        hwCUIPPoolDynSubnetTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwCUIPPoolDynSubnetEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The IPv4 dynamic address pool list in the CU separation scenario."
            ::= { hwIPPoolMibObjects 28 }

        hwCUIPPoolDynSubnetEntry OBJECT-TYPE
            SYNTAX HwCUIPPoolDynSubnetEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "Dynamic address pool usage statistics."
            INDEX { hwIPPoolIndex, hwCUIPNetWorkIndex, hwCUIPDynSubnetIndex }
            ::= { hwCUIPPoolDynSubnetTable 1 }

        HwCUIPPoolDynSubnetEntry ::=
            SEQUENCE {
                hwCUIPNetWorkIndex
                    Integer32,
                hwCUIPDynSubnetIndex
                    Integer32,
                hwCUIPDynSubnetLowAddr
                    IpAddress,
                hwCUIPDynSubnetHighAddr
                    IpAddress,
                hwCUIPDynSubnetUsedNum
                    Integer32,
                hwCUIPDynSubnetConflict
                    Integer32,
                hwCUIPDynSubnetUsedRatio
                    Integer32,
                hwCUIPDynSubnetStatus
                    INTEGER
             }
        hwCUIPNetWorkIndex OBJECT-TYPE
            SYNTAX Integer32 (0..16383)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Network index."
            ::= { hwCUIPPoolDynSubnetEntry 1 }

        hwCUIPDynSubnetIndex OBJECT-TYPE
            SYNTAX Integer32 (0..16383)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Subnet index."
            ::= { hwCUIPPoolDynSubnetEntry 2 }

        hwCUIPDynSubnetLowAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "Low IP address of the subnet."
            ::= { hwCUIPPoolDynSubnetEntry 3 }

        hwCUIPDynSubnetHighAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "High IP address of the subnet."
            ::= { hwCUIPPoolDynSubnetEntry 4 }

        hwCUIPDynSubnetUsedNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of IP addresses of the subnet."
            ::= { hwCUIPPoolDynSubnetEntry 5 }

        hwCUIPDynSubnetConflict OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of conflicting IP addresses of the subnet."
            ::= { hwCUIPPoolDynSubnetEntry 6 }

        hwCUIPDynSubnetUsedRatio OBJECT-TYPE
            SYNTAX Integer32 (0..16383)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Subnet usage."
            ::= { hwCUIPPoolDynSubnetEntry 7 }

        hwCUIPDynSubnetStatus OBJECT-TYPE
            SYNTAX INTEGER
                {
                used(2),
                idle(3),
                block(4)
                }
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The status of this subnet."
            ::= { hwCUIPPoolDynSubnetEntry 8 }

        hwCUIPv6PoolStatisticTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwCUIPv6PoolStatisticEntry 
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "IPv6 address pool usage statistics list in CU isolation scenario."
            ::= { hwIPPoolMibObjects 29 }

        hwCUIPv6PoolStatisticEntry OBJECT-TYPE
            SYNTAX HwCUIPv6PoolStatisticEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "Collect statistics about the usage of IPv6 address pools of UPs in the scenario of CU separation."
            INDEX { hwCUIPv6UpId }
            ::= { hwCUIPv6PoolStatisticTable 1 }

        HwCUIPv6PoolStatisticEntry ::=
            SEQUENCE {
                hwCUIPv6UpId
                    Integer32,
                hwCUIpv6PoolNum
                    Integer32,
                hwCUIpv6AddressIdleTotalNum
                    Integer32,
                hwCUIpv6PrefixIdleTotalNum
                    Integer32,
                hwCUIpv6AddressUsedTotalNum
                    Integer32,
                hwCUIpv6PrefixUsedTotalNum
                    Integer32,
                hwCUAllIPv6AddressTotalNum
                    Integer32,
                hwCUAllIPv6AddressUsedNum
                    Integer32,
                hwCUAllIPv6AddressIdleNum
                    Integer32,
                hwCUAllIPv6ConflictAddressNum
                    Integer32,
                hwCUAllIPv6ExcludeAddressNum
                    Integer32,
                hwCUAllIPv6AddressUsedPercent
                    Integer32,
                hwCUAllNDRAPrefixTotalNum
                    Integer32,
                hwCUAllNDRAPrefixUsedNum
                    Integer32,
                hwCUAllNDRAPrefixFreeNum
                    Integer32,
                hwCUAllNDRAPrefixConflictNum
                    Integer32,
                hwCUAllNDRAPrefixExcludeNum
                    Integer32,
                hwCUAllNDRAPrefixUsedPercent
                    Integer32,
                hwCUAllPDPrefixTotalNum
                    Integer32,
                hwCUAllPDPrefixUsedNum
                    Integer32,
                hwCUAllPDPrefixFreeNum
                    Integer32,
                hwCUAllPDPrefixConflictNum
                    Integer32,
                hwCUAllPDPrefixExcludeNum
                    Integer32,
                hwCUAllPDPrefixUsedPercent
                    Integer32
             }
			 
		hwCUIPv6UpId OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Id of ipv6 address pools."
            ::= { hwCUIPv6PoolStatisticEntry 1 }

        hwCUIpv6PoolNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of IPv6 address pools configured."
            ::= { hwCUIPv6PoolStatisticEntry 2 }

        hwCUIpv6AddressIdleTotalNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of idle IPv6 addresses on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 3}

        hwCUIpv6PrefixIdleTotalNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of idle IPv6 prefixes on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 4}

        hwCUIpv6AddressUsedTotalNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of in-use IPv6 addresses on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 5}

        hwCUIpv6PrefixUsedTotalNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of in-use IPv6 prefixes on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 6} 

        hwCUAllIPv6AddressTotalNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total number of IPv6 addresses on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 7}

        hwCUAllIPv6AddressUsedNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of in-use IPv6 addresses on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 8}

        hwCUAllIPv6AddressIdleNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of idle IPv6 addresses on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 9}

        hwCUAllIPv6ConflictAddressNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of conflicting IPv6 addresses on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 10}

        hwCUAllIPv6ExcludeAddressNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of disabled IPv6 addresses on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 11}

        hwCUAllIPv6AddressUsedPercent OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "IPv6 address usage on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 12}

        hwCUAllNDRAPrefixTotalNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total number of ND RA prefixes on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 13}

        hwCUAllNDRAPrefixUsedNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of in-use ND RA prefixes on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 14}

        hwCUAllNDRAPrefixFreeNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of idle ND RA prefixes on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 15}

        hwCUAllNDRAPrefixConflictNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of conflicting ND RA prefixes on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 16}

        hwCUAllNDRAPrefixExcludeNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of disabled ND RA prefixes on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 17}

         hwCUAllNDRAPrefixUsedPercent OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "ND RA prefix usage on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 18}

        hwCUAllPDPrefixTotalNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total number of PD prefixes on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 19}

        hwCUAllPDPrefixUsedNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "PD prefix usage on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 20}

        hwCUAllPDPrefixFreeNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of idle PD prefixes on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 21}

        hwCUAllPDPrefixConflictNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of conflicting PD prefixes on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 22}

        hwCUAllPDPrefixExcludeNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of disabled PD prefixes on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 23}

        hwCUAllPDPrefixUsedPercent OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "PD prefix usage on the UP."
            ::= { hwCUIPv6PoolStatisticEntry 24}

        hwCUIPPoolStatisticTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwCUIPPoolStatisticEntry 
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "IPv4 address pool usage statistics list in CU isolation scenario."
            ::= { hwIPPoolMibObjects 30 }

        hwCUIPPoolStatisticEntry OBJECT-TYPE
            SYNTAX HwCUIPPoolStatisticEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "Collect statistics about the usage of IPv4 address pools of UPs in the scenario of CU separation."
            INDEX { hwIPPoolStatisticUpId }
            ::= { hwCUIPPoolStatisticTable 1 }

        HwCUIPPoolStatisticEntry ::=
            SEQUENCE {
			    hwIPPoolStatisticUpId
                    Integer32,
                hwCUIPPoolNum
                    Integer32,
                hwCUIPIdleTotalNum
                    Integer32,
                hwCUIPUsedTotalNum
                    Integer32,
                hwCUIPConflictTotalNum
                    Integer32,
                hwCUIPExcludeTotalNum
                    Integer32,
                hwCUIPTotalNum
                    Integer32,
                hwCUIPUsedPercent
                    Integer32
             }
			 
		hwIPPoolStatisticUpId OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Id of ipv4 address pool."
            ::= { hwCUIPPoolStatisticEntry 1}
			
        hwCUIPPoolNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of IPv4 address pools configured."
            ::= { hwCUIPPoolStatisticEntry 2}

        hwCUIPIdleTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of idle IPv4 addresses on the UP."
            ::= { hwCUIPPoolStatisticEntry 3}

        hwCUIPUsedTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of in-use IPv4 addresses on the UP."
            ::= { hwCUIPPoolStatisticEntry 4}

        hwCUIPConflictTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of conflicting IPv4 addresses on the UP."
            ::= { hwCUIPPoolStatisticEntry 5}

        hwCUIPExcludeTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Number of disabled IPv4 addresses on the UP."
            ::= { hwCUIPPoolStatisticEntry 6} 

        hwCUIPTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total number of IPv4 addresses on the UP."
            ::= { hwCUIPPoolStatisticEntry 7}

        hwCUIPUsedPercent OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "IPv4 address usage on the UP."
            ::= { hwCUIPPoolStatisticEntry 8}

        hwIPPoolVpnStatusTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPPoolVpnStatusEntry 
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "IPv4 address pool usage statistics list of vpn."
            ::= { hwIPPoolMibObjects 31 }

        hwIPPoolVpnStatusEntry OBJECT-TYPE
            SYNTAX HwIPPoolVpnStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "Collect statistics about the usage of IPv4 address pools of vpn."
            INDEX { hwIPv4PoolVPNInstance }
            ::= { hwIPPoolVpnStatusTable 1 }

        HwIPPoolVpnStatusEntry ::=
            SEQUENCE {
                hwIPv4PoolVPNInstance
                    Integer32,
                hwIPPoolTotalNum
                    Integer32,
                hwIPPoolIdleNum
                    Integer32,
                hwIPPoolUsedNum
                    Integer32,
                hwIPPoolConflictedNum
                    Integer32,
                hwIPPoolExcludeNum
                    Integer32,
                hwIPPoolReservedNum
                    Integer32,
                hwIPPoolStaticBindNum
                    Integer32,
                hwIPPoolVPNThreshold
                    Integer32,
                hwIPPoolUsedPercent
                    Integer32
             }
			 
        hwIPv4PoolVPNInstance OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "VPN ID"
            ::= { hwIPPoolVpnStatusEntry 1}
			
        hwIPPoolTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The total number of all IPv4 address pools of the vpn."
            ::= { hwIPPoolVpnStatusEntry 2}

        hwIPPoolIdleNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The total number of free addresses in all IPv4 addresses of the vpn."
            ::= { hwIPPoolVpnStatusEntry 3}

        hwIPPoolUsedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The total number of used addresses in all IPv4 addresses of the vpn."
            ::= { hwIPPoolVpnStatusEntry 4}

        hwIPPoolConflictedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The total number of conflicting addresses in all IPv4 addresses of the vpn."
            ::= { hwIPPoolVpnStatusEntry 5}

        hwIPPoolExcludeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The total number of addresses to be excluded from all IPv4 addresses of the vpn."
            ::= { hwIPPoolVpnStatusEntry 6} 

        hwIPPoolReservedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The total number of addresses to be reserved from all IPv4 addresses of the vpn."
            ::= { hwIPPoolVpnStatusEntry 7}

        hwIPPoolStaticBindNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The total number of addresses to be static binded from all IPv4 addresses of the vpn."
            ::= { hwIPPoolVpnStatusEntry 8}
	    
		hwIPPoolVPNThreshold OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The threshold of the vpn."
            ::= { hwIPPoolVpnStatusEntry 9}
			
        hwIPPoolUsedPercent OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The used percent of addresses with the vpn."
            ::= { hwIPPoolVpnStatusEntry 10}
			
        hwIPv6PoolVpnStatusTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwIPv6PoolVpnStatusEntry 
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "IPv6 address pool usage statistics list of vpn."
            ::= { hwIPPoolMibObjects 32 }

        hwIPv6PoolVpnStatusEntry OBJECT-TYPE
            SYNTAX HwIPv6PoolVpnStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "Collect statistics about the usage of IPv6 address pools of vpn."
            INDEX { hwIPv6PoolVPNInstance }
            ::= { hwIPv6PoolVpnStatusTable 1 }

        HwIPv6PoolVpnStatusEntry ::=
            SEQUENCE {
                hwIPv6PoolVPNInstance
                    Integer32,
                hwIPv6PoolTotalNum
                    Integer32,
                hwIPv6PoolIdleNum
                    Integer32,
                hwIPv6PoolUsedNum
                    Integer32,
                hwIPv6PoolConflictedNum
                    Integer32,
                hwIPv6PoolExcludeNum
                    Integer32,
                hwIPv6PoolVPNThreshold
                    Integer32,
                hwIPv6PoolUsedPercent
                    Integer32
             }
			 
        hwIPv6PoolVPNInstance OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "VPN ID"
            ::= { hwIPv6PoolVpnStatusEntry 1}
			
        hwIPv6PoolTotalNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The total number of all IPv6 address pools of the vpn."
            ::= { hwIPv6PoolVpnStatusEntry 2}

        hwIPv6PoolIdleNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The total number of free addresses in all IPv6 addresses of the vpn."
            ::= { hwIPv6PoolVpnStatusEntry 3}

        hwIPv6PoolUsedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The total number of used addresses in all IPv6 addresses of the vpn."
            ::= { hwIPv6PoolVpnStatusEntry 4}

        hwIPv6PoolConflictedNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The total number of conflicting addresses in all IPv6 addresses of the vpn."
            ::= { hwIPv6PoolVpnStatusEntry 5}

        hwIPv6PoolExcludeNum OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The total number of addresses to be excluded from all IPv6 addresses of the vpn."
            ::= { hwIPv6PoolVpnStatusEntry 6} 
	    
        hwIPv6PoolVPNThreshold OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The threshold of the vpn."
            ::= { hwIPv6PoolVpnStatusEntry 7}
			
         hwIPv6PoolUsedPercent OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "The used percent of addresses with the vpn."
            ::= { hwIPv6PoolVpnStatusEntry 8}		
		
        hwDapPoolStatusTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwDapPoolStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The table of dap-server ip pool status."
            ::= { hwIPPoolMibObjects 33 }

        hwDapPoolStatusEntry OBJECT-TYPE
            SYNTAX HwDapPoolStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The entry of dap-server ip pool status."
            INDEX { hwDapPoolIndex }
            ::= { hwDapPoolStatusTable 1 }

        HwDapPoolStatusEntry ::=
            SEQUENCE {
                hwDapPoolIndex
                    Integer32,
                hwDapPoolName
                    DisplayString,
                hwDapPoolStatusFlag
                    INTEGER,
                hwDapPoolSubnetTotalNum
                    Integer32,
                hwDapPoolSubnetUsedNum
                    Integer32,
                hwDapPoolSubnetIdleNum
                    Integer32,
                hwDapPoolSubnetBlockNum
                    Integer32,
                hwDapPoolSubnetUsedPercent
                    Integer32
             }
        hwDapPoolIndex OBJECT-TYPE
            SYNTAX Integer32 (0..4095)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Index of address resource pool instance."
            ::= { hwDapPoolStatusEntry 1 }

        hwDapPoolName OBJECT-TYPE
            SYNTAX DisplayString (SIZE(0..36))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Name of the address resource pool instance."
            ::= { hwDapPoolStatusEntry 2 }

        hwDapPoolStatusFlag OBJECT-TYPE
            SYNTAX INTEGER
                {
                unlocked(0),
                locked(1)
                }
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Address resource pool status."
            ::= { hwDapPoolStatusEntry 3 }

        hwDapPoolSubnetTotalNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total number of all subnet segments."
            ::= { hwDapPoolStatusEntry 4 }

        hwDapPoolSubnetUsedNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total number of subnet segments in use."
            ::= { hwDapPoolStatusEntry 5 }

        hwDapPoolSubnetIdleNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total number of free subnet segments."
            ::= { hwDapPoolStatusEntry 6 }

        hwDapPoolSubnetBlockNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total number of blocked subnet segments."
            ::= { hwDapPoolStatusEntry 7 }

        hwDapPoolSubnetUsedPercent OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Utilization of subnet segments."
            ::= { hwDapPoolStatusEntry 8 }
            
        hwDapSubnetStatusTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwDapSubnetStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The table of dap-server ip pool subnet status."
            ::= { hwIPPoolMibObjects 34 }

        hwDapSubnetStatusEntry OBJECT-TYPE
            SYNTAX HwDapSubnetStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The entry of dap-server ip pool subnet status."
            INDEX { hwDapPoolIndex, hwDapSubnetStartIP }
            ::= { hwDapSubnetStatusTable 1 }

        HwDapSubnetStatusEntry ::=
            SEQUENCE {
                hwDapSubnetStatusFlag
                    INTEGER,
                hwDapSubnetClientName
                    DisplayString,
                hwDapSubnetMaskLength
                    Integer32,
                hwDapSubnetIPTotalNum
                    Integer32,
                hwDapSubnetStartIP
                    IpAddress,
                hwDapSubnetStopIP
                    IpAddress
             }

        hwDapSubnetStatusFlag OBJECT-TYPE
            SYNTAX INTEGER
                {
                    used(2),
                    idle(3),
                    block(4)
                }
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Current status of the subnet segment."
            ::= { hwDapSubnetStatusEntry 1 }

        hwDapSubnetClientName OBJECT-TYPE
            SYNTAX DisplayString (SIZE(0..12))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Client name registered with the server."
            ::= { hwDapSubnetStatusEntry 2 }

        hwDapSubnetMaskLength OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Subnet segment mask length."
            ::= { hwDapSubnetStatusEntry 3 }

        hwDapSubnetIPTotalNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total addresses in subnet segment."
            ::= { hwDapSubnetStatusEntry 4 }

        hwDapSubnetStartIP OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Initial IP of divisible subnet segment."
            ::= { hwDapSubnetStatusEntry 5 }

        hwDapSubnetStopIP OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "End IP of distributable subnet segment."
            ::= { hwDapSubnetStatusEntry 6 }
            
        hwDapV6PoolStatusTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwDapV6PoolStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The table of dap-server ipv6 pool status."
            ::= { hwIPPoolMibObjects 35 }

        hwDapV6PoolStatusEntry OBJECT-TYPE
            SYNTAX HwDapV6PoolStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The entry of dap-server ipv6 pool status."
            INDEX { hwDapV6PoolIndex }
            ::= { hwDapV6PoolStatusTable 1 }

        HwDapV6PoolStatusEntry ::=
            SEQUENCE {
                hwDapV6PoolIndex
                    Integer32,
                hwDapV6PoolName
                    DisplayString,
                hwDapV6PoolStatusFlag
                    INTEGER,
                hwDapV6PoolPrefixTotalNum
                    Integer32,
                hwDapV6PoolPrefixUsedNum
                    Integer32,
                hwDapV6PoolPrefixIdleNum
                    Integer32,
                hwDapV6PoolPrefixBlockNum
                    Integer32,
                hwDapV6PoolPrefixUsedPercent
                    Integer32
             }
        hwDapV6PoolIndex OBJECT-TYPE
            SYNTAX Integer32 (0..4095)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Index of address resource pool instance."
            ::= { hwDapV6PoolStatusEntry 1 }

        hwDapV6PoolName OBJECT-TYPE
            SYNTAX DisplayString (SIZE(0..36))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Name of the address resource pool instance."
            ::= { hwDapV6PoolStatusEntry 2 }

        hwDapV6PoolStatusFlag OBJECT-TYPE
            SYNTAX INTEGER
                {
                unlocked(0),
                locked(1)
                }
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Address resource pool status."
            ::= { hwDapV6PoolStatusEntry 3 }

        hwDapV6PoolPrefixTotalNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total number of all prefixes."
            ::= { hwDapV6PoolStatusEntry 4 }

        hwDapV6PoolPrefixUsedNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total prefixes used for status."
            ::= { hwDapV6PoolStatusEntry 5 }

        hwDapV6PoolPrefixIdleNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total number of prefixes in idle state."
            ::= { hwDapV6PoolStatusEntry 6 }

        hwDapV6PoolPrefixBlockNum OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Total number of prefixes blocked."
            ::= { hwDapV6PoolStatusEntry 7 }

        hwDapV6PoolPrefixUsedPercent OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Prefix usage."
            ::= { hwDapV6PoolStatusEntry 8 }
            
        hwDapV6PrefixStatusTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwDapV6PrefixStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The table of dap-server ipv6 pool prefix status."
            ::= { hwIPPoolMibObjects 36 }

        hwDapV6PrefixStatusEntry OBJECT-TYPE
            SYNTAX HwDapV6PrefixStatusEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The entry of dap-server ipv6 pool prefix status."
            INDEX { hwDapV6PoolIndex, hwDapV6PrefixIPv6Address }
            ::= { hwDapV6PrefixStatusTable 1 }

        HwDapV6PrefixStatusEntry ::=
            SEQUENCE {
                hwDapV6PrefixStatusFlag
                    INTEGER,
                hwDapV6PrefixClientName
                    DisplayString,
                hwDapV6PrefixMaskLength
                    Integer32,
                hwDapV6PrefixIPv6Address
                    Ipv6AddressPrefix
             }

        hwDapV6PrefixStatusFlag OBJECT-TYPE
            SYNTAX INTEGER
                {
                    used(2),
                    idle(3),
                    block(4)
                }
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Current status of the subnet segment."
            ::= { hwDapV6PrefixStatusEntry 1 }

        hwDapV6PrefixClientName OBJECT-TYPE
            SYNTAX DisplayString (SIZE(0..12))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Client name registered with the server."
            ::= { hwDapV6PrefixStatusEntry 2 }

        hwDapV6PrefixMaskLength OBJECT-TYPE
            SYNTAX Integer32 (0..2147483647)
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Prefix mask length."
            ::= { hwDapV6PrefixStatusEntry 3 }

        hwDapV6PrefixIPv6Address OBJECT-TYPE
            SYNTAX Ipv6AddressPrefix
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Prefix IPv6 address."
            ::= { hwDapV6PrefixStatusEntry 4 }
        
        hwIPPoolMibTrap OBJECT IDENTIFIER ::= { hwIppool 2 }

        hwIPPoolTrapOid OBJECT IDENTIFIER ::= { hwIPPoolMibTrap 1 }

        hwUserIPAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "IP address of the user."
            ::= { hwIPPoolTrapOid 1 }

        hwDHCPServerAddr OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "IP address of the DHCP server."
            ::= { hwIPPoolTrapOid 2 }
                                      
        hwDhcpSvrVrfName OBJECT-TYPE
            SYNTAX DisplayString (SIZE (1..31))
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "DHCP    VPN instance name."
            ::= { hwIPPoolTrapOid 3 }

       hwIPPoolGroupIndex OBJECT-TYPE
            SYNTAX Integer32 (0..1023)
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "Exclusive index of IP pool group."
            ::= { hwIPPoolTrapOid 4 }
            
       hwDhcpSvrDownReason OBJECT-TYPE
            SYNTAX DisplayString (SIZE (1..31))
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "DHCP server down reason."
            ::= { hwIPPoolTrapOid 5 }  

         hwIPPoolDAPName OBJECT-TYPE
            SYNTAX DisplayString (SIZE(1..253))
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "DAP name."
            ::= { hwIPPoolTrapOid 7 }
      
         hwIPPoolDAPReason OBJECT-TYPE
            SYNTAX DisplayString (SIZE(1..255))
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "Failure Cause of Address Segment Application."
            ::= { hwIPPoolTrapOid 8 }

        hwIPPoolAutoBlockedResumeReason OBJECT-TYPE
            SYNTAX DisplayString (SIZE(1..255))
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "The Automatically Locked Address Pool Unlock Reason."
            ::= { hwIPPoolTrapOid 9 }

         hwDAPPrefixName OBJECT-TYPE
            SYNTAX DisplayString (SIZE(1..32))
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "This object indicates the name of a dynamic prefix pool."
            ::= { hwIPPoolTrapOid 10 }

         hwDAPPrefixLen OBJECT-TYPE
            SYNTAX Integer32 (0..128)
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "This object indicates the lenght of a dynamic prefix."
            ::= { hwIPPoolTrapOid 11 }

         hwPoolVPNInstance OBJECT-TYPE
            SYNTAX DisplayString (SIZE(1..31))
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "VPN-instance name."
            ::= { hwIPPoolTrapOid 12 }
            
         hwVPNPoolThreshold OBJECT-TYPE
            SYNTAX Integer32 (0..100)
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "threshold value of all address of the vpn-instance."
            ::= { hwIPPoolTrapOid 13 }

         hwUpGroupId OBJECT-TYPE
            SYNTAX Integer32 (0..1024)
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "index of UP-Group."
            ::= { hwIPPoolTrapOid 14 } 

         hwCUPoolGroupUsedIPThreshold OBJECT-TYPE
            SYNTAX Integer32 (0..100)
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "Alarm threshold for the IP address usage of an address pool group."
            ::= { hwIPPoolTrapOid 15 }

         hwCUPoolGroupUsedIPPercent OBJECT-TYPE
            SYNTAX Integer32 (0..100)
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "Current usage."
            ::= { hwIPPoolTrapOid 16 }

         hwDHCPv6ServerAddr OBJECT-TYPE
            SYNTAX Ipv6Address
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "IP address of the DHCPv6 server."
            ::= { hwIPPoolTrapOid 17 }

         hwBasUnrImportRouteThreshold OBJECT-TYPE
            SYNTAX Integer32 (0..256000)
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "The Number of BRAS UNR VPN Import Routes threshold."
            ::= { hwIPPoolTrapOid 18 }

        hwIPPoolTrapsDefine OBJECT IDENTIFIER ::= { hwIPPoolMibTrap 2 }

        hwIPPoolTraps OBJECT IDENTIFIER ::= { hwIPPoolTrapsDefine 0 }

        hwUserIPConflictAlarm NOTIFICATION-TYPE
            OBJECTS { hwUserIPAddr,hwIPPoolName}
            STATUS current
            DESCRIPTION
                "
                1. Notification/alarm name: IP address conflict 
                2. Notification/alarm cause: A user IP address conflict occurs. "
            ::= { hwIPPoolTraps 1 }

        hwUserIPLeaseAlarm NOTIFICATION-TYPE
            OBJECTS { hwUserIPAddr }
            STATUS current
            DESCRIPTION
                "
                1 Notice/Trap name: IP address lease alarm.
                2 Notice/Trap generation cause: The user IP lease is over.
                3 Repair suggestion:
                    Check whether to renew configuring BAS IP pool."
            ::= { hwIPPoolTraps 2 }

        hwAllocUserIPFailAlarm NOTIFICATION-TYPE
            OBJECTS { hwIPPoolIndex,hwIPPoolName }
            STATUS current
            DESCRIPTION
                "This object indicates the alarm generated when IP address allocation fails."
            ::= { hwIPPoolTraps 3 }

        hwDhcpServerDown NOTIFICATION-TYPE
            OBJECTS {hwDHCPServerAddr, hwRemoteIPPoolRouterIPAddr,hwDhcpSvrVrfName, hwDhcpSvrDownReason}
            STATUS current
            DESCRIPTION 
                "
               This object indicates the alarm generated when the DHCP server goes Down.
                "
            ::= { hwIPPoolTraps 4 }
            
        hwLocalIPPoolDifferWithServer NOTIFICATION-TYPE
            OBJECTS { hwRemoteIPPoolName }
            STATUS current
            DESCRIPTION 
                "
                This object indicates the alarm generated when the address pool gateway allocated by the DHCP server is different from the one configured locally.
                "
            ::= { hwIPPoolTraps 5 }
            
        hwUsedIPReachThreshold NOTIFICATION-TYPE
            OBJECTS { hwIPPoolIndex,hwIPPoolName }
            STATUS current
            DESCRIPTION 
                "
                This object indicates that the usage of the IP address pool exceeds the upper alarm threshold. 
                Solution: Check configurations of the IP address pool.
                "
            ::= { hwIPPoolTraps 6 }  
        
       hwUsedIPReachThresholdResume NOTIFICATION-TYPE
            OBJECTS { hwIPPoolIndex,hwIPPoolName }
            STATUS current
            DESCRIPTION 
                "
                This object indicates that the usage of the IP address pool falls below the lower alarm threshold.
                "
            ::= { hwIPPoolTraps 7 } 
       
       hwUsedDeleteUnnumberedRouter  NOTIFICATION-TYPE
            OBJECTS { hwIPPoolIndex,hwIPPoolName }
            STATUS current
            DESCRIPTION
                "
                   This object indicates the alarm generated when the gateway unnumbered interface bound in the address pool is deleted through board removal and reinstallation.
                "
            ::= { hwIPPoolTraps 8 }

       hwPoolGroupUsedIPReachThreshold NOTIFICATION-TYPE
            OBJECTS { hwIPPoolGroupIndex, hwIPPoolGroupName }
            STATUS current
            DESCRIPTION 
                "
                This object indicates the alarm generated when the address usage of the address pool group reaches the alarm threshold.
                "
            ::= { hwIPPoolTraps 9 }  
        
       hwPoolGroupUsedIPReachThresholdResume NOTIFICATION-TYPE
            OBJECTS { hwIPPoolGroupIndex, hwIPPoolGroupName }
            STATUS current
            DESCRIPTION 
                "
                This object indicates the alarm generated when the address usage of the address pool group falls below 90% of the alarm threshold.
                "
            ::= { hwIPPoolTraps 10 } 
            
       hwIPPoolConstantIndexFail NOTIFICATION-TYPE
            STATUS current
            DESCRIPTION 
                "
                The constance index of ip pool recover failure.
                "
            ::= { hwIPPoolTraps 11 }
            
       hwIPv6PrefixConstantIndexFail NOTIFICATION-TYPE
            STATUS current
            DESCRIPTION 
                "
                The constance index of  ipv6 prefix pool recover failure.
                "
            ::= { hwIPPoolTraps 12 }
            
       hwIPv6PoolConstantIndexFail NOTIFICATION-TYPE
            STATUS current
            DESCRIPTION 
                "
                The constance index of ipv6 pool recover failure.
                "
            ::= { hwIPPoolTraps 13 } 
      hwUsedIPExhaust NOTIFICATION-TYPE
            OBJECTS { hwIPPoolIndex,hwIPPoolName }
            STATUS current
            DESCRIPTION 
                "
                The number of IP addresses in the IP pool is exhausted.
                "
            ::= { hwIPPoolTraps 14 } 
              
      hwUsedIPExhaustResume NOTIFICATION-TYPE
            OBJECTS { hwIPPoolIndex,hwIPPoolName }
            STATUS current
            DESCRIPTION 
                "
                This object indicates that the number of IP addresses in use in an IP address pool falls below 90% of the total number of IP addresses in the address pool.
                "
            ::= { hwIPPoolTraps 15 }  
            
      hwPoolGroupUsedIPExhaust NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolGroupIndex, hwIPPoolGroupName }
           STATUS current
           DESCRIPTION 
                "
                This object indicates the alarm generated when the addresses in an address pool group are exhausted.
                "
           ::= { hwIPPoolTraps 16 }
      hwPoolGroupUsedIPExhaustResume NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolGroupIndex, hwIPPoolGroupName }
           STATUS current
           DESCRIPTION 
                "
                This object indicates the alarm generated when the address usage of the address pool falls below 90%.
                "
           ::= { hwIPPoolTraps 17 }  
           
      hwUsedIPv6AddressAlarm NOTIFICATION-TYPE 
           OBJECTS { hwIPv6PoolIndex, hwIPv6PoolName }
           STATUS current
           DESCRIPTION 
                "
                This object indicates the alarm generated when the percentage of addresses in use to the total number of addresses in an IPv6 address pool exceeds the alarm threshold (80% by default).
                "
           ::= { hwIPPoolTraps 18 }  
   
     hwUsedIPv6AddressAlarmResume NOTIFICATION-TYPE 
           OBJECTS { hwIPv6PoolIndex, hwIPv6PoolName }
           STATUS current
           DESCRIPTION 
                "
                This object indicates the alarm generated when the IPv6 address usage falls below 90% of the alarm threshold.
                "
           ::= { hwIPPoolTraps 19 }  
  
     hwIPv6AddressExhaustAlarm NOTIFICATION-TYPE 
           OBJECTS { hwIPv6PoolIndex, hwIPv6PoolName }
           STATUS current
           DESCRIPTION 
                "
               This object indicates the alarm generated when addresses in an IPv6 address pool are exhausted and no more IPv6 addresses can be allocated. 
                "
           ::= { hwIPPoolTraps 20 }  
   
     hwIPv6AddressExhaustAlarmResume NOTIFICATION-TYPE 
           OBJECTS { hwIPv6PoolIndex, hwIPv6PoolName }
           STATUS current
           DESCRIPTION 
                "
                This object indicates the alarm generated when there are addresses in the IPv6 address pool available for allocation.
                "
           ::= { hwIPPoolTraps 21 }  
           
      hwIPPoolDAPApplyUnsuccessful NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolName, hwIPPoolRouterIPAddr, hwIPPoolRouterIPMask, hwIPPoolDAPReason }
           STATUS current
           DESCRIPTION 
                "
                This object indicates that the BRAS applies to a RADIUS server for address segments in a dynamic address pool but fails. 
                The alarm is generated in the following scenarios: 
                1. The server fails to give a response.
                2. The RADIUS server responds with a denial. 
                3. The RADIUS server responds that no addresses are assignable. 
                4. The addresses responded with by the RADIUS server are invalid. 
                5. The addresses responded with by the RADIUS server conflict with the addresses on the BRAS. 
                6. The address pool on the BRAS is full.
                "
           ::= { hwIPPoolTraps 22 }  
 hwIPPoolDAPReleaseUnsuccessful NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolName, hwIPPoolRouterIPAddr, hwIPPoolRouterIPMask, hwIPPoolDAPReason }
           STATUS current
           DESCRIPTION 
                "
                This object indicates that an address segment fails to be released (probably because the server does not exist).
                "
           ::= { hwIPPoolTraps 23 }  
 hwIPPoolDAPSubnetFull NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolName, hwIPPoolDAPName }
           STATUS current
           DESCRIPTION 
                "
                This object indicates that the number of address segments allocated to a dynamic address pool has reached 256.
                "
           ::= { hwIPPoolTraps 24 }  
           
 hwIPPoolDAPDeviceSubnetFull NOTIFICATION-TYPE 
           STATUS current
           DESCRIPTION 
                "
                This object indicates that the number of address segments that are dynamically applies for has reached 4096.
                "
           ::= { hwIPPoolTraps 25 }  

  hwUsedSubnetReachThreshold NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolIndex, hwIPPoolName }
           STATUS current
           DESCRIPTION 
                "
                The number of Subnets  in the IP pool exceeds the threshold.
                "
           ::= { hwIPPoolTraps 26 }     
 hwUsedSubnetThresholdResume NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolIndex, hwIPPoolName }
           STATUS current
           DESCRIPTION 
                "
                The number of Subnets  in the IP pool is under the threshold.
                "
           ::= { hwIPPoolTraps 27 }    
    
 hwPoolGroupUsedSubnetReachThreshold  NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolGroupIndex, hwIPPoolGroupName }
           STATUS current
           DESCRIPTION 
                "
                The number of Subnets in the IP pool group exceeds the threshold.
                "
           ::= { hwIPPoolTraps 28 } 

  hwPoolGroupUsedSubnetReachThresholdResume NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolGroupIndex, hwIPPoolGroupName }
           STATUS current
           DESCRIPTION 
                "
                The number of Subnets  in the IP pool group is under the threshold.
                "
           ::= { hwIPPoolTraps 29 }       

 hwUsedSubnetExhaust NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolIndex, hwIPPoolName }
           STATUS current
           DESCRIPTION 
                "
                The number of Subnets in the IP pool is exhausted. 
                "
           ::= { hwIPPoolTraps 30 }  

 hwUsedSubnetExhaustResume  NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolIndex, hwIPPoolName }
           STATUS current
           DESCRIPTION 
                "
                The number of Subnets  in the IP pool  is under the exhaust. 
                "
           ::= { hwIPPoolTraps 31 }        

 hwPoolGroupUsedSubnetExhaust NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolGroupIndex, hwIPPoolGroupName }
           STATUS current
           DESCRIPTION 
                "
                The number of Subnets in the IP pool group is exhausted.  
                "
           ::= { hwIPPoolTraps 32 }  

 hwPoolGroupUsedSubnetExhaustResume  NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolGroupIndex, hwIPPoolGroupName }
           STATUS current
           DESCRIPTION 
                "
                The number of Subnets  in the IP pool group is under the exhaust.
                "
           ::= { hwIPPoolTraps 33 }
        
        hwIPPoolAutoBlocked NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolName }
           STATUS current
           DESCRIPTION 
                "
                The address pool was automatically locked due to address allocation failures.
                "
           ::= { hwIPPoolTraps 34 }
		   
      hwIPPoolAutoBlockedResume NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolName, hwIPPoolAutoBlockedResumeReason }
           STATUS current
           DESCRIPTION 
                "
                The automatically locked address pool was unlocked.
                "
           ::= { hwIPPoolTraps 35 } 

     hwDapServerIPPoolUsedSubnetReachThreshold NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolIndex, hwIPPoolName }
           STATUS current
           DESCRIPTION 
                "
                The number of Subnets  in the IP pool exceeds the threshold.
                "
           ::= { hwIPPoolTraps 36 }  

      hwDapServerIPPoolUsedSubnetReachThresholdResume NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolIndex, hwIPPoolName }
           STATUS current
           DESCRIPTION 
                "
                The number of Subnets  in the IP pool is under the threshold.
                "
           ::= { hwIPPoolTraps 37 } 
   
     hwDapServerIPPoolUsedSubnetExhaust NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolIndex, hwIPPoolName }
           STATUS current
           DESCRIPTION 
                "
                The number of Subnets in the IP pool is exhausted.
                "
           ::= { hwIPPoolTraps 38 }  

      hwDapServerIPPoolUsedSubnetExhaustResume NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolIndex, hwIPPoolName }
           STATUS current
           DESCRIPTION 
                "
                The number of Subnets  in the IP pool  is under the exhaust.
                "
           ::= { hwIPPoolTraps 39 } 
   
      hwDapServerIPv6PoolUsedPrefixReachThreshold NOTIFICATION-TYPE 
           OBJECTS { hwIPv6PoolIndex, hwIPv6PoolName }
           STATUS current
           DESCRIPTION 
                "
                The number of Prefix  in the IP pool exceeds the threshold.
                "
           ::= { hwIPPoolTraps 40 }  

      hwDapServerIPv6PoolUsedPrefixReachThresholdResume NOTIFICATION-TYPE 
           OBJECTS { hwIPv6PoolIndex, hwIPv6PoolName}
           STATUS current
           DESCRIPTION 
                "
                The number of Prefix  in the IP pool is under the threshold.
                "
           ::= { hwIPPoolTraps 41 }

      hwDapServerIPv6PoolUsedPrefixExhaust NOTIFICATION-TYPE 
           OBJECTS { hwIPv6PoolIndex, hwIPv6PoolName}
           STATUS current
           DESCRIPTION 
                "
                The number of Prefix in the IP pool is exhausted.
                "
           ::= { hwIPPoolTraps 42 }  

      hwDapServerIPv6PoolUsedPrefixExhaustResume NOTIFICATION-TYPE 
           OBJECTS { hwIPv6PoolIndex, hwIPv6PoolName}
           STATUS current
           DESCRIPTION 
                "
                The number of Prefix in the IP pool  is under the exhaust.
                "
           ::= { hwIPPoolTraps 43 }   
 
      hwIPv6PoolDAPApplyUnsuccessful NOTIFICATION-TYPE 
           OBJECTS { hwDAPPrefixName, hwDAPPrefixLen, hwIPPoolDAPReason}
           STATUS current
           DESCRIPTION 
                "
                Apply the prefix unsuccessful.
                "
           ::= { hwIPPoolTraps 44 }  

      hwIPv6PoolDAPReleaseUnsuccessful NOTIFICATION-TYPE 
           OBJECTS { hwDAPPrefixName, hwDAPPrefixLen, hwIPPoolDAPReason}
           STATUS current
           DESCRIPTION 
                "
                Release an prefix unsuccessful.
                "
           ::= { hwIPPoolTraps 45 } 
   
      hwIPv6PoolDAPPrefixFull NOTIFICATION-TYPE 
           OBJECTS {hwDAPPrefixName}
           STATUS current
           DESCRIPTION 
                "
                The number of prefix dynamically allocated to the device reached the upper limit allowed by the dynamic prefix pool.
                "
           ::= { hwIPPoolTraps 46 } 
      
      hwIPv6PoolDAPDevicePrefixFull NOTIFICATION-TYPE
           STATUS current
           DESCRIPTION 
                "
                The number of prefix dynamically allocated to the device reached the maximum number allowed.
                "
           ::= { hwIPPoolTraps 47 } 

      hwIPPoolIsolatedCauseMainboardReset NOTIFICATION-TYPE 
           OBJECTS {hwIPPoolName}
           STATUS current
           DESCRIPTION 
                "
                The master main control board restarted after the address pool was isolated.
                "
           ::= { hwIPPoolTraps 48 }   
      	  hwVPNIPPoolUsageReachThreshold NOTIFICATION-TYPE 
           OBJECTS {  hwPoolVPNInstance, hwVPNPoolThreshold }
           STATUS current
           DESCRIPTION 
                "
                The IP address usage of the vpn reached the threshold.
                "
           ::= { hwIPPoolTraps 49 }  
      hwVPNIPPoolUsageReachThresholdResume NOTIFICATION-TYPE 
           OBJECTS {  hwPoolVPNInstance, hwVPNPoolThreshold }
           STATUS current
           DESCRIPTION 
                "
                The IP address usage of the vpn fell below the threshold.
                "
           ::= { hwIPPoolTraps 50 } 
      hwVPNIPv6PoolUsageReachThreshold NOTIFICATION-TYPE 
           OBJECTS {  hwPoolVPNInstance, hwVPNPoolThreshold }
           STATUS current
           DESCRIPTION 
                "
                The IPv6 address usage of the vpn reached the threshold.
                "
           ::= { hwIPPoolTraps 51 } 
      hwVPNIPv6PoolUsageReachThresholdResume NOTIFICATION-TYPE 
           OBJECTS {  hwPoolVPNInstance, hwVPNPoolThreshold }
           STATUS current
           DESCRIPTION 
                "
                The IPv6 address usage of the vpn fell below the threshold.
                "
           ::= { hwIPPoolTraps 52 } 
       hwCUPoolGroupUsedIPReachThreshold NOTIFICATION-TYPE
            OBJECTS { hwIPPoolGroupIndex, hwIPPoolGroupName, hwUpGroupId, hwCUPoolGroupUsedIPThreshold, hwCUPoolGroupUsedIPPercent }
            STATUS current
            DESCRIPTION 
                "
                The number of used IP addresses in the IP pool group exceeds the threshold.
                Repair suggestion: Check the configuration of the IP address pool group.
                "
            ::= { hwIPPoolTraps 53 }  
        
       hwCUPoolGroupUsedIPReachThresholdResume NOTIFICATION-TYPE
            OBJECTS { hwIPPoolGroupIndex, hwIPPoolGroupName, hwUpGroupId, hwCUPoolGroupUsedIPThreshold, hwCUPoolGroupUsedIPPercent }
            STATUS current
            DESCRIPTION 
                "
                The number of used IP addresses in the IP pool group is under the threshold.
                "
            ::= { hwIPPoolTraps 54 }

      hwCUPoolGroupUsedIPExhaust NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolGroupIndex, hwIPPoolGroupName, hwUpGroupId }
           STATUS current
           DESCRIPTION 
                "
                The number of IP addresses in the IP pool group is exhausted.
                "
           ::= { hwIPPoolTraps 55 }
      hwCUPoolGroupUsedIPExhaustResume NOTIFICATION-TYPE 
           OBJECTS { hwIPPoolGroupIndex, hwIPPoolGroupName, hwUpGroupId }
           STATUS current
           DESCRIPTION 
                "
                The number of IP addresses in the IP pool group is under the exhaust.
                "
           ::= { hwIPPoolTraps 56 }
     hwDhcpv6ServerDown NOTIFICATION-TYPE
            OBJECTS {hwDHCPv6ServerAddr,hwDhcpSvrVrfName, hwDhcpSvrDownReason}
            STATUS current
            DESCRIPTION
 
                "
               This object indicates the alarm generated when the DHCPv6 server goes Down.
                "
            ::= { hwIPPoolTraps 57 }
    hwIPPoolDAPDeviceSubnetFullAlarm NOTIFICATION-TYPE
           OBJECTS { hwUpGroupId }
           STATUS current
           DESCRIPTION 
                "
                The number of address segments dynamically allocated to the device reached the maximum number allowed.
                "
           ::= { hwIPPoolTraps 58 }
    hwIPPoolDAPDeviceSubnetFullAlarmResume NOTIFICATION-TYPE
            OBJECTS { hwUpGroupId }
            STATUS current
            DESCRIPTION
                "
               The number of address segments dynamically allocated to the device falls below 90% of the maximum number allowed.
                "
            ::= { hwIPPoolTraps 59 }
    hwIPv6PoolDAPDevicePrefixFullAlarm NOTIFICATION-TYPE
           OBJECTS { hwUpGroupId }
           STATUS current
           DESCRIPTION 
                "
                The number of prefix dynamically allocated to the device reached the maximum number allowed.
                "
           ::= { hwIPPoolTraps 60 }
    hwIPv6PoolDAPDevicePrefixFullAlarmResume NOTIFICATION-TYPE
            OBJECTS { hwUpGroupId }
            STATUS current
            DESCRIPTION
                "
                The number of prefix dynamically allocated to the device falls below 90% of the maximum number allowed.
                "
            ::= { hwIPPoolTraps 61 }
    hwBasUnrImportRouteReachThreshold NOTIFICATION-TYPE
           OBJECTS { hwBasUnrImportRouteThreshold }
           STATUS current
           DESCRIPTION 
                "
                The number of BRAS UNR VPN import route exceeded the maximum value.
                "
           ::= { hwIPPoolTraps 62 }
    hwBasUnrImportRouteReachThresholdResume NOTIFICATION-TYPE
            OBJECTS { hwBasUnrImportRouteThreshold }
            STATUS current
            DESCRIPTION
                "
                The number of BRAS UNR VPN import route fell below the maximum value.
                "
            ::= { hwIPPoolTraps 63 }
    --  ============== conformance information ==============

        hwIpPoolMIBConformance OBJECT IDENTIFIER ::= { hwIppool 3 }
            
        hwIpPoolCompliances OBJECT IDENTIFIER ::= { hwIpPoolMIBConformance 1 }
        hwIpPoolCompliance MODULE-COMPLIANCE
               STATUS      current
               DESCRIPTION
                   "The compliance statement for systems supporting this module."

               MODULE      -- this module
               MANDATORY-GROUPS    { hwIpPoolTableGroup, hwIpSectionTableGroup, hwIpPoolExtTableGroup,
                                     hwIpAddressStatusTableGroup, hwDhcpSvrGroupTableGroup, hwRemotePoolTableGroup, hwDhcpServerTableGroup, 
                                     hwIpPoolStatisticGroup, hwIpPoolTrapOidGroup, hwIpPoolTrapsGroup, hwIPPoolGroupTableGroup, 
                                     hwIPPoolGroupExtTableGroup, hwIPPoolGroupDisplayTableGroup,
                                     hwIPv6PrefixTableGroup, hwIPv6PoolTableGroup, hwIPv6PoolStatusTableGroup,
                                     hwIPv6DuidBindPrefixTableGroup, hwDhcpv6SvrGroupTableGroup, hwIPv6RemotePoolTableGroup, hwIPv6PoolStatisticGroup,
									 hwIPV6AddressStatusTableGroup,hwIPV6PrefixStatusTableGroup,hwIPPoolConstantIndexGroup}  
                                               
              ::= { hwIpPoolCompliances 1 }
              
    --  ============== groups ==============  
        hwIpPoolObjectGroups OBJECT IDENTIFIER ::= { hwIpPoolMIBConformance 2 } 

        hwIpPoolTableGroup OBJECT-GROUP            
            OBJECTS { hwIPPoolIndex, 
            hwIPPoolName,
            hwIPPoolRouterIPAddr,
            hwIPPoolRouterIPMask,
            hwIPPoolPriDNSIPAddr,
            hwIPPoolSecDNSIPAddr,
            hwIPPoolPriNBNSIPAddr,
            hwIPPoolSecNBNSIPAddr,
            hwIPPoolIPAddrLease,
            hwIPPoolStatus,
            hwIPPoolVPNInstance,
            hwIPPoolType,
            hwIPPoolNetwork,
            hwIPPoolNetworkMask,
            hwIPPoolIPTotalNum,    
            hwIPPoolIPUsedNum,
            hwIPPoolIPConflictNum, 
            hwIPPoolIPExcludeNum, 
            hwIPPoolIPIdleNum,
            hwIPPoolIPUsedPercent,
            hwIPPoolDNSIPAddrString,
            hwIPPoolDNSIPAddrStringUndo,
            hwIPPoolNBNSIPAddrString,
            hwIPPoolNBNSIPAddrStringUndo
                           }
        STATUS current
        DESCRIPTION 
            "The HUAWEI IP pool configuration group."
        ::= { hwIpPoolObjectGroups 1 }    
        
        hwIpSectionTableGroup OBJECT-GROUP            
            OBJECTS {hwIPSectionIndex,
            hwIPSectionDesc,
            hwIPSectionLowAddr,
            hwIPSectionHighAddr,
            hwIPSectionLength,
            hwIPSectionUsedNum,
            hwIPSectionConflict,
            hwIPSectionInvalid,
            hwIPSectionAvailableNum,
            hwIPSectionRowStatus
                }
        STATUS current
        DESCRIPTION 
            "The HUAWEI IP section configuration group."
        ::= { hwIpPoolObjectGroups 2 }    
        
        hwIpPoolExtTableGroup OBJECT-GROUP            
            OBJECTS {hwIPPoolAvailableStatus,
            hwIPDhcpOptionId1,
                    hwIPDhcpOption1,
                    hwIPDhcpOptionId2,
                    hwIPDhcpOption2,
                    hwIPDhcpOptionId3,
                    hwIPDhcpOption3,
                    hwIPDhcpOptionId4,
                    hwIPDhcpOption4,
                    hwIPDnsSuffix,
                    hwIPDhcpSvrIPRsv,
                    hwIPPoolIpAddrRenewal,
                    hwIPPoolIpAddrRebinding,
                    hwIPPoolSIPAddr1,
                    hwIPPoolSIPAddr2,
                    hwIPPoolSIPName1,
                    hwIPPoolSIPName2
                }
        STATUS current
        DESCRIPTION 
            "The HUAWEI IP pool extension configuration group."
        ::= { hwIpPoolObjectGroups 3 }    
        
        hwIpAddressStatusTableGroup OBJECT-GROUP            
            OBJECTS {hwIPAddress,
            hwIPAddressStatus,
            hwPoolName
                }
        STATUS current
        DESCRIPTION 
            "The HUAWEI IP address status configuration group."
        ::= { hwIpPoolObjectGroups 4 }    
        
        hwDhcpSvrGroupTableGroup OBJECT-GROUP            
            OBJECTS {hwIPPoolDhcpSvrGroupIndex,
                    hwIPPoolDhcpSvrGroupName,
                    hwIPDhcpSvrPriAddr,
                    hwIPDhcpSvrScdiAddr,
                    hwIPDhcpSvrPriState,
                    hwIPDhcpScdPriState,
                    hwIPDhcpSvrAutoRelease,
                    hwIPDhcpSvrRefCount,
                    hwIPDhcpSvrRowStatus,  
                    hwIPDhcpSvrPriVpnInstance,
                    hwIPDhcpSvrScdVpnInstance,
                    hwIPDhcpSvrSouce
                }
        STATUS current
        DESCRIPTION 
            "The HUAWEI DHCP service group configuration group."
        ::= { hwIpPoolObjectGroups 5 }    
        
        hwRemotePoolTableGroup OBJECT-GROUP            
            OBJECTS {hwRemoteIPPoolIndex,
                    hwRemoteIPPoolName,
                    hwRemoteIPPoolRouterIPAddr,
                    hwRemoteIPPoolRouterIPMask,
                    hwRemoteIPPoolDhcpSvrGroupID,
                    hwRemoteIPPoolAvailableStatus,
                    hwRemoteIPPoolRowStatus,
                    hwRemoteIPPoolPriDNSIPAddress,
                    hwRemoteIPPoolSecDNSIPAddress,
                    hwRemoteIPPoolPriNBNSIPAddress,
                    hwRemoteIPPoolSecNBNSIPAddress,
                    hwRemoteIPPoolVPNInstance,
                    hwRemoteIPPoolDhcpGroupName,
                    hwRemoteIPPoolLeaseManageEnable,
                    hwRemoteIPPoolWeight
                }
        STATUS current
        DESCRIPTION 
            "The HUAWEI remote pool configuration group."
        ::= { hwIpPoolObjectGroups 6 }

        hwIpPoolStatisticGroup OBJECT-GROUP            
            OBJECTS {hwIPPoolNum,
                    hwIPIdleTotalNum,
                    hwIPUsedTotalNum,
                    hwIPConflictTotalNum,
                    hwIPExcludeTotalNum,
                    hwIPTotalNum,
                    hwIPUsedPercent
                }
        STATUS current
        DESCRIPTION 
            "The HUAWEI IP pool statistics group."
        ::= { hwIpPoolObjectGroups 7 }

        hwIpPoolTrapOidGroup OBJECT-GROUP            
            OBJECTS {hwUserIPAddr,
                    hwDHCPServerAddr,
                    hwDhcpSvrVrfName,
                    hwIPPoolGroupIndex,
                    hwDhcpSvrDownReason,
                    hwDHCPv6ServerAddr
                }
        STATUS current
        DESCRIPTION 
            "The HUAWEI IP pool trap OID group."
        ::= { hwIpPoolObjectGroups 8 }
        
        hwIpPoolTrapsGroup NOTIFICATION-GROUP
            NOTIFICATIONS { hwUserIPConflictAlarm, hwUserIPLeaseAlarm, hwAllocUserIPFailAlarm,
                            hwDhcpServerDown, hwLocalIPPoolDifferWithServer, 
                            hwUsedIPReachThreshold, hwUsedIPReachThresholdResume, hwUsedDeleteUnnumberedRouter, 
                            hwPoolGroupUsedIPReachThreshold, hwPoolGroupUsedIPReachThresholdResume,
                            hwUsedSubnetReachThreshold, hwUsedSubnetThresholdResume,
                            hwPoolGroupUsedSubnetReachThreshold, hwPoolGroupUsedSubnetReachThresholdResume,
	        hwUsedSubnetExhaust,hwUsedSubnetExhaustResume,
	        hwPoolGroupUsedSubnetExhaust,hwPoolGroupUsedSubnetExhaustResume,
                            hwIPPoolConstantIndexFail, hwIPv6PrefixConstantIndexFail,
                            hwIPv6PoolConstantIndexFail, 
                            hwUsedIPExhaust,hwUsedIPExhaustResume,
                            hwPoolGroupUsedIPExhaust,hwPoolGroupUsedIPExhaustResume,hwUsedIPv6AddressAlarm,hwUsedIPv6AddressAlarmResume,
                            hwIPv6AddressExhaustAlarm,hwIPv6AddressExhaustAlarmResume,
                            hwVPNIPPoolUsageReachThreshold,hwVPNIPPoolUsageReachThresholdResume,
                            hwVPNIPv6PoolUsageReachThreshold,hwVPNIPv6PoolUsageReachThresholdResume,
                            hwCUPoolGroupUsedIPReachThreshold,hwCUPoolGroupUsedIPReachThresholdResume,
                            hwCUPoolGroupUsedIPExhaust,hwCUPoolGroupUsedIPExhaustResume,hwDhcpv6ServerDown,
                            hwIPPoolDAPDeviceSubnetFullAlarm,hwIPPoolDAPDeviceSubnetFullAlarmResume,
                            hwIPv6PoolDAPDevicePrefixFullAlarm,hwIPv6PoolDAPDevicePrefixFullAlarmResume,
                            hwBasUnrImportRouteReachThreshold,hwBasUnrImportRouteReachThresholdResume}
            STATUS current
            DESCRIPTION 
                "The HUAWEI IP pool traps group."
            ::= { hwIpPoolObjectGroups 9 }

        hwDhcpServerTableGroup OBJECT-GROUP            
            OBJECTS {hwDhcpServerIndex,
                    hwIPPoolDhcpServerIP,
                    hwIPPoolDhcpServerVRFName,
                    hwIPPoolDhcpServerState,
                    hwIPPoolDhcpServerSendDisvSpdNum,
                    hwIPPoolDhcpServerSendDisvSpdSec,
                    hwIPPoolDhcpServerDeadCount,
                    hwIPPoolDhcpServerNakCount,
                    hwIPPoolDhcpServerTimeout,
                    hwIPPoolDhcpServerDeadTime
                }
            STATUS current
            DESCRIPTION 
                "The HUAWEI IP pool DHCP server configure group."
            ::= { hwIpPoolObjectGroups 10 }    
        
        hwIPPoolOptionTableGroup OBJECT-GROUP            
            OBJECTS {hwIPDhcpOptionId,
                     hwIPDhcpOption,
                     hwIPDhcpOptionRowStatus       
                }
            STATUS current
            DESCRIPTION 
                "A table for configuring options to DHCP server pools,
              include option code type and value and so on ."
            ::= { hwIpPoolObjectGroups 11 }    
            
        hwIPPoolGroupTableGroup OBJECT-GROUP            
            OBJECTS {hwIPPoolGroupName,
                     hwIPPoolGroupVPNInstance,
                     hwIPPoolGroupIncludeUndo,
                     hwIPPoolGroupRowStatus
                }
        STATUS current
        DESCRIPTION 
            "The HUAWEI Ip pool group configuration group."
        ::= { hwIpPoolObjectGroups 12 }
        
        hwIPPoolGroupExtTableGroup OBJECT-GROUP            
            OBJECTS {hwIPPoolGroupExtIncludePoolName,
                     hwIPPoolGroupExtIncludePoolMoveOrder,
                     hwIPPoolGroupExtRowStatus
                }
        STATUS current
        DESCRIPTION 
            "The HUAWEI Ip pool group extension configuration group."
        ::= { hwIpPoolObjectGroups 13 }
        
        hwIPPoolGroupDisplayTableGroup OBJECT-GROUP            
            OBJECTS {hwIPPoolGroupIncludePoolNum,
                     hwIPPoolGroupBoundByDomainNum,
                     hwIPPoolGroupIPTotalNum,
                     hwIPPoolGroupIPUsedNum,
                     hwIPPoolGroupIPConflictedNum,
                     hwIPPoolGroupIPDisableNum,
                     hwIPPoolGroupIPDesignatedNum,
                     hwIPPoolGroupIPFreeNum,
                     hwIPPoolGroupIPUsedPercent
                }
        STATUS current
        DESCRIPTION 
            "A table for displaying HUAWEI IP pool group."
        ::= { hwIpPoolObjectGroups 14 }

        hwIPPoolDomainSearchListGroup OBJECT-GROUP            
            OBJECTS {hwIPPoolDomainSearchList,
                     hwIPPoolDomainSearchListRowStatus
                }
        STATUS current
        DESCRIPTION 
            "Set the domain search list name which is uesed to fill content of DHCP packet option 119."
        ::= { hwIpPoolObjectGroups 15 }

        hwIPPoolOptionExtTableGroup OBJECT-GROUP            
            OBJECTS {hwIPDhcpOptionSubId,
                     hwIPDhcpOptionSubType,
                     hwIPDhcpOptionSubValue, 
                     hwIPDhcpOptionSubRowStatus       
                }
            STATUS current
            DESCRIPTION 
                "A table for configuring options to DHCP server pools,
              include suboption code type and value and so on ."
            ::= { hwIpPoolObjectGroups 16 }   

        hwIPPoolReplyOptionGroup OBJECT-GROUP            
            OBJECTS {hwIPDhcpSpecOptionId,
                     hwIPDhcpSpecOption,
                     hwIPDhcpReplyOptionId,
                     hwIPDhcpReplyOptionSubId,
                     hwIPDhcpReplyOptionSubType,
                     hwIPDhcpReplyOptionSub,
                     hwIPDhcpReplyOptionRowStatus
                }

        STATUS current
        DESCRIPTION 
            "Dhcp reply options which will be replied to client 
             in according to specified option value of DHCP client request "
        ::= { hwIpPoolObjectGroups 17 }

       hwIPv6PrefixTableGroup OBJECT-GROUP            
            OBJECTS {
                hwIPv6PrefixIndex,
                hwIPv6PrefixName,
                hwIPv6PrefixType,
                hwIPv6Prefix,
                hwIPv6PrefixLen,
                hwIPv6PrefixDelegatingLen,
                hwIPv6PrefixAdvPreferredLifetime,
                hwIPv6PrefixAdvValidLifetime,
                hwIPv6PrefixAvailableStatus,
                hwIPv6VPNInstance,
                hwIPv6PrefixReservedFlag,
                hwIPv6LinkAddress,
                hwIPv6SlaacUnsharedFlag,
                hwIPv6PrefixRowStatus,
				hwIPPoolPDUnshareOnly
                }
        STATUS current
        DESCRIPTION 
            "."
        ::= { hwIpPoolObjectGroups 18 }

        hwIPv6PoolTableGroup OBJECT-GROUP            
            OBJECTS {
                hwIPv6PoolIndex,
                hwIPv6PoolName,
                hwIPv6PoolType,
                hwIPv6PoolPrefixName,
                hwIPv6PoolDnsIPAddr,
                hwIPv6PoolDnsSearchList,
                hwIPv6PoolPreference,
                hwIPv6PoolAvailableStatus,
                hwIPv6PoolRenewPercent,
                hwIPv6PoolRebindingPercent,
                hwIPv6PoolRapidCommitFlag,
                hwIPv6PoolUnicastOption,
                hwIPv6PoolAFTRName,
                hwIPv6PoolRowStatus
                }
        STATUS current
        DESCRIPTION 
            "."
        ::= { hwIpPoolObjectGroups 19 }

        hwIPv6PoolStatusTableGroup OBJECT-GROUP            
            OBJECTS {                
                hwIPv6FreeAddressNum,
                hwIPv6UsedAddressNum,
                hwIPv6FreePrefixNum,
                hwIPv6UsedPrefixNum,
                hwIPv6AddressTotalNum,
                hwIPv6AddressUsedNum,
                hwIPv6AddressFreeNum,     
                hwIPv6AddressConflictNum,
                hwIPv6AddressExcludeNum,
                hwIPv6AddressUsedPercent, 
                hwIPv6NDRAPrefixTotalNum,     
                hwIPv6NDRAPrefixUsedNum,      
                hwIPv6NDRAPrefixFreeNum,      
                hwIPv6NDRAPrefixConflictNum,  
                hwIPv6NDRAPrefixExcludeNum,   
                hwIPv6NDRAPrefixUsedPercent,  
                hwIPv6PDPrefixTotalNum,     
                hwIPv6PDPrefixUsedNum,      
                hwIPv6PDPrefixFreeNum,      
                hwIPv6PDPrefixConflictNum,  
                hwIPv6PDPrefixExcludeNum,   
                hwIPv6PDPrefixUsedPercent,
                hwV6PoolName
                }
        STATUS current
        DESCRIPTION 
            "."
        ::= { hwIpPoolObjectGroups 20 }

        hwIPv6DuidBindPrefixTableGroup OBJECT-GROUP            
            OBJECTS {
                hwIPv6ClientDuid,
                hwIPv6BindPrefix,
                hwIPv6DuidBindPrefixRowStatus
                }
        STATUS current
        DESCRIPTION 
            "."
        ::= { hwIpPoolObjectGroups 21 }

        hwDhcpv6SvrGroupTableGroup OBJECT-GROUP            
            OBJECTS {
                hwDhcpv6SvrGroupIndex,
                hwDhcpv6SvrGroupName,
                hwIPDhcpv6SvrAddr1,
                hwIPDhcpv6SvrAddr2,
                hwIPDhcpv6PriSvrState,
                hwIPDhcpv6ScdSvrState,
                hwIPDhcpv6SvrAutoRelease,
                hwIPDhcpv6SvrGroupRefCount,
                hwDhcpv6SvrInterface1,
                hwDhcpv6SvrInterface2,
                hwDhcpv6SvrAlgorithm,
                hwDhcpv6SvrWeight1,
                hwDhcpv6SvrWeight2,
                hwIPDhcpv6Svr1VrfName,
                hwIPDhcpv6Svr2VrfName,
                hwDhcpv6SvrGroupRowStatus,
                hwDhcpv6SvrSourceInterface
                }
        STATUS current
        DESCRIPTION 
            "."
        ::= { hwIpPoolObjectGroups 22 }

        hwIPv6RemotePoolTableGroup OBJECT-GROUP            
            OBJECTS {
                hwIPv6RemotePoolIndex,
                hwIPv6RemotePoolName,
                hwIPv6RemotePoolPrefixName,
                hwIPv6RemotePoolDhcpv6SvrGroupName,
                hwIPv6RemotePoolAvailableStatus,
                hwIPv6RemotePoolExportHostRouteFlag,
                hwIPv6RemotePoolRowStatus,
				hwIPv6RemotePoolExportHostRouteIPv6Address,
				hwIPv6RemotePoolExportHostRoutePDPrefix,
				hwIPv6RemotePoolExportHostRouteNDPrefix,
				hwIPv6RemotePoolWeight
                }
        STATUS current
        DESCRIPTION 
            "."
        ::= { hwIpPoolObjectGroups 23 }

        hwIPv6PoolStatisticGroup OBJECT-GROUP            
            OBJECTS {hwIpv6PoolNum,
                    hwIpv6AddressIdleTotalNum,
                    hwIpv6PrefixIdleTotalNum,
                    hwIpv6AddressUsedTotalNum,
                    hwIpv6PrefixUsedTotalNum,
                    hwAllIPv6AddressTotalNum,
                    hwAllIPv6AddressUsedNum,
                    hwAllIPv6AddressIdleNum,      
                    hwAllIPv6ConflictAddressNum,
                    hwAllIPv6ExcludeAddressNum,
                    hwAllIPv6AddressUsedPercent,
                    hwAllNDRAPrefixTotalNum,
                    hwAllNDRAPrefixUsedNum,
                    hwAllNDRAPrefixFreeNum,
                    hwAllNDRAPrefixConflictNum,
                    hwAllNDRAPrefixExcludeNum,
                    hwAllNDRAPrefixUsedPercent,
                    hwAllPDPrefixTotalNum,
                    hwAllPDPrefixUsedNum,
                    hwAllPDPrefixFreeNum,
                    hwAllPDPrefixConflictNum,
                    hwAllPDPrefixExcludeNum,
                    hwAllPDPrefixUsedPercent
                }
        STATUS current
        DESCRIPTION 
            "The HUAWEI IPv6 pool statistics group."
        ::= { hwIpPoolObjectGroups 24 }
		hwIPV6AddressStatusTableGroup OBJECT-GROUP            
            OBJECTS {hwIPv6Address,
                    hwIPv6AddressStatus,
                    hwIPv6LocalPrefixName
                }
        STATUS current
        DESCRIPTION 
            "The HUAWEI IPv6 address status configuration group."
        ::= { hwIpPoolObjectGroups 25 } 
		
		hwIPV6PrefixStatusTableGroup OBJECT-GROUP            
            OBJECTS {hwIpv6Prefix,
					hwIpv6PrefixLen,
                    hwIPv6PrefixStatus,
                    hwIPv6DelegationPrefixName
                }
        STATUS current
        DESCRIPTION 
            "The HUAWEI IPv6 prefix status configuration group."
        ::= { hwIpPoolObjectGroups 26 } 
		
	    hwIPPoolConstantIndexGroup OBJECT-GROUP
		  OBJECTS {hwIPPoolConstantIndexEnable
                }
        STATUS current
        DESCRIPTION
            "Enable IP Pool Constant index function."
        ::= { hwIpPoolObjectGroups 27 }
    END
