NEWTEC-IP-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

    ntcFunction
        FROM NEWTEC-MAIN-MIB;


--
--  Module Identification
--

ntcIp   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  "201402031200Z"
    DESCRIPTION
        "Added gateway unreachable alarm"
    REVISION  "201301081200Z"
    DESCRIPTION
        "Release for MDM6000 and NOP1760 R1.0"
    REVISION  "201206281200Z"
    DESCRIPTION
        "Release for M6100 R1.2"
    ::= { ntcFunction  400 }
    

--
-- Top-Level Structure
--

-- ntcIp content

ntcIpObjects                     OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Container holding ntcIpObjects definitions."
    ::= { ntcIp 1 }
    
ntcIpConformance                 OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Conformance requirements."
    ::= { ntcIp 2 }
    
-- ntcIpObjects content

ntcIpAlarm                       OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Container holding ntcIpAlarm definitions."
    ::= { ntcIpObjects 5 }
    
-- ntcIpConformance content

ntcIpConfCompliance              OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Device compliance statements."
    ::= { ntcIpConformance 1 }
    
ntcIpConfGroup                   OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Groups used by device compliance statements."
    ::= { ntcIpConformance 2 }
    

--
-- Managed Objects
--

ntcIpMgmtInterfaceTable          OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtcIpMgmtInterfaceEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table containing the ntcIpMgmtInterface"
    ::= { ntcIpObjects 1 }

ntcIpMgmtInterfaceEntry          OBJECT-TYPE
    SYNTAX      NtcIpMgmtInterfaceEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A conceptual row of the ntcIpMgmtInterfaceTable."
    INDEX   { ntcIpMgmtInterfaceName  }
    ::= { ntcIpMgmtInterfaceTable 1 }

NtcIpMgmtInterfaceEntry          ::= SEQUENCE {
    ntcIpMgmtInterfaceName             INTEGER,
    ntcIpMgmtInterfaceIpAddress        NtcNetworkAddress,
    ntcIpMgmtInterfaceState            INTEGER,
    ntcIpMgmtInterfaceVirtualIpAddr    NtcNetworkAddress
    }
    
ntcIpMgmtInterfaceName           OBJECT-TYPE
    SYNTAX      INTEGER { mgmt1(0), mgmt2(1), mgmtfp(2), mgmt(3) }
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The name of a Management interface"
    ::= { ntcIpMgmtInterfaceEntry 1 }
    
ntcIpMgmtInterfaceIpAddress      OBJECT-TYPE
    SYNTAX      NtcNetworkAddress
    MAX-ACCESS  read-write
    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]))?$)"
    DEFVAL { "0.0.0.0/24" }
    ::= { ntcIpMgmtInterfaceEntry 2 }
    
ntcIpMgmtInterfaceState          OBJECT-TYPE
    SYNTAX      INTEGER { off(0), on(1) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicates the operational status on an interface."
    ::= { ntcIpMgmtInterfaceEntry 3 }
    
ntcIpMgmtInterfaceVirtualIpAddr  OBJECT-TYPE
    SYNTAX      NtcNetworkAddress
    MAX-ACCESS  read-write
    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]))?$)"
    DEFVAL { "0.0.0.0/24" }
    ::= { ntcIpMgmtInterfaceEntry 4 }
    
ntcMgmtGateway                   OBJECT-TYPE
    SYNTAX      IpAddress 
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Management network Gateway IP address. Regular expression :
        (?-mix:^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$)"
    DEFVAL { '00000000'h }
    ::= { ntcIpObjects 2 }
    
ntcDataInterfaceTable            OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtcDataInterfaceEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table containing the ntcDataInterface"
    ::= { ntcIpObjects 3 }

ntcDataInterfaceEntry            OBJECT-TYPE
    SYNTAX      NtcDataInterfaceEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A conceptual row of the ntcDataInterfaceTable."
    INDEX   { ntcDataInterfaceName  }
    ::= { ntcDataInterfaceTable 1 }

NtcDataInterfaceEntry            ::= SEQUENCE {
    ntcDataInterfaceName            INTEGER,
    ntcDataInterfaceIpAddress       NtcNetworkAddress,
    ntcDataInterfaceState           INTEGER,
    ntcDataInterfaceFysIpAddress    NtcNetworkAddress
    }
    
ntcDataInterfaceName             OBJECT-TYPE
    SYNTAX      INTEGER { data1(0), data2(1), data(2), sat1(3), sat2(4), sat(5) }
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The name of a Data interface"
    ::= { ntcDataInterfaceEntry 1 }
    
ntcDataInterfaceIpAddress        OBJECT-TYPE
    SYNTAX      NtcNetworkAddress
    MAX-ACCESS  read-write
    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]))?$)"
    DEFVAL { "0.0.0.0/24" }
    ::= { ntcDataInterfaceEntry 2 }
    
ntcDataInterfaceState            OBJECT-TYPE
    SYNTAX      INTEGER { off(0), on(1) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicates the operational status on an interface."
    ::= { ntcDataInterfaceEntry 3 }
    
ntcDataInterfaceFysIpAddress     OBJECT-TYPE
    SYNTAX      NtcNetworkAddress
    MAX-ACCESS  read-write
    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]))?$)"
    DEFVAL { "0.0.0.0/24" }
    ::= { ntcDataInterfaceEntry 4 }
    
ntcDataGateway                   OBJECT-TYPE
    SYNTAX      IpAddress 
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Data network Gateway IP address. Regular expression :
        (?-mix:^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$)"
    DEFVAL { '00000000'h }
    ::= { ntcIpObjects 4 }
    
ntcIpAlmGwUnreachable            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."
    ::= { ntcIpAlarm 1 }
    

--
--  Module Conformance
--

ntcIpConfGrpV1Standard           OBJECT-GROUP
    OBJECTS    {
                   ntcIpMgmtInterfaceIpAddress,
                   ntcIpMgmtInterfaceState,
                   ntcIpMgmtInterfaceVirtualIpAddr,
                   ntcMgmtGateway,
                   ntcDataInterfaceIpAddress,
                   ntcDataInterfaceState,
                   ntcDataInterfaceFysIpAddress,
                   ntcDataGateway,
                   ntcIpAlmGwUnreachable
               }
    STATUS      current
    DESCRIPTION
        "Managed objects that constitute version 1 of a system device with standard capabilities."
    ::= { ntcIpConfGroup 1}
    
ntcIpConfCompV1Standard          MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "Compliance statement for Newtec device MIB implementations."
    MODULE  -- this module
    MANDATORY-GROUPS
                  {
                      ntcIpConfGrpV1Standard
                  }
    ::= { ntcIpConfCompliance  1 }
    

END
