-- ZyXEL Communications Corporation
-- Private Enterprise MIB definition 
  
-- This file describes the ZyXEL Communications Corporation Enterprise MIB.
-- It contains ZyXEL products OIDs, and common managed objects.

-- $Log: ZYXEL-IPV6-NDP-MIB.mib $ 
-- Revision 1.7  2013/12/06 07:06:04  ccho 
-- remove uncessary imports 
-- Revision 1.6  2013/11/06 05:41:34  ccho 
-- fix mib style 
-- Revision 1.5  2012/12/11 08:27:35  Dana 
-- fix silverCreek can't compile  
-- Revision 1.4  2012/10/25 06:16:04  Dana 
-- fix zyNdpPrefixPreferredLifetime and zyNdpPrefixValidLifetime can't set max value (4294967295) 
-- Revision 1.3  2012/09/19 07:38:20  Kevin 
-- if it's leaf node, revise the vender name from zyxel to zy 
-- Revision 1.2  2012/07/05 06:23:08  Kevin 
-- 1. upgrade from SNMP to SNMPv2  
-- 2. clean warning 
-- Revision 1.1  2012/05/30 07:49:40  Kevin 
-- Initial revision 

ZYXEL-IPV6-NDP-MIB DEFINITIONS ::= BEGIN

    IMPORTS
	OBJECT-TYPE
		FROM SNMPv2-SMI			-- RFC2578	
		
	MODULE-IDENTITY
		FROM SNMPv2-SMI
	
	RowStatus, PhysAddress
		FROM SNMPv2-TC			-- RFC2579
		
	EnabledStatus
		FROM  P-BRIDGE-MIB

	InetAddressType, InetAddress
		FROM INET-ADDRESS-MIB		-- RFC2851
    
	InterfaceIndex			
		FROM IF-MIB
		
	Unsigned32
		FROM SNMPv2-SMI

	esMgmt			
		FROM ZYXEL-ES-SMI;

		zyxelIpv6Ndp MODULE-IDENTITY
		LAST-UPDATED	"201207010000Z"    
		ORGANIZATION "Enterprise Solution ZyXEL"     
		CONTACT-INFO
			""	   
		DESCRIPTION
			"The subtree for IPv6 Neighbor Discovery Protocol"
		::= { esMgmt 35 }
	
	zyxelNdpSetup     		OBJECT IDENTIFIER ::= { zyxelIpv6Ndp 1 }
	
--
--
--  35.zyxelIpv6Ndp
--
--
                                 
     	zyNdpMaxNumberOfPrefixes OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
        "The maximum number of prefix entries that can be created."
        ::= { zyxelNdpSetup 1 }
      

--		zyxelNdp Table

		zyxelNdpTable OBJECT-TYPE
	 	SYNTAX      SEQUENCE OF ZyxelNdpEntry
	    MAX-ACCESS  not-accessible
	    STATUS      current
	    DESCRIPTION
	    	"The table contains NDP configuration."              
        ::= { zyxelNdpSetup 2 }  
    
    	zyxelNdpEntry OBJECT-TYPE
        SYNTAX      ZyxelNdpEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry contains NDP configuration."
        INDEX {           
        	zyNdpIfIndex             
        }
		::= { zyxelNdpTable 1 }

    	ZyxelNdpEntry ::=
        	SEQUENCE {       
        		zyNdpIfIndex			INTEGER,
            	zyNdpDadAttempts		INTEGER, 
           		zyNdpNsInterval			INTEGER,  
            	zyNdpReachableTime		INTEGER
      	}     
        
    	zyNdpIfIndex OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  not-accessible
       	STATUS      current
        DESCRIPTION
         "The index of NDP Interface."
    	::= { zyxelNdpEntry 1 }
                           
    	zyNdpDadAttempts OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-write
       	STATUS      current
        DESCRIPTION
        "Enter the number of duplicate address detections transmits on an interface. 
		 Range of DAD Attempts is (0 to 600).  The default value is 1."
   		 ::= { zyxelNdpEntry 2 }
   	
     	zyNdpNsInterval OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-write
       	STATUS      current
        DESCRIPTION
        "Enter the number of NS Interval Time."
    	::= { zyxelNdpEntry 3 }
                 
    	zyNdpReachableTime OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-write
       	STATUS      current
        DESCRIPTION
        "Enter the number of Reachable Time."
    	::= { zyxelNdpEntry 4 }
                           

--		Ndp Prefix Table

		zyxelNdpPrefixTable OBJECT-TYPE
	 	SYNTAX      SEQUENCE OF ZyxelNdpPrefixEntry
	    MAX-ACCESS  not-accessible
	    STATUS      current
	    DESCRIPTION
	    "The table contains NDP prefix configuration."              
        ::= { zyxelNdpSetup 3 }  
    
    	zyxelNdpPrefixEntry OBJECT-TYPE
        SYNTAX      ZyxelNdpPrefixEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "An entry contains NDP prefix configuration."
        INDEX {           
        	zyNdpPrefixIfIndex,      
        	zyNdpPrefixPrefixType,
            zyNdpPrefixPrefixIpAddress,
            zyNdpPrefixPrefixLength           	       
        }
    	::= { zyxelNdpPrefixTable 1 }

   		ZyxelNdpPrefixEntry ::=
        	SEQUENCE {       
        		zyNdpPrefixIfIndex				 INTEGER,
            	zyNdpPrefixPrefixType   		 InetAddressType, 
            	zyNdpPrefixPrefixIpAddress       InetAddress,  
            	zyNdpPrefixPrefixLength          INTEGER,
           		zyNdpPrefixValidLifetime         Unsigned32, 
				zyNdpPrefixPreferredLifetime     Unsigned32,       
            	zyNdpPrefixNoAutonomousFlagState EnabledStatus,    
            	zyNdpPrefixNoOnLinkFlagState     EnabledStatus,
            	zyNdpPrefixNoAdvertiseFlagState  EnabledStatus,
            	zyNdpPrefixRowStatus             RowStatus
        	}     
        
    	zyNdpPrefixIfIndex OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  not-accessible
       	STATUS      current
        DESCRIPTION
        "The index of the Prefix Interface."
    	::= { zyxelNdpPrefixEntry 1 }
                           
    	zyNdpPrefixPrefixType OBJECT-TYPE
        SYNTAX      InetAddressType
        MAX-ACCESS  not-accessible
       	STATUS      current
        DESCRIPTION
        "The type of IPv6 Prefix Address."
		::= { zyxelNdpPrefixEntry 2 }
 
		zyNdpPrefixPrefixIpAddress OBJECT-TYPE
        SYNTAX      InetAddress
        MAX-ACCESS  not-accessible
       	STATUS      current
        DESCRIPTION
        "The IPv6 prefix Address for the interface."
    	::= { zyxelNdpPrefixEntry 3 }
                 
     	zyNdpPrefixPrefixLength OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  not-accessible
       	STATUS      current
        DESCRIPTION
        "The IPv6 prefix length of the prefix."
    	::= { zyxelNdpPrefixEntry 4 }
                    
     	zyNdpPrefixValidLifetime OBJECT-TYPE
        SYNTAX      Unsigned32
        MAX-ACCESS  read-write
       	STATUS      current
        DESCRIPTION
        "Enter the number of Valid Lifetime for the interface. 
		 Range of Valid lifetime is (0 to 4294967295). The default value is 2592000."
    	::= { zyxelNdpPrefixEntry 5 }
                      
     	zyNdpPrefixPreferredLifetime OBJECT-TYPE
        SYNTAX      Unsigned32
        MAX-ACCESS  read-write
       	STATUS      current
        DESCRIPTION
        "Enter the number of Preferred Lifetime for the interface. 
		 Range of Preferred lifetime is (0 to 4294967295). The default value is 604800."
    	::= { zyxelNdpPrefixEntry 6 }
                       
     	zyNdpPrefixNoAutonomousFlagState OBJECT-TYPE
        SYNTAX      EnabledStatus
        MAX-ACCESS  read-write
       	STATUS      current
        DESCRIPTION
        "Enable Prefix No-Autonomous Flag for an interface. The default value is disabled."
    	::= { zyxelNdpPrefixEntry 7 }
                    
     	zyNdpPrefixNoOnLinkFlagState OBJECT-TYPE
        SYNTAX      EnabledStatus
        MAX-ACCESS  read-write
       	STATUS      current
        DESCRIPTION
        "Enable Prefix No-OnLink Flag for an interface. The default value is disabled."
    	::= { zyxelNdpPrefixEntry 8 }
                    
     	zyNdpPrefixNoAdvertiseFlagState OBJECT-TYPE
        SYNTAX      EnabledStatus
        MAX-ACCESS  read-write
       	STATUS      current
        DESCRIPTION
        "Enable Prefix No-Advertise Flag for an interface. The default value is disabled."
    	::= { zyxelNdpPrefixEntry 9 }
                    
    	zyNdpPrefixRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
       	STATUS      current
        DESCRIPTION
        "This object allows entry to be created and deleted an IPv6 prefix entry."
    	::= { zyxelNdpPrefixEntry 10 }

		
	zyNdpNSTrackingAgingTime OBJECT-TYPE
	SYNTAX	INTEGER
	MAX-ACCESS  read-write
	STATUS  current
	DESCRIPTION
	"The number of seconds which learned NS tracking entry are held.
	 Range of NS tracking aging time is (120 to 86400). The default value is 86400."
	::= { zyxelNdpSetup 4 }   		
		
--
zyxelNdpStatus     		OBJECT IDENTIFIER ::= { zyxelIpv6Ndp 2 }
		
zyxelNdpNSTrackingTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF ZyNdpNSTrackingEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
           "The NS tracking table used for mapping from IPv6
            addresses to physical addresses."
    REFERENCE "RFC 826 and RFC 2461"
    ::= { zyxelNdpStatus 1 }

zyxelNdpNSTrackingEntry OBJECT-TYPE
    SYNTAX     ZyNdpNSTrackingEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
           "Each entry contains one IP address to physical address equivalence."
    INDEX       { zyNdpNSTrackingIfIndex,
                  zyNdpNSTrackingNetAddressType,
                  zyNdpNSTrackingNetAddress }
    ::= { zyxelNdpNSTrackingTable 1 }

ZyNdpNSTrackingEntry ::= SEQUENCE {
        zyNdpNSTrackingIfIndex         InterfaceIndex,
        zyNdpNSTrackingNetAddressType  InetAddressType,
        zyNdpNSTrackingNetAddress      InetAddress,
        zyNdpNSTrackingPhysAddress     PhysAddress
    }

zyNdpNSTrackingIfIndex OBJECT-TYPE
    SYNTAX     InterfaceIndex
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
           "The index value that uniquely identifies the interface to
            which this entry is applicable.  The interface identified by
            a particular value of this index is the same interface as
            identified by the same value of the IF-MIB's ifIndex."
    ::= { zyxelNdpNSTrackingEntry 1 }

zyNdpNSTrackingNetAddressType OBJECT-TYPE
    SYNTAX     InetAddressType
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
           "The type of zyNdpNSTrackingNetAddress."
    ::= { zyxelNdpNSTrackingEntry 2 }

zyNdpNSTrackingNetAddress OBJECT-TYPE
    SYNTAX     InetAddress
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
           "The IP Address corresponding to the media-dependent
            physical address.  The address type of this object is
            specified in zyNdpNSTrackingAddressType."
    ::= { zyxelNdpNSTrackingEntry 3 }

zyNdpNSTrackingPhysAddress OBJECT-TYPE
    SYNTAX     PhysAddress (SIZE(0..65535))
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
           "The media-dependent physical address."
    ::= { zyxelNdpNSTrackingEntry 4 }
		
END
