-- 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.

-- ZYXEL-VRRP-MIB.mib
-- Revision 1.7  2014/05/27 

ZYXEL-VRRP-MIB DEFINITIONS ::= BEGIN

    IMPORTS
	OBJECT-TYPE
		FROM SNMPv2-SMI			-- RFC2578	
		
        MODULE-IDENTITY		
                FROM SNMPv2-SMI			-- RFC2578	

	RowStatus,DisplayString                                          
	  	FROM SNMPv2-TC         -- RFC2579
	EnabledStatus
		FROM  P-BRIDGE-MIB
    IpAddress
        FROM SNMPv2-SMI
    zyRouteDomainIpAddress, zyRouteDomainIpMaskBits
		FROM ZYXEL-IP-FORWARD-MIB
	esMgmt			
		FROM ZYXEL-ES-SMI;

	zyxelVrrp MODULE-IDENTITY
		LAST-UPDATED	"201207010000Z"    
		ORGANIZATION "Enterprise Solution ZyXEL"     
		CONTACT-INFO
			""	   
		DESCRIPTION
			"The subtree for Virtual Router Redundancy Protocol (VRRP)"
		::= { esMgmt 91 }

	zyxelVrrpSetup     			OBJECT IDENTIFIER ::= { zyxelVrrp 1 }
	zyxelVrrpStatus    			OBJECT IDENTIFIER ::= { zyxelVrrp 2 }
		
-- *******************************************************************
-- *
-- * zyxelVrrpSetup
-- *
-- *******************************************************************

-- zyxelVrrpMaxNumberOfVirtualRouters
        zyVrrpMaxNumberOfVirtualRouters OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                      "The maximum number of virtual routers that can be created."
        ::= { zyxelVrrpSetup 1 }

-- zyxelVrrpTable
        zyxelVrrpTable OBJECT-TYPE
        SYNTAX	SEQUENCE OF ZyxelVrrpEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                 	"The table contains VRRP configuration."
        ::= { zyxelVrrpSetup 2 }
        
		zyxelVrrpEntry OBJECT-TYPE
        SYNTAX	ZyxelVrrpEntry
        MAX-ACCESS	not-accessible
        STATUS	current
        DESCRIPTION    	
					"An entry contains VRRP configuration."
        INDEX          	{ zyRouteDomainIpAddress, zyRouteDomainIpMaskBits, zyVrrpVirtualId, zyVrrpUplinkGateway }
        ::= { zyxelVrrpTable 1 }

        ZyxelVrrpEntry ::=
           SEQUENCE {
        	zyVrrpVirtualId					INTEGER,
        	zyVrrpUplinkGateway				IpAddress,
        	zyVrrpPreemptState				EnabledStatus,
        	zyVrrpInterval					INTEGER,
        	zyVrrpPriority					INTEGER,
        	zyVrrpPrimaryVirtualpAddress	IpAddress,
        	zyVrrpName						DisplayString,
        	zyVrrpSecondaryVirtualIpAddress	IpAddress,   
           	zyVrrpPingState					EnabledStatus,
		   	zyVrrpRowStatus					RowStatus   
           }

        zyVrrpVirtualId OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                      	"Enter a virtual router number for which this VRRP entry is created. 
						You can configure up to seven virtual routers for one network."
        ::= { zyxelVrrpEntry 1 }

        zyVrrpUplinkGateway OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                      	"IP address of the uplink gateway in dotted decimal notation."
        ::= { zyxelVrrpEntry 2 }

        zyVrrpPreemptState OBJECT-TYPE
        SYNTAX  EnabledStatus 
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"Enable/Disable preempt mode"
        ::= { zyxelVrrpEntry 3 }

        zyVrrpInterval OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"Specify the number of seconds between hello message transmissions. The default is 1."
        ::= { zyxelVrrpEntry 4 }

        zyVrrpPriority OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"Set the priority level. The number is bigger, the priority is higher."
        ::= { zyxelVrrpEntry 5 }

        zyVrrpPrimaryVirtualpAddress OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"The IP address of the primary virtual router in dotted decimal notation."
        ::= { zyxelVrrpEntry 6 }

        zyVrrpName OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"A descriptive name for identification purposes"
        ::= { zyxelVrrpEntry 7 }

        zyVrrpSecondaryVirtualIpAddress OBJECT-TYPE
        SYNTAX	IpAddress
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"This is optional. The IP address of a secondary virtual router in dotted decimal notation."
        ::= { zyxelVrrpEntry 8 }
                   
        zyVrrpPingState OBJECT-TYPE
        SYNTAX  EnabledStatus 
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"Enable/Disable virtual router to response ping."
        ::= { zyxelVrrpEntry 9 }
            
		zyVrrpRowStatus OBJECT-TYPE
        SYNTAX	RowStatus
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
                      	"This object allows entries to be created and deleted from the VRRP table."
        ::= { zyxelVrrpEntry 10 }
  
-- zyxelVrrpDomainTable
        zyxelVrrpDomainTable OBJECT-TYPE
        SYNTAX	SEQUENCE OF ZyxelVrrpDomainEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                 	"The table contains VRRP domain configuration."
        ::= { zyxelVrrpSetup 3 }
        
		zyxelVrrpDomainEntry OBJECT-TYPE
        SYNTAX	ZyxelVrrpDomainEntry
        MAX-ACCESS	not-accessible
        STATUS	current
        DESCRIPTION    	
					"An entry contains VRRP domain configuration."
        INDEX          	{ zyRouteDomainIpAddress, zyRouteDomainIpMaskBits }
        ::= { zyxelVrrpDomainTable 1 }

        ZyxelVrrpDomainEntry ::=
           SEQUENCE {
        	zyVrrpDomainAuthenticationType		INTEGER,
        	zyVrrpDomainAuthenticationKey		DisplayString
           }

        zyVrrpDomainAuthenticationType OBJECT-TYPE
        SYNTAX  INTEGER {
		none(0),
		simple(1)
		}
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"Select None to disable authentication. This is the default setting.
						Select Simple to use a simple password to authenticate VRRP packet exchanges on this interface"
        ::= { zyxelVrrpDomainEntry 1 }

        zyVrrpDomainAuthenticationKey OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"When you select simple in the authentication field, enter a password key in this field"
        ::= { zyxelVrrpDomainEntry 2 }

-- *******************************************************************
-- *
-- * zyxelVrrpStatus
-- *
-- *******************************************************************

-- zyxelVrrpInfoTable
        zyxelVrrpInfoTable OBJECT-TYPE
        SYNTAX	SEQUENCE OF ZyxelVrrpInfoEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                 	"The table contains VRRP information."
        ::= { zyxelVrrpStatus 1 }
        
		zyxelVrrpInfoEntry OBJECT-TYPE
        SYNTAX	ZyxelVrrpInfoEntry
        MAX-ACCESS	not-accessible
        STATUS	current
        DESCRIPTION    	
					"An entry contains VRRP information."
        INDEX          	{ zyVrrpInfoIpAddress, zyVrrpInfoIpMaskBits, zyVrrpInfoVirtualId }
        ::= { zyxelVrrpInfoTable 1 }

        ZyxelVrrpInfoEntry ::=
           SEQUENCE {
        	zyVrrpInfoIpAddress				IpAddress,
        	zyVrrpInfoIpMaskBits			INTEGER,
        	zyVrrpInfoVirtualId				INTEGER,
        	zyVrrpInfoVirtualRouterStatus	DisplayString,
        	zyVrrpInfoUplinkStatus			DisplayString	
        }

        zyVrrpInfoIpAddress OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                      	"The IP address of an IP routing domain that is associated to a virtual router."
        ::= { zyxelVrrpInfoEntry 1 }

        zyVrrpInfoIpMaskBits OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                      	"The subnet mask bits of an IP routing domain that is associated to a virtual router."
        ::= { zyxelVrrpInfoEntry 2 }

        zyVrrpInfoVirtualId OBJECT-TYPE
        SYNTAX  INTEGER 
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                      	"Display the ID number of the virtual router."
        ::= { zyxelVrrpInfoEntry 3 }
        
        zyVrrpInfoVirtualRouterStatus OBJECT-TYPE
        SYNTAX  DisplayString 
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                      	"Display the status of the virtual router."
        ::= { zyxelVrrpInfoEntry 4 }        

        zyVrrpInfoUplinkStatus OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                      	"Display the status of the link between this switch and the uplink gateway."
        ::= { zyxelVrrpInfoEntry 5 }

END 


