NEWTEC-IP2-MIB DEFINITIONS ::= BEGIN

IMPORTS
    IpAddress,
    MODULE-IDENTITY,
    OBJECT-IDENTITY,
    OBJECT-TYPE
        FROM SNMPv2-SMI

    MODULE-COMPLIANCE,
    OBJECT-GROUP
        FROM SNMPv2-CONF
    
    NtcAlarmState,
    NtcNetworkAddress
        FROM NEWTEC-TC-MIB

    DisplayString,
    RowStatus
        FROM SNMPv2-TC

    ntcFunction
        FROM NEWTEC-MAIN-MIB;


--
--  Module Identification
--

ntcIp2   MODULE-IDENTITY
    LAST-UPDATED "201707101200Z"
    ORGANIZATION "Newtec Cy"
    CONTACT-INFO
        "Newtec Cy
         Postal: Newtec Cy
                 Laarstraat 5
                 B-9100 Sint-Niklaas
                 Belgium

                Tel: +32 3 780 65 00
                Fax: +32 3 780 65 49
                Web: www.newtec.be
                E-mail: techsupport@newtec.be"
    DESCRIPTION
        "Newtec modular IP MIB containing definitions for IP functionality."

    REVISION  "201707101200Z"
    DESCRIPTION
        "Descriptions updated with regex"
    REVISION  "201509251100Z"
    DESCRIPTION
        "ntcIP2AlmGwUnreachable, ntcIP2CfgIgmp and ntcIP2CfgIgmpVersion added"
    REVISION  "201409230700Z"
    DESCRIPTION
        "Descriptions of ntcIP2CfgMCastIfName and ntcIP2CfgIPRouteName adapted"
    REVISION  "201409090900Z"
    DESCRIPTION
        "Minimum value of string keys adjusted"
    REVISION  "201407080900Z"
    DESCRIPTION
        "Initial release for MDM6100-2.1.50"
    ::= { ntcFunction  450 }
    

--
-- Top-Level Structure
--

-- ntcIp2 content

ntcIP2Objects                    OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Container holding ntcIP2Objects definitions."
    ::= { ntcIp2 1 }
    
ntcIP2Conformance                OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Conformance requirements."
    ::= { ntcIp2 2 }
    
-- ntcIP2Objects content

ntcIP2Cfg                        OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Container holding ntcIP2Cfg definitions."
    ::= { ntcIP2Objects 1 }
    
ntcIP2Alarm                      OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Container holding ntcIP2Alarm definitions."
    ::= { ntcIP2Objects 2 }
    
-- ntcIP2Cfg content

ntcIP2CfgIgmp                    OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Container holding ntcIP2CfgIgmp definitions."
    ::= { ntcIP2Cfg 4 }
    
-- ntcIP2Conformance content

ntcIP2ConfCompliance             OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Device compliance statements."
    ::= { ntcIP2Conformance 1 }
    
ntcIP2ConfGroup                  OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Groups used by device compliance statements."
    ::= { ntcIP2Conformance 2 }
    

--
-- Managed Objects
--

ntcIP2CfgIPIfTable               OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtcIP2CfgIPIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The ip address table."
    ::= { ntcIP2Cfg 1 }

ntcIP2CfgIPIfEntry               OBJECT-TYPE
    SYNTAX      NtcIP2CfgIPIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A conceptual row of the ntcIP2CfgIPIfTable."
    INDEX   { ntcIP2CfgIPIfInterface  }
    ::= { ntcIP2CfgIPIfTable 1 }

NtcIP2CfgIPIfEntry               ::= SEQUENCE {
    ntcIP2CfgIPIfInterface    DisplayString,
    ntcIP2CfgIPIfRowStatus    RowStatus,
    ntcIP2IfPhysIPAddr        NtcNetworkAddress,
    ntcIP2IfIPAddr            NtcNetworkAddress,
    ntcIP2IfState             INTEGER
    }
    
ntcIP2CfgIPIfInterface           OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(1..16))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The name of an Ethernet interface"
    ::= { ntcIP2CfgIPIfEntry 1 }
    
ntcIP2CfgIPIfRowStatus           OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The status of this conceptual row. An existing conceptual row can be in any
        one of the three states, 'notReady', 'notInService', or 'active'. If the
        manager wishes to add a row in a single shot with values for all the columns,
        the status column should be given as 'createAndGo(4)'. After the creation of a
        row, its value is set to active(1). If a row has to be created with values for
        only some columns, the status column should be 'createAndWait(5)'. Also, this
        row with partially filled columns has the status 'notReady(3)'. The entry
        remains in this state until the values for all the columns is set. After all
        the values are set, the agent changes this value to active(1).'"
    ::= { ntcIP2CfgIPIfEntry 2 }
    
ntcIP2IfPhysIPAddr               OBJECT-TYPE
    SYNTAX      NtcNetworkAddress
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "IP address and prefix. Internet Protocol address and its associated routing
        prefix. Regular expression :
        (?-mix:^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(\/(?:[0-2]?[0-9]|3[0-2]))?$)"
    ::= { ntcIP2CfgIPIfEntry 3 }
    
ntcIP2IfIPAddr                   OBJECT-TYPE
    SYNTAX      NtcNetworkAddress
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "IP address and prefix. Internet Protocol address and its associated routing
        prefix. Regular expression :
        (?-mix:^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(\/(?:[0-2]?[0-9]|3[0-2]))?$)"
    ::= { ntcIP2CfgIPIfEntry 4 }
    
ntcIP2IfState                    OBJECT-TYPE
    SYNTAX      INTEGER { off(0), on(1) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicates the operational status on an interface."
    ::= { ntcIP2CfgIPIfEntry 5 }
    
ntcIP2CfgMCastIfTable            OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtcIP2CfgMCastIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table containing the ntcIP2CfgMCastIf"
    ::= { ntcIP2Cfg 2 }

ntcIP2CfgMCastIfEntry            OBJECT-TYPE
    SYNTAX      NtcIP2CfgMCastIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A conceptual row of the ntcIP2CfgMCastIfTable."
    INDEX   { ntcIP2CfgMCastIfName  }
    ::= { ntcIP2CfgMCastIfTable 1 }

NtcIP2CfgMCastIfEntry            ::= SEQUENCE {
    ntcIP2CfgMCastIfName         DisplayString,
    ntcIP2CfgMCastIfRowStatus    RowStatus,
    ntcIP2MCastIfName            OCTET STRING,
    ntcIP2MCastIfIPAddr          IpAddress,
    ntcIP2MCastIfSrcAddr         IpAddress,
    ntcIP2MCastIfState           INTEGER,
    ntcIP2MCastIfSrcAddrB        IpAddress
    }
    
ntcIP2CfgMCastIfName             OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(1..100))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The name of the multicast"
    ::= { ntcIP2CfgMCastIfEntry 1 }
    
ntcIP2CfgMCastIfRowStatus        OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The status of this conceptual row. An existing conceptual row can be in any
        one of the three states, 'notReady', 'notInService', or 'active'. If the
        manager wishes to add a row in a single shot with values for all the columns,
        the status column should be given as 'createAndGo(4)'. After the creation of a
        row, its value is set to active(1). If a row has to be created with values for
        only some columns, the status column should be 'createAndWait(5)'. Also, this
        row with partially filled columns has the status 'notReady(3)'. The entry
        remains in this state until the values for all the columns is set. After all
        the values are set, the agent changes this value to active(1).'"
    ::= { ntcIP2CfgMCastIfEntry 2 }
    
ntcIP2MCastIfName                OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(0..16))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The name of an Ethernet interface"
    ::= { ntcIP2CfgMCastIfEntry 3 }
    
ntcIP2MCastIfIPAddr              OBJECT-TYPE
    SYNTAX      IpAddress 
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Multicast IP address to receive from. Regular expression :
        (?-mix:^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$)"
    ::= { ntcIP2CfgMCastIfEntry 4 }
    
ntcIP2MCastIfSrcAddr             OBJECT-TYPE
    SYNTAX      IpAddress 
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "IP address from which to receive. Regular expression :
        (?-mix:^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$)"
    ::= { ntcIP2CfgMCastIfEntry 5 }
    
ntcIP2MCastIfState               OBJECT-TYPE
    SYNTAX      INTEGER { off(0), on(1) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicates the operational status on an interface."
    ::= { ntcIP2CfgMCastIfEntry 6 }
    
ntcIP2MCastIfSrcAddrB            OBJECT-TYPE
    SYNTAX      IpAddress 
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "IP address from which to receive. Regular expression :
        (?-mix:^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$)"
    ::= { ntcIP2CfgMCastIfEntry 7 }
    
ntcIP2CfgIPRouteTable            OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtcIP2CfgIPRouteEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table containing the ntcIP2CfgIPRoute"
    ::= { ntcIP2Cfg 3 }

ntcIP2CfgIPRouteEntry            OBJECT-TYPE
    SYNTAX      NtcIP2CfgIPRouteEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A conceptual row of the ntcIP2CfgIPRouteTable."
    INDEX   { ntcIP2CfgIPRouteName  }
    ::= { ntcIP2CfgIPRouteTable 1 }

NtcIP2CfgIPRouteEntry            ::= SEQUENCE {
    ntcIP2CfgIPRouteName         DisplayString,
    ntcIP2CfgIPRouteRowStatus    RowStatus,
    ntcIP2IPRouteDstSubnet       NtcNetworkAddress,
    ntcIP2IPRouteIfName          OCTET STRING,
    ntcIP2IPRouteGateway         IpAddress,
    ntcIP2IPRouteState           INTEGER
    }
    
ntcIP2CfgIPRouteName             OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(1..100))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The name of the route"
    ::= { ntcIP2CfgIPRouteEntry 1 }
    
ntcIP2CfgIPRouteRowStatus        OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The status of this conceptual row. An existing conceptual row can be in any
        one of the three states, 'notReady', 'notInService', or 'active'. If the
        manager wishes to add a row in a single shot with values for all the columns,
        the status column should be given as 'createAndGo(4)'. After the creation of a
        row, its value is set to active(1). If a row has to be created with values for
        only some columns, the status column should be 'createAndWait(5)'. Also, this
        row with partially filled columns has the status 'notReady(3)'. The entry
        remains in this state until the values for all the columns is set. After all
        the values are set, the agent changes this value to active(1).'"
    ::= { ntcIP2CfgIPRouteEntry 2 }
    
ntcIP2IPRouteDstSubnet           OBJECT-TYPE
    SYNTAX      NtcNetworkAddress
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Subnet Regular expression :
        (?-mix:^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(\/(?:[0-2]?[0-9]|3[0-2]))?$)"
    ::= { ntcIP2CfgIPRouteEntry 3 }
    
ntcIP2IPRouteIfName              OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(0..16))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The name of an Ethernet interface"
    ::= { ntcIP2CfgIPRouteEntry 4 }
    
ntcIP2IPRouteGateway             OBJECT-TYPE
    SYNTAX      IpAddress 
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Data network Gateway IP address. Regular expression :
        (?-mix:^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$)"
    ::= { ntcIP2CfgIPRouteEntry 5 }
    
ntcIP2IPRouteState               OBJECT-TYPE
    SYNTAX      INTEGER { off(0), on(1) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicates the operational status on an interface."
    ::= { ntcIP2CfgIPRouteEntry 6 }
    
ntcIP2CfgIgmpVersion             OBJECT-TYPE
    SYNTAX      INTEGER { v2(0), v3(1) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "IGMP Version."
    DEFVAL { v2 }
    ::= { ntcIP2CfgIgmp 1 }
    
ntcIP2AlmInconsistent            OBJECT-TYPE
    SYNTAX      NtcAlarmState
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This alarm is raised when an interface has been configured for use and which
        is currently unavailable. This variable indicates the current status of the
        alarm."
    ::= { ntcIP2Alarm 1 }
    
ntcIP2AlmGwUnreachable           OBJECT-TYPE
    SYNTAX      NtcAlarmState
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This alarm is raised when a data or management gateway address has been
        configured that cannot be routed or for which no MAC address can be obtained
        by using ARP. This variable indicates the current status of the alarm."
    ::= { ntcIP2Alarm 2 }
    

--
--  Module Conformance
--

ntcIP2ConfGrpV1Standard          OBJECT-GROUP
    OBJECTS    {
                   ntcIP2CfgIPIfRowStatus,
                   ntcIP2IfPhysIPAddr,
                   ntcIP2IfIPAddr,
                   ntcIP2IfState,
                   ntcIP2CfgMCastIfRowStatus,
                   ntcIP2MCastIfName,
                   ntcIP2MCastIfIPAddr,
                   ntcIP2MCastIfSrcAddr,
                   ntcIP2MCastIfState,
                   ntcIP2MCastIfSrcAddrB,
                   ntcIP2CfgIPRouteRowStatus,
                   ntcIP2IPRouteDstSubnet,
                   ntcIP2IPRouteIfName,
                   ntcIP2IPRouteGateway,
                   ntcIP2IPRouteState,
                   ntcIP2CfgIgmpVersion,
                   ntcIP2AlmInconsistent,
                   ntcIP2AlmGwUnreachable
               }
    STATUS      current
    DESCRIPTION
        "Managed objects that constitute version 1 of a system device with standard capabilities."
    ::= { ntcIP2ConfGroup 1}
    
ntcIP2ConfCompV1Standard         MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "Compliance statement for Newtec device MIB implementations."
    MODULE  -- this module
    MANDATORY-GROUPS
                  {
                      ntcIP2ConfGrpV1Standard
                  }
    ::= { ntcIP2ConfCompliance  1 }
    

END
