ALCATEL-IND1-IPRM-MIB DEFINITIONS ::= BEGIN

IMPORTS
   	MODULE-IDENTITY, OBJECT-TYPE,
    IpAddress, Integer32,Unsigned32
        FROM SNMPv2-SMI
    RowStatus,TEXTUAL-CONVENTION
       FROM SNMPv2-TC
    SnmpAdminString
       FROM SNMP-FRAMEWORK-MIB
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF
    IANAipRouteProtocol
	FROM IANA-RTPROTO-MIB
    routingIND1Iprm
        FROM ALCATEL-IND1-BASE ;

alcatelIND1IPRMMIB MODULE-IDENTITY

    LAST-UPDATED  "201910070000Z"
    ORGANIZATION  "ALE USA Inc"
    CONTACT-INFO
        "Please consult with Customer Service to ensure the most appropriate
         version of this document is used with the products in question:

                        Alcatel-Lucent Enterprise,            
                           26801 West Agoura Road
                        Agoura Hills, CA  91301-5122
                          United States Of America

        Telephone:               +1 800 995 2696 
 				  
        Electronic Mail:         ebg_global_supportcenter@al-enterprise.com 
        World Wide Web:          https://www.al-enterprise.com"
       

    DESCRIPTION
        "This module describes an authoritative enterprise-specific Simple
         Network Management Protocol (SNMP) Management Information Base (MIB):

             This proprietary MIB contains management information for
             the configuration of IPRM global configuration parameters.

         The right to make changes in specification and other information
         contained in this document without prior notice is reserved.

         No liability shall be assumed for any incidental, indirect, special, or
         consequential damages whatsoever arising from or related to this
         document or the information contained herein.

         Vendors, end-users, and other interested parties are granted
         non-exclusive license to use this specification in connection with
         management of the products for which it is intended to be used.

			Copyright (C) ALE USA Inc. 2014-2019                     
			Copyright (C) 1995-2013 Alcatel-Lucent
                         ALL RIGHTS RESERVED WORLDWIDE"

    REVISION       "201910070000Z"
    DESCRIPTION
        "Updated the latest contact and Copyright information for ALE USA Inc."

    ::= { routingIND1Iprm 1 }

alcatelIND1IPRMMIBObjects  OBJECT IDENTIFIER ::= { alcatelIND1IPRMMIB 1 }

alaIprmConfig  OBJECT IDENTIFIER ::= { alcatelIND1IPRMMIBObjects 1 }

--  Textual Conventions
       AdminStatus ::= TEXTUAL-CONVENTION
       STATUS        current
       DESCRIPTION
            " Admin status"
       SYNTAX  INTEGER { enabled(1),
                         disabled(2)
                        }
       StaticRouteType ::= TEXTUAL-CONVENTION
       STATUS        current
       DESCRIPTION
            "A mechanism for distinguishing the type of static route"
       SYNTAX  INTEGER { 
                         regular(1),
                         recursive(2),
                         bfdEnabled(3)
                        }
-- Route Table

alaIprmRouteTable OBJECT-TYPE
    SYNTAX   SEQUENCE OF AlaIprmRouteEntry
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
       "IPRM's Routing table."
    ::= { alaIprmConfig 1 }

alaIprmRouteEntry OBJECT-TYPE
    SYNTAX   AlaIprmRouteEntry
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
       "A particular route to  a  particular  destination"
    INDEX {
        alaIprmRouteDest,
        alaIprmRouteMask,
        alaIprmRouteTos,
        alaIprmRouteNextHop
        }
    ::= { alaIprmRouteTable 1 }

AlaIprmRouteEntry ::=
    SEQUENCE {
        alaIprmRouteDest
            IpAddress,
        alaIprmRouteMask
            IpAddress,
        alaIprmRouteTos
             Integer32,
        alaIprmRouteNextHop
            IpAddress,
 	alaIprmRouteProto
            IANAipRouteProtocol,
        alaIprmRouteMetric
            Integer32,
	alaIprmRoutePriority
	    Integer32
    }

alaIprmRouteDest OBJECT-TYPE
    SYNTAX   IpAddress
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
       "The destination IP address of this route."
    ::= { alaIprmRouteEntry 1 }

alaIprmRouteMask OBJECT-TYPE
    SYNTAX   IpAddress
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
	"The mask of this route"
    ::= { alaIprmRouteEntry 2 }

alaIprmRouteTos OBJECT-TYPE
    SYNTAX   Integer32 (0..16)
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
	"The TOS for this route"
    ::= { alaIprmRouteEntry 3 }

alaIprmRouteNextHop OBJECT-TYPE
    SYNTAX   IpAddress
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
	"The Gateway for this route"
    ::= { alaIprmRouteEntry 4 }

alaIprmRouteProto OBJECT-TYPE
    SYNTAX   IANAipRouteProtocol
    MAX-ACCESS read-only
    STATUS   current
    DESCRIPTION
	"The protocol that this route was learned from"
    ::= { alaIprmRouteEntry 5 }

alaIprmRouteMetric OBJECT-TYPE
    SYNTAX   Integer32
    MAX-ACCESS read-only
    STATUS   current
    DESCRIPTION
	"The metric for this route"
    ::= { alaIprmRouteEntry 6 }

alaIprmRoutePriority OBJECT-TYPE
    SYNTAX   Integer32
    MAX-ACCESS read-only
    STATUS   current
    DESCRIPTION
	"The priority for this route"
    ::= { alaIprmRouteEntry 7 }


-- Static Route Table

alaIprmStaticRouteTable OBJECT-TYPE
    SYNTAX   SEQUENCE OF AlaIprmStaticRouteEntry
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
       "IPRM's Static Route table."
    ::= { alaIprmConfig 2 }

alaIprmStaticRouteEntry OBJECT-TYPE
    SYNTAX   AlaIprmStaticRouteEntry
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
	"A route entered by the user"
    INDEX {
        alaIprmStaticRouteDest,
        alaIprmStaticRouteMask,
        alaIprmStaticRouteNextHop
        }
    ::= { alaIprmStaticRouteTable 1 }

AlaIprmStaticRouteEntry ::=
    SEQUENCE {
        alaIprmStaticRouteDest
            IpAddress,
        alaIprmStaticRouteMask
            IpAddress,
        alaIprmStaticRouteNextHop
            IpAddress,
	alaIprmStaticRouteMetric
	    Integer32,
	alaIprmStaticRouteStatus
	    RowStatus,
	alaIprmStaticRouteBfdStatus
	   AdminStatus,
	alaIprmStaticRouteType
	   StaticRouteType,
	alaIprmStaticRouteTag
	  Unsigned32,
	alaIprmStaticRouteName
	  SnmpAdminString
    }

alaIprmStaticRouteDest OBJECT-TYPE
    SYNTAX   IpAddress
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
       "The destination IP address of this route."
    ::= { alaIprmStaticRouteEntry 1 }

alaIprmStaticRouteMask OBJECT-TYPE
    SYNTAX   IpAddress
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
	"The mask of this route"
    ::= { alaIprmStaticRouteEntry 2 }

alaIprmStaticRouteNextHop OBJECT-TYPE
    SYNTAX   IpAddress
    MAX-ACCESS not-accessible
    STATUS   current
    DESCRIPTION
	"The Gateway for this route"
    ::= { alaIprmStaticRouteEntry 3 }

alaIprmStaticRouteMetric OBJECT-TYPE
    SYNTAX   Integer32
    MAX-ACCESS read-create
    STATUS   current
    DESCRIPTION
	"The metric for this route"
    ::= { alaIprmStaticRouteEntry 4 }

alaIprmStaticRouteStatus OBJECT-TYPE
    SYNTAX     RowStatus
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
            "The status of this entry.  Enabling causes a new
		static route to be created, disabled causes that
		static route to be deleted."
    ::= { alaIprmStaticRouteEntry 5 }

alaIprmStaticRouteBfdStatus OBJECT-TYPE
    SYNTAX     AdminStatus
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
	    "For enabling or disabling the BFD status on this static route."
    ::= { alaIprmStaticRouteEntry 6 }
alaIprmStaticRouteType OBJECT-TYPE
    SYNTAX     StaticRouteType
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
	    "Type of static route."
    ::= { alaIprmStaticRouteEntry 7 }
alaIprmStaticRouteTag OBJECT-TYPE
    SYNTAX   Unsigned32
    MAX-ACCESS read-create
    STATUS   current
    DESCRIPTION
       "Tag of static route."
    ::= { alaIprmStaticRouteEntry 8 }    	
alaIprmStaticRouteName OBJECT-TYPE
    SYNTAX   SnmpAdminString(SIZE (0..32))
    MAX-ACCESS read-create
    STATUS   current
    DESCRIPTION
       "Name of static route."
    ::= { alaIprmStaticRouteEntry 9 }

-- Route Preference Configurations

alaIprmRtPrefLocal OBJECT-TYPE
    SYNTAX   Integer32 (1..255)
    MAX-ACCESS read-only
    STATUS   current
    DESCRIPTION
       "IPRM's Route Preference on Local Routes."
    DEFVAL	{ 1 }
    ::= { alaIprmConfig 3 }

alaIprmRtPrefStatic OBJECT-TYPE
    SYNTAX   Integer32 (1..255)
    MAX-ACCESS read-write
    STATUS   current
    DESCRIPTION
       "IPRM's Route Preference on Static Routes."
    DEFVAL	{ 2 }
    ::= { alaIprmConfig 4 }

alaIprmRtPrefOspf OBJECT-TYPE
    SYNTAX   Integer32 (1..255)
    MAX-ACCESS read-write
    STATUS   current
    DESCRIPTION
       "IPRM's Route Preference on Ospf Routes."
    DEFVAL	{ 110 }
    ::= { alaIprmConfig 5 }

alaIprmRtPrefRip OBJECT-TYPE
    SYNTAX   Integer32 (1..255)
    MAX-ACCESS read-write
    STATUS   current
    DESCRIPTION
       "IPRM's Route Preference on RIP Routes."
    DEFVAL	{ 120 }
    ::= { alaIprmConfig 6 }

alaIprmRtPrefBgp OBJECT-TYPE
    SYNTAX   Integer32 (1..255)
    MAX-ACCESS read-write
    STATUS   deprecated
    DESCRIPTION
       "Replaced by alaIprmRtPrefEbgp and alaIprmRtPrefIbgp."
    DEFVAL	{ 200 }
    ::= { alaIprmConfig 7 }

alaIprmRtPrefEbgp OBJECT-TYPE
    SYNTAX   Integer32 (1..255)
    MAX-ACCESS read-write
    STATUS   current
    DESCRIPTION
       "IPRM's Route Preference on External BGP Routes."
    DEFVAL	{ 190 }
    ::= { alaIprmConfig 8 }

alaIprmRtPrefIbgp OBJECT-TYPE
    SYNTAX   Integer32 (1..255)
    MAX-ACCESS read-write
    STATUS   current
    DESCRIPTION
       "IPRM's Route Preference on Internal BGP Routes."
    DEFVAL	{ 200 }
    ::= { alaIprmConfig 9 }

alaIprmRtPrefIsisL1 OBJECT-TYPE
    SYNTAX   Integer32 (1..255)
    MAX-ACCESS read-write
    STATUS   current
    DESCRIPTION
       "IPRM's Route Preference on Level 1 ISIS Routes."
    DEFVAL	{ 115 }
    ::= { alaIprmConfig 10 }

alaIprmRtPrefIsisL2 OBJECT-TYPE
    SYNTAX   Integer32 (1..255)
    MAX-ACCESS read-write
    STATUS   current
    DESCRIPTION
       "IPRM's Route Preference on Level 2 ISIS Routes."
    DEFVAL	{ 118 }
    ::= { alaIprmConfig 11 }

alaIprmStaticAllBfd   OBJECT-TYPE
   SYNTAX   AdminStatus
    MAX-ACCESS read-write
    STATUS   current
    DESCRIPTION
	" BFD Enable/Disable to all static routes."
    DEFVAL      { disabled } 
    ::= { alaIprmConfig 12 }
alaIprmRtPrefImport OBJECT-TYPE
    SYNTAX   Integer32 (1..255)
    MAX-ACCESS read-write
    STATUS   current
    DESCRIPTION
       "IPRM's Route Preference on Imported Routes from source vrf."
    DEFVAL	{ 210 }
    ::= { alaIprmConfig 13 }
-- Route Leaking Export route-map
 
 alaIprmExportRouteMap   OBJECT-TYPE
    SYNTAX   Integer32
     MAX-ACCESS read-write
     STATUS   current
     DESCRIPTION
         "A route-map index representing the route-map used to filter
          routes exported to the Global Route Table. A value of -1 
          indicates no routes should be exported. Otherwise, the value 
          is the route-map index to use for filtering."         
     ::= { alaIprmConfig 14 }
 
 -- Route Leaking Import Vrf Table
 
 alaIprmImportVrfTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF AlaIprmImportVrfEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "This table specifies VRFs to import routes from." 
     ::= { alaIprmConfig 15 }
 
 alaIprmImportVrfEntry OBJECT-TYPE
     SYNTAX      AlaIprmImportVrfEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An entry in this table is created for each VRF
          to import routes from."
     INDEX {
         alaIprmImportVrfName
        }
     ::= { alaIprmImportVrfTable 1 }
 AlaIprmImportVrfEntry ::= SEQUENCE {
     alaIprmImportVrfName              SnmpAdminString,
     alaIprmImportVrfRouteMap          Integer32,
     alaIprmImportVrfRowStatus         RowStatus
    }
 alaIprmImportVrfName OBJECT-TYPE
     SYNTAX      SnmpAdminString (SIZE (0..20))
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "The name of the VRF that routes should be imported from. An
          empty string indicates the default VRF."
     ::= { alaIprmImportVrfEntry 1 }
 
 alaIprmImportVrfRouteMap OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-create
     STATUS  current
     DESCRIPTION
         "A route-map index representing the route-map used to filter
          imported routes."
     ::= { alaIprmImportVrfEntry 2 }
 
 alaIprmImportVrfRowStatus OBJECT-TYPE
     SYNTAX      RowStatus
     MAX-ACCESS  read-create
     STATUS  current
     DESCRIPTION
         "This variable is used to create, modify, and/or
          delete a row in this table."
     ::= { alaIprmImportVrfEntry 3 }

-- conformance information

alcatelIND1IPRMMIBConformance OBJECT IDENTIFIER ::= { alcatelIND1IPRMMIB 2 }
alcatelIND1IPRMMIBCompliances OBJECT IDENTIFIER ::=
                                          { alcatelIND1IPRMMIBConformance 1 }
alcatelIND1IPRMMIBGroups      OBJECT IDENTIFIER ::=
                                          { alcatelIND1IPRMMIBConformance 2 }

-- compliance statements

alaIprmCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
            "The compliance statement for routers running IPRM
            and implementing the ALCATEL-IND1-IPRM MIB."
    MODULE  -- this module
        MANDATORY-GROUPS { alaIprmConfigMIBGroup }

    ::= { alcatelIND1IPRMMIBCompliances 1 }

-- units of conformance

alaIprmConfigMIBGroup OBJECT-GROUP
    OBJECTS { alaIprmRouteProto, alaIprmRouteMetric, alaIprmRoutePriority,
		alaIprmStaticRouteMetric, alaIprmStaticRouteStatus,
		alaIprmRtPrefLocal, alaIprmRtPrefStatic, alaIprmRtPrefOspf,
		alaIprmRtPrefRip, alaIprmRtPrefBgp, alaIprmRtPrefEbgp,
		alaIprmRtPrefIbgp, alaIprmRtPrefImport,alaIprmRtPrefIsisL1, 
                alaIprmRtPrefIsisL2,alaIprmStaticAllBfd, alaIprmStaticRouteBfdStatus ,alaIprmStaticRouteType,
                alaIprmExportRouteMap, alaIprmImportVrfRouteMap, alaIprmImportVrfRowStatus,
		alaIprmStaticRouteTag, alaIprmStaticRouteName
            }
    STATUS  current
    DESCRIPTION
            "A collection of objects to support management of global
            configuration parameters of the IPRM Module."
    ::= { alcatelIND1IPRMMIBGroups 1 }


END

