AD | Application | AWS | Azure | Cloud | Database | Enterprise | Environmental | Event Log | File System | Infra | IoT | IT Service | Linux | Network/System | Performance | Protocol | SaaS | Security | Service Level | SNMP | Storage | VMware | VoIP | Web | Wireless

Crumbtrail

MonitorTools.com » Technical documentation » SNMP » MIB » RFC » MIP-MIB

MIP-MIB device MIB details by RFC

MIP-MIB file content

The SNMP protocol is used to for conveying information and commands between agents and managing entities. SNMP uses the User Datagram Protocol (UDP) as the transport protocol for passing data between managers and agents. The reasons for using UDP for SNMP are, firstly it has low overheads in comparison to TCP, which uses a 3-way hand shake for connection. Secondly, in congested networks, SNMP over TCP is a bad idea because TCP in order to maintain reliability will flood the network with retransmissions.

Management information (MIB) is represented as a collection of managed objects. These objects together form a virtual information base called MIB. An agent may implement many MIBs, but all agents must implement a particular MIB called MIB-II [16]. This standard defines variables for things such as interface statistics (interface speeds, MTU, octets sent, octets received, etc.) as well as various other things pertaining to the system itself (system location, system contact, etc.). The main goal of MIB-II is to provide general TCP/IP management information.

Use ActiveXperts Network Monitor 2024 to import vendor-specific MIB files, inclusing MIP-MIB.


Vendor: RFC
Mib: MIP-MIB  [download]  [view objects]
Tool: ActiveXperts Network Monitor 2024 [download]    (ships with advanced SNMP/MIB tools)
-- WinAgents MIB Extraction Wizard
-- Extracted from rfc2006.txt 16.03.2005 20:21:44

MIP-MIB DEFINITIONS ::= BEGIN

IMPORTS
    Counter32, Gauge32, Integer32, IpAddress, experimental,
    MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE
                                    FROM SNMPv2-SMI
    RowStatus, TruthValue, TimeStamp,
    TEXTUAL-CONVENTION
                                    FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP
                                    FROM SNMPv2-CONF;

mipMIB    MODULE-IDENTITY
    LAST-UPDATED    "9606040000Z"
    ORGANIZATION    "IETF Mobile IP Working Group"
    CONTACT-INFO
            "       David Cong
            Postal: Motorola
                    1301 E. Algonquin Rd.
                    Schaumburg, IL 60196
            Phone:  +1-847-576-1357
            Email:  cong@comm.mot.com"
    DESCRIPTION
            "The MIB Module for the Mobile IP."
    ::= { mib-2 44 }

mipMIBObjects    OBJECT IDENTIFIER ::= { mipMIB 1 }

-- Groups under mipMIBObjects

mipSystem    OBJECT IDENTIFIER ::= { mipMIBObjects 1 }
mipSecurity    OBJECT IDENTIFIER ::= { mipMIBObjects 2 }
mipMN    OBJECT IDENTIFIER ::= { mipMIBObjects 3 }
mipMA    OBJECT IDENTIFIER ::= { mipMIBObjects 4 }
mipFA    OBJECT IDENTIFIER ::= { mipMIBObjects 5 }
mipHA    OBJECT IDENTIFIER ::= { mipMIBObjects 6 }

mnSystem    OBJECT IDENTIFIER ::= { mipMN 1 }
mnDiscovery    OBJECT IDENTIFIER ::= { mipMN 2 }
mnRegistration    OBJECT IDENTIFIER ::= { mipMN 3 }

maAdvertisement    OBJECT IDENTIFIER ::= { mipMA 2 }

faSystem   OBJECT IDENTIFIER ::= { mipFA 1 }
faAdvertisement   OBJECT IDENTIFIER ::= { mipFA 2 }
faRegistration    OBJECT IDENTIFIER ::= { mipFA 3 }

haRegistration    OBJECT IDENTIFIER ::= { mipHA 3 }

-- Textual convention

RegistrationFlags  ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
            "This data type is used to define the registration
            flags for Mobile IP registration extension:
               vjCompression
                   -- Request to use VJ compression
               gre
                   -- Request to use GRE
               minEnc
                   -- Request to use minimal encapsulation
               decapsulationByMN
                   -- Decapsulation by mobile node
               broadcastDatagram
                   -- Request to receive broadcasts
               simultaneoursBindings
                   -- Request to retain prior binding(s)."
    SYNTAX      BITS {
                     vjCompression(0),
                     gre(1),
                     minEnc(2),
                     decapsulationbyMN(3),
                     broadcastDatagram(4),
                     simultaneousBindings(5)
                }

-- mipSystem Group

mipEntities OBJECT-TYPE
    SYNTAX      BITS {
                     mobileNode(0),
                     foreignAgent(1),
                     homeAgent(2)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "This object describes which Mobile IP entities are
            supported by this managed entity. The entity may
            support more than one Mobile IP entities. For example,
            the entity supports both Foreign Agent (FA) and Home
            Agent (HA). Therefore, bit 1 and bit 2 are set to 1
            for this object."
    ::= { mipSystem 1 }

mipEnable OBJECT-TYPE
    SYNTAX      INTEGER { enabled(1), disabled(2) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "Indicates whether the Mobile IP protocol should be
            enabled for the managed entity. If it is disabled, the
            entity should disable both agent discovery and
            registration functions."
    ::= { mipSystem 2 }

mipEncapsulationSupported   OBJECT-TYPE
    SYNTAX      BITS {
                     ipInIp(0),
                     gre(1),
                     minEnc(2),
                     other(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Encapsulation methods supported by the Mobile IP
            entity. The entity may support multiple encapsulation
            methods or none of them:
                ipInIp(0), -- IP Encapsulation within IP
                gre(1),    -- Generic Routing Encapsulation,
                           -- refers to RFC1701
                minEnc(2), -- Minimal Encapsulation within IP."
    ::= { mipSystem 3 }

-- mipSecurity Group

mipSecAssocTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MipSecAssocEntry
    MAX-ACCESS      not-accessible
    STATUS      current
    DESCRIPTION
            "A table containing Mobility Security Associations."
    ::= { mipSecurity 1 }

mipSecAssocEntry OBJECT-TYPE
    SYNTAX      MipSecAssocEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "One particular Mobility Security Association."
    INDEX   { mipSecPeerAddress, mipSecSPI }
    ::= { mipSecAssocTable 1 }

MipSecAssocEntry ::=
    SEQUENCE {
        mipSecPeerAddress IpAddress,
        mipSecSPI Unsigned32,
        mipSecAlgorithmType INTEGER,
        mipSecAlgorithmMode INTEGER,
        mipSecKey OCTET STRING,
        mipSecReplayMethod INTEGER
    }

mipSecPeerAddress  OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "The IP address of the peer entity with which this
            node shares the mobility security association."
    ::= { mipSecAssocEntry 1 }

mipSecSPI OBJECT-TYPE
    SYNTAX      Unsigned32 (0..4294967295)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "The SPI is the 4-byte opaque index within the
            Mobility Security Association which selects the
            specific security parameters to be used to
            authenticate the peer, i.e. the rest of the variables
            in this MipSecAssocEntry."
    ::= { mipSecAssocEntry 2 }

mipSecAlgorithmType OBJECT-TYPE
    SYNTAX      INTEGER {
                        other(1),
                        md5(2)
                }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "Type of security algorithm."
    ::= { mipSecAssocEntry 3 }

mipSecAlgorithmMode OBJECT-TYPE
    SYNTAX      INTEGER {
                        other(1),
                        prefixSuffix(2)
                }
    MAX-ACCESS  read-create

    STATUS      current
    DESCRIPTION
            "Security mode used by this algorithm."
    ::= { mipSecAssocEntry 4 }

mipSecKey  OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(16))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "The shared secret key for the security
            associations. Reading this object will always return
            zero length value."
    ::= { mipSecAssocEntry 5 }

mipSecReplayMethod OBJECT-TYPE
    SYNTAX      INTEGER {
                         other(1),
                         timestamps(2),
                         nonces(3)
                }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "The replay-protection method supported for this SPI
            within this Mobility Security Association."
    ::= { mipSecAssocEntry 6 }

-- Mobile IP security violation total counter

mipSecTotalViolations OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
           "Total number of security violations in the entity"
       ::= { mipSecurity 2 }

-- Mobile IP security violation table

mipSecViolationTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF MipSecViolationEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A table containing information about security
            violations."
    ::= { mipSecurity 3 }

mipSecViolationEntry  OBJECT-TYPE
    SYNTAX      MipSecViolationEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Information about one particular security violation."
    INDEX   { mipSecViolatorAddress }
    ::= { mipSecViolationTable 1 }

MipSecViolationEntry ::=
    SEQUENCE {
        mipSecViolatorAddress IpAddress,
        mipSecViolationCounter Counter32,
        mipSecRecentViolationSPI Integer32,
        mipSecRecentViolationTime TimeStamp,
        mipSecRecentViolationIDLow Integer32,
        mipSecRecentViolationIDHigh Integer32,
        mipSecRecentViolationReason INTEGER
    }

mipSecViolatorAddress  OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
            "Violator's IP address. The violator is not necessary
            in the mipSecAssocTable."
    ::= { mipSecViolationEntry 1 }

mipSecViolationCounter OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of security violations for this peer."
    ::= { mipSecViolationEntry 2 }

mipSecRecentViolationSPI  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "SPI of the most recent security violation for this
            peer. If the security violation is due to an
            identification mismatch, then this is the SPI from the
            Mobile-Home Authentication Extension.  If the security
            violation is due to an invalid authenticator, then
            this is the SPI from the offending authentication

            extension.  In all other cases, it should be set to
            zero."
    ::= { mipSecViolationEntry 3 }

mipSecRecentViolationTime OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Time of the most recent security violation for this
            peer."
    ::= { mipSecViolationEntry 4 }

mipSecRecentViolationIDLow  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
           "Low-order 32 bits of identification used in request or
            reply of the most recent security violation for this
            peer."
    ::= { mipSecViolationEntry 5 }

mipSecRecentViolationIDHigh  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "High-order 32 bits of identification used in request
            or reply of the most recent security violation for
            this peer."
    ::= { mipSecViolationEntry 6 }

mipSecRecentViolationReason   OBJECT-TYPE
    SYNTAX      INTEGER {
                        noMobilitySecurityAssociation(1),
                        badAuthenticator(2),
                        badIdentifier(3),
                        badSPI(4),
                        missingSecurityExtension(5),
                        other(6)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Reason for the most recent security violation for
            this peer."
    ::= { mipSecViolationEntry 7 }



-- mipMN Group
-- mipSystem Group

mnState OBJECT-TYPE
    SYNTAX      INTEGER {
                        home(1),
                        registered(2),
                        pending(3),
                        isolated(4),
                        unknown(5)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Indicates mobile node's state of Mobile IP:
                 home,
                     -- MN is connected to home network.
                 registered,
                     -- MN has registered on foreign network
                 pending,
                     -- MN has sent registration request and is
                        waiting for the reply
                 isolated,
                     -- MN is isolated from network
                 unknown
                     -- MN can not determine its state."
    ::= { mnSystem 1 }

mnHomeAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "An IP address that is assigned for an extended period
            of time to the mobile node. It remains unchanged
            regardless of the mobile node's current point of
            attachment."
    ::= { mnSystem 2 }

-- Mobile node's home agent list

mnHATable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MnHAEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION

            "A table containing all of the mobile node's potential
            home agents."
    ::= { mnSystem 3 }

mnHAEntry OBJECT-TYPE
    SYNTAX MnHAEntry
    MAX-ACCESS not-accessible
    STATUS      current
    DESCRIPTION
            "Information for a particular Home Agent."
    INDEX { mnHAAddress }
    ::= { mnHATable 1 }

MnHAEntry ::= SEQUENCE {
    mnHAAddress IpAddress,
    mnCurrentHA TruthValue,
    mnHAStatus  RowStatus
}

mnHAAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "IP address of mobile node's Home Agent."
    ::= { mnHAEntry 1 }

mnCurrentHA OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Whether this home agent is the current home agent for
            the mobile node. If it is true, the mobile node is
            registered with that home agent."
    ::= { mnHAEntry 2 }

mnHAStatus  OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "The row status for this home agent entry. If the
            status is set to 'createAndGo' or 'active', then the
            mobile node can use mnHAAddress as a valid candidate
            for a home agent. If the status is set to 'destroy',
            then the mobile node should delete this row, and
            deregister from that home agent."

    ::= { mnHAEntry 3 }

mnFATable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MnFAEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A table containing all foreign agents that the mobile
            node knows about and their corresponding COA (care-of
            address). This COA is an address of a foreign agent
            with which the mobile node is registered. The table is
            updated when advertisements are received by the mobile
            node. If an advertisement expires, its entry(s) should
            be deleted from the table. One foreign agent can
            provide more than one COA in its advertisements."
    ::= { mnDiscovery 1 }

mnFAEntry OBJECT-TYPE
    SYNTAX      MnFAEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "One pair of foreign agent IP address and COA for that
            foreign agent."
    INDEX { mnFAAddress, mnCOA }
    ::= { mnFATable 1 }

MnFAEntry ::= SEQUENCE {
    mnFAAddress IpAddress,
    mnCOA IpAddress
}

mnFAAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Foreign agent's IP address."
    ::= { mnFAEntry 1 }

mnCOA   OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "A care-of address being offered by this foreign agent
            or a co-located care-of address which the mobile node
            has associated with one of its own network

            interfaces."
    ::= { mnFAEntry 2 }

-- Mobile node could store multiple agent advertisements, however,
-- only the most recently received agent advertisement information
-- is required to be made available to the manager station.

mnRecentAdvReceived OBJECT IDENTIFIER ::= { mnDiscovery 2 }

mnAdvSourceAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The source IP address of the most recently received
            Agent Advertisement. This address could be the address
            of a home agent or a foreign agent."
    ::= { mnRecentAdvReceived 1 }

mnAdvSequence OBJECT-TYPE
    SYNTAX      INTEGER (0..65535)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The sequence number of the most recently received
            advertisement. The sequence number ranges from 0 to
            0xffff. After the sequence number attains the value
            0xffff, it will roll over to 256."
    ::= { mnRecentAdvReceived 2 }

mnAdvFlags OBJECT-TYPE
    SYNTAX      BITS {
                     vjCompression(0),
                     gre(1),
                     minEnc(2),
                     foreignAgent(3),
                     homeAgent(4),
                     busy(5),
                     regRequired(6)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The flags are contained in the 7th byte in the
            extension of the most recently received mobility agent
            advertisement:
                vjCompression
                    -- Agent supports Van Jacobson compression

                gre
                    -- Agent offers Generice Routing Encapsulation
                minEnc,
                    -- Agent offers Minimal Encapsulation
                foreignAgent,
                    -- Agent is a Foreign Agent
                homeAgent,
                    -- Agent is a Home Agent
                busy,
                    -- Foreign Agent is busy
                regRequired,
                    -- FA registration is required."
    ::= { mnRecentAdvReceived 3 }

mnAdvMaxRegLifetime OBJECT-TYPE
    SYNTAX      INTEGER (0..65535)
    UNITS       "seconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The longest lifetime in seconds that the agent is
            willing to accept in any registration request."
    ::= { mnRecentAdvReceived 4 }

mnAdvMaxAdvLifetime OBJECT-TYPE
    SYNTAX      INTEGER (0..65535)
    UNITS       "seconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The maximum length of time that the Advertisement is
            considered valid in the absence of further
            Advertisements."
    REFERENCE
            "AdvertisementLifeTime in RFC1256."
    ::= { mnRecentAdvReceived 5 }

mnAdvTimeReceived OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The time at which the most recently received
            advertisement was received."
    ::= { mnRecentAdvReceived 6 }

-- Mobile Node Discovery Group Counter


mnSolicitationsSent OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Solicitation sent by the mobile
            node."
    ::= { mnDiscovery 3 }

mnAdvertisementsReceived OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of advertisements received by the mobile
            node."
    ::= { mnDiscovery 4 }

mnAdvsDroppedInvalidExtension OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of advertisements dropped by the mobile
            node due to both poorly formed extensions and
            unrecognized extensions with extension number in the
            range 0-127."
    ::= { mnDiscovery 5 }

mnAdvsIgnoredUnknownExtension OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of unrecognized extensions in the range
            128-255 that were ignored by the mobile node."
    ::= { mnDiscovery 6 }

mnMoveFromHAToFA OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Number of times that the mobile node has decided to
            move from its home network to a foreign network."
    ::= { mnDiscovery 7 }

mnMoveFromFAToFA OBJECT-TYPE

    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Number of times that the mobile node has decided to
            move from one foreign network to another foreign
            network."
    ::= { mnDiscovery 8 }

mnMoveFromFAToHA OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Number of times that the mobile node has decided to
            move from a foreign network to its home network."
    ::= { mnDiscovery 9 }

mnGratuitousARPsSend OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Gratuitous ARPs sent by mobile node
            in order to clear out any stale ARP entries in the ARP
            caches of nodes on the home network."
    ::= { mnDiscovery 10 }

mnAgentRebootsDectected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of agent reboots detected by the mobile
            node through sequence number of the advertisement."
    ::= { mnDiscovery 11 }

-- Mobile Node Registration Group

-- Registration table of mobile node

mnRegistrationTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MnRegistrationEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A table containing information about the mobile
            node's attempted registration(s).  The mobile node

            updates this table based upon Registration Requests
            sent and Registration Replies received in response to
            these requests.  Certain variables within this table
            are also updated if when Registration Requests are
            retransmitted."
    ::= { mnRegistration 1 }

mnRegistrationEntry OBJECT-TYPE
    SYNTAX      MnRegistrationEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Information about one registration attempt."
    INDEX { mnRegAgentAddress, mnRegCOA}
    ::= { mnRegistrationTable 1 }

MnRegistrationEntry ::= SEQUENCE {
    mnRegAgentAddress IpAddress,
    mnRegCOA IpAddress,
    mnRegFlags RegistrationFlags,
    mnRegIDLow Integer32,
    mnRegIDHigh Integer32,
    mnRegTimeRequested Integer32,
    mnRegTimeRemaining  Gauge32,
    mnRegTimeSent    TimeStamp,
    mnRegIsAccepted  TruthValue,
    mnCOAIsLocal     TruthValue
    }

mnRegAgentAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
             "IP address of the agent as used in the destination
             IP address of the Registration Request.  The agent
             may be a home agent or a foreign agent."
    ::= { mnRegistrationEntry 1 }

mnRegCOA OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Care-of address for the registration."
    ::= { mnRegistrationEntry 2 }

mnRegFlags OBJECT-TYPE

    SYNTAX      RegistrationFlags
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Registration flags sent by the mobile node. It is the
            second byte in the Mobile IP Registratation Request
            message."
    ::= { mnRegistrationEntry 3 }

mnRegIDLow OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Low-order 32 bits of the Identification used in that
            registration by the mobile node."
    ::= { mnRegistrationEntry 4 }

mnRegIDHigh OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "High-order 32 bits of the Identification used in that
            registration by the mobile node."
    ::= { mnRegistrationEntry 5 }

mnRegTimeRequested OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "seconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "If the registration is pending, then this is the
            lifetime requested by the mobile node (in seconds).
            If the registration has been accepted, then this is
            the lifetime actually granted by the home agent in the
            reply."
    ::= { mnRegistrationEntry 6 }

mnRegTimeRemaining OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "seconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of seconds remaining until this
            registration expires.  It has the same initial value

            as mnRegTimeRequested and is only valid if
            mnRegIsAccepted is TRUE."
    ::= { mnRegistrationEntry 7 }

mnRegTimeSent OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The time when the last (re-)transmission occured."
    ::= { mnRegistrationEntry 8 }

mnRegIsAccepted OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "true(1) if the mobile node has received a
            Registration Reply indicating that service has been
            accepted; false(2) otherwise.  false(2) implies that
            the registration is still pending."
    ::= { mnRegistrationEntry 9 }

mnCOAIsLocal OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Whether the COA is local to (dynamically acquired by)
            the mobile node or not.  If it is false(2), the COA is
            an address of the foreign agent."
    ::= { mnRegistrationEntry 10 }

-- Mobile Node Registration Group Counters

mnRegRequestsSent OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of registration requests sent by the
            mobile node. This does not include deregistrations
            (those with Lifetime equal to zero)."
    ::= { mnRegistration 2 }

mnDeRegRequestsSent OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only

    STATUS      current
    DESCRIPTION
            "Total number of deregistration requests sent by the
            mobile node (those with Lifetime equal to zero)."
    ::= { mnRegistration 3 }

mnRegRepliesRecieved OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of registration replies received by the
            mobile node in which the Lifetime is greater than
            zero."
    ::= { mnRegistration 4 }

mnDeRegRepliesRecieved OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of (de)registration replies received by
            the mobile node in which the Lifetime is equal to
            zero."
    ::= { mnRegistration 5 }

mnRepliesInvalidHomeAddress OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of replies with invalid home address for
            the mobile node."
    ::= { mnRegistration 6 }

mnRepliesUnknownHA OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of replies with unknown home agents
            (not in home agent table)."
    ::= { mnRegistration 7 }

mnRepliesUnknownFA OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current

    DESCRIPTION
            "Total number of replies with unknown foreign agents if
            replies relayed through foreign agent."
    ::= { mnRegistration 8 }

mnRepliesInvalidID OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of replies with invalid Identification
            fields."
    ::= { mnRegistration 9 }

mnRepliesDroppedInvalidExtension OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Replies dropped by the
            mobile node due to both poorly formed extensions and
            unrecognized extensions with extension number in the
            range 0-127."
    ::= { mnRegistration 10 }

mnRepliesIgnoredUnknownExtension OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Replies that contained
            one or more unrecognized extensions in the range
            128-255 that were ignored by the mobile node."
    ::= { mnRegistration 11 }

mnRepliesHAAuthenticationFailure OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of replies without a valid Home Agent to
            Mobile Node authenticator."
    ::= { mnRegistration 12 }

mnRepliesFAAuthenticationFailure OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current

    DESCRIPTION
            "Total number of replies without a valid Foreign Agent
            to Mobile Node authenticator."
    ::= { mnRegistration 13 }

mnRegRequestsAccepted OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of registration requests accepted by the
            mobile node's home agent (Code 0 and Code 1)."
    ::= { mnRegistration 14 }

mnRegRequestsDeniedByHA OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of registration requests denied by
            mobile node's home agent (Sum of Code 128 through
            Code 191)."
    ::= { mnRegistration 15 }

mnRegRequestsDeniedByFA OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of registration requests denied by the
            foreign agent (Sum of Codes 64 through Code 127)."
    ::= { mnRegistration 16 }

mnRegRequestsDeniedByHADueToID OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Request denied by home
            agent due to identification mismatch."
    ::= { mnRegistration 17 }

mnRegRequestsWithDirectedBroadcast OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests sent by mobile

            node with a directed broadcast address in the home
            agent field."
    ::= { mnRegistration 18 }

-- MA Advertisement Group

-- Mobility agent advertisement configuration table

maAdvConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MaAdvConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A table containing configurable advertisement
            parameters for all advertisement interfaces in
            the mobility agent."
    ::= { maAdvertisement 1 }

maAdvConfigEntry OBJECT-TYPE
    SYNTAX      MaAdvConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Advertisement parameters for one advertisement
            interface."
    INDEX   { maInterfaceAddress }
    ::= { maAdvConfigTable 1 }

MaAdvConfigEntry    ::= SEQUENCE {
      maInterfaceAddress IpAddress,
      maAdvMaxRegLifetime Integer32,
      maAdvPrefixLengthInclusion TruthValue,
      maAdvAddress IpAddress,
      maAdvMaxInterval Integer32,
      maAdvMinInterval Integer32,
      maAdvMaxAdvLifetime Integer32,
      maAdvResponseSolicitationOnly TruthValue,
      maAdvStatus RowStatus
    }

maInterfaceAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "IP address for advertisement interface."
    ::= { maAdvConfigEntry 1 }


maAdvMaxRegLifetime OBJECT-TYPE
    SYNTAX      Integer32 (0..65535)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "The longest lifetime in seconds that mobility agent
            is willing to accept in any Registration Request."
    ::= { maAdvConfigEntry 2 }

maAdvPrefixLengthInclusion OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "Whether the advertisement should include the Prefix-
            Lengths Extension. If it is true, all advertisements
            sent over this interface should include the
            Prefix-Lengths Extension."
    ::= { maAdvConfigEntry 3 }

maAdvAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "The IP destination address to be used for
            advertisements sent from the interface. The only
            permissible values are the all-systems multicast
            address (224.0.0.1) or the limited-broadcast address
            (255.255.255.255)."
    REFERENCE
            "AdvertisementAddress in RFC1256."
    ::= { maAdvConfigEntry 4 }

maAdvMaxInterval OBJECT-TYPE
    SYNTAX      Integer32 (4..1800)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "The maximum time in seconds between successive
            transmissions of Agent Advertisements from this
            interface."
    REFERENCE
            "MaxAdvertisementInterval in RFC1256."
    ::= { maAdvConfigEntry 5 }


maAdvMinInterval OBJECT-TYPE
    SYNTAX      Integer32 (3..1800)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "The minimum time in seconds between successive
            transmissions of Agent Advertisements from this
            interface."
    REFERENCE
            "MinAdvertisementInterval in RFC1256."
    ::= { maAdvConfigEntry 6 }

maAdvMaxAdvLifetime OBJECT-TYPE
    SYNTAX      Integer32 (4..9000)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "The time (in seconds) to be placed in the Lifetime
            field of the RFC 1256-portion of the Agent
            Advertisements sent over this interface."
    REFERENCE
            "AdvertisementLifetime in RFC1256."
    ::= { maAdvConfigEntry 7 }

maAdvResponseSolicitationOnly OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "The flag indicates whether the advertisement from
            that interface should be sent only in response to an
            Agent Solicitation message."
    DEFVAL      { false }
    ::= { maAdvConfigEntry 8 }

maAdvStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "The row status for the agent advertisement table. If
            this column status is 'active', the manager should not
            change any column in the row."
    ::= { maAdvConfigEntry 9 }

-- MA Advertisement Group Counters

maAdvertisementsSent OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of advertisements sent by the mobility
            agent."
    ::= { maAdvertisement 2 }

maAdvsSentForSolicitation OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of advertisements sent by mobility agent
            in response to mobile node solicitations."
    ::= { maAdvertisement 3 }

maSolicitationsReceived OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of solicitations received by the
            mobility agent."
    ::= { maAdvertisement 4 }

-- Foreign Agent Group

-- Foreign Agent System Group

faCOATable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FaCOAEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A table containing all of the care-of addresses
            (COAs) supported by the foreign agent. New entries can
            be added to the table. The order of entries in the
            faCOATAble is also the order in which the COAs are
            listed in the Agent Advertisement."
       ::= { faSystem 1 }

faCOAEntry OBJECT-TYPE
    SYNTAX      FaCOAEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION

            "Entry of COA"
    INDEX { faSupportedCOA }
    ::= { faCOATable 1 }

FaCOAEntry     ::=
    SEQUENCE {
             faSupportedCOA IpAddress,
             faCOAStatus    RowStatus
    }

faSupportedCOA OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Care-of-address supported by this foreign agent."
    ::= { faCOAEntry 1 }

faCOAStatus  OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
            "The row status for COA entry."
    ::= { faCOAEntry 2 }

-- Foreign Agent Advertisement Group
-- FA needs to implement MA Advertisement Group plus that group

faIsBusy OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Whether or not the foreign agent is too busy to
            accept additional registrations. If true(1), the agent
            is busy and any Agent advertisements sent from this
            agent should have the 'B' bit set to 1."
    ::= { faAdvertisement 1 }

faRegistrationRequired OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "Whether or not this foreign agent requires
            registration even from those mobile nodes that have
            acquired their own, colocated care-of address.  If

            true(1), registration is required and any Agent
            Advertisements sent from this agent should have the
            'R' bit set to 1."
    ::= { faAdvertisement 2 }

-- Foreign Agent Registration Group

-- Foreign Agent Visitors List

faVisitorTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FaVisitorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A table containing the foreign agent's visitor list.
            The foreign agent updates this table in response to
            registration events from mobile nodes."
    ::= { faRegistration 1 }

faVisitorEntry OBJECT-TYPE
    SYNTAX      FaVisitorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Information for one visitor."
    INDEX   { faVisitorIPAddress }
    ::= { faVisitorTable 1 }

FaVisitorEntry     ::= SEQUENCE {
    faVisitorIPAddress IpAddress,
    faVisitorHomeAddress IpAddress,
    faVisitorHomeAgentAddress IpAddress,
    faVisitorTimeGranted Integer32,
    faVisitorTimeRemaining Gauge32,
    faVisitorRegFlags RegistrationFlags,
    faVisitorRegIDLow Integer32,
    faVisitorRegIDHigh Integer32,
    faVisitorRegIsAccepted TruthValue
    }

faVisitorIPAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Source IP address of visitor's Registration Request."
    ::= { faVisitorEntry 1 }


faVisitorHomeAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Home (IP) address of visiting mobile node."
    ::= { faVisitorEntry 2 }

faVisitorHomeAgentAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Home agent IP address for that visiting mobile node."
    ::= { faVisitorEntry 3 }

faVisitorTimeGranted OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "seconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The lifetime in seconds granted to the mobile node
            for this registration.  Only valid if
            faVisitorRegIsAccepted is true(1)."
    ::= { faVisitorEntry 4 }

faVisitorTimeRemaining OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "seconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of seconds remaining until the
            registration is expired. It has the same initial value
            as faVisitorTimeGranted, and is counted down by the
            foreign agent."
    ::= { faVisitorEntry 5 }

faVisitorRegFlags OBJECT-TYPE
    SYNTAX      RegistrationFlags
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Registration flags sent by mobile node."
    ::= { faVisitorEntry 6 }

faVisitorRegIDLow OBJECT-TYPE

    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Low 32 bits of Identification used in that
            registration by the mobile node."
    ::= { faVisitorEntry 7 }

faVisitorRegIDHigh OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "High 32 bits of Identification used in that
            registration by the mobile node."
    ::= { faVisitorEntry 8 }

faVisitorRegIsAccepted OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Whether the registration has been accepted or not. If
            it is false(2), this registration is still pending for
            reply."
    ::= { faVisitorEntry 9 }

-- Foreign Agent Registration Group Counters

faRegRequestsReceived OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of valid Registration Requests
            received."
    ::= { faRegistration 2 }

faRegRequestsRelayed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests relayed to home
            agent by foreign agent."
    ::= { faRegistration 3 }

faReasonUnspecified OBJECT-TYPE

    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by
            foreign agent -- reason unspecified (Code 64)."
    ::= { faRegistration 4 }

faAdmProhibited OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by
            foreign agent -- administratively prohibited (Code
            65)."
    ::= { faRegistration 5 }

faInsufficientResource OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by
            foreign agent -- insufficient resources (Code 66)."
    ::= { faRegistration 6 }

faMNAuthenticationFailure OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by
            foreign agent -- mobile node failed authentication
            (Code 67)."
    ::= { faRegistration 7 }

faRegLifetimeTooLong OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by
            foreign agent -- requested lifetime too long (Code
            69)."
    ::= { faRegistration 8 }

faPoorlyFormedRequests OBJECT-TYPE

    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by
            foreign agent -- poorly formed request (Code 70)."
    ::= { faRegistration 9 }

faEncapsulationUnavailable OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by
            foreign agent -- requested encapsulation unavailable
            (Code 72)."
    ::= { faRegistration 10 }

faVJCompressionUnavailable OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by
            foreign agent -- requested Van Jacobson header
            compression unavailable (Code 73)."
    ::= { faRegistration 11 }

faHAUnreachable OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by
            foreign agent -- home agent unreachable (Codes
            80-95)."
    ::= { faRegistration 12 }

faRegRepliesRecieved OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of well-formed Registration Replies
            received by foreign agent."
    ::= { faRegistration 13 }

faRegRepliesRelayed OBJECT-TYPE

    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of valid Registration Replies relayed to
            the mobile node by foreign agent."
    ::= { faRegistration 14 }

faHAAuthenticationFailure OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Replies denied by
            foreign agent -- home agent failed authentication
            (Code 68)."
    ::= { faRegistration 15 }

faPoorlyFormedReplies OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Replies denied by
            foreign agent -- poorly formed reply (Code 71)."
    ::= { faRegistration 16 }

-- Home Agent Group

-- Home Agent Registration Group

-- Home agent mobility binding list

haMobilityBindingTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF HaMobilityBindingEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A table containing the home agent's mobility binding
            list.  The home agent updates this table in response
            to registration events from mobile nodes."
    ::= { haRegistration 1 }

haMobilityBindingEntry OBJECT-TYPE
    SYNTAX      HaMobilityBindingEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION

            "An entry on the mobility binding list."
    INDEX   { haMobilityBindingMN, haMobilityBindingCOA }
    ::= { haMobilityBindingTable 1 }

HaMobilityBindingEntry ::= SEQUENCE {
     haMobilityBindingMN    IpAddress,
     haMobilityBindingCOA   IpAddress,
     haMobilityBindingSourceAddress    IpAddress,
     haMobilityBindingRegFlags    RegistrationFlags,
     haMobilityBindingRegIDLow Integer32,
     haMobilityBindingRegIDHigh Integer32,
     haMobilityBindingTimeGranted Integer32,
     haMobilityBindingTimeRemaining Gauge32
     }

haMobilityBindingMN    OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Mobile node's home (IP) address."
    ::= { haMobilityBindingEntry 1 }

haMobilityBindingCOA   OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Mobile node's care-of-address. One mobile node can
            have multiple bindings with different
            care-of-addresses."
    ::= { haMobilityBindingEntry 2 }

haMobilityBindingSourceAddress    OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "IP source address of the Registration Request as
            received by the home agent.  Will be either a mobile
            node's co-located care-of address or an address of the
            foreign agent."
    ::= { haMobilityBindingEntry 3 }

haMobilityBindingRegFlags OBJECT-TYPE
    SYNTAX      RegistrationFlags
    MAX-ACCESS  read-only
    STATUS      current

    DESCRIPTION
            "Registration flags sent by mobile node."
    ::= { haMobilityBindingEntry 4 }

haMobilityBindingRegIDLow OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Low 32 bits of Identification used in that binding by
            the mobile node."
    ::= { haMobilityBindingEntry 5 }

haMobilityBindingRegIDHigh OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
           "High 32 bits of Identification used in that binding by
            the mobile node."
    ::= { haMobilityBindingEntry 6 }

haMobilityBindingTimeGranted OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "seconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The lifetime in seconds granted to the mobile node
            for this registration."
    ::= { haMobilityBindingEntry 7 }

haMobilityBindingTimeRemaining OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "seconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of seconds remaining until the
            registration is expired. It has the same initial value
            as haMobilityBindingTimeGranted, and is counted down
            by the home agent."
    ::= { haMobilityBindingEntry 8 }

-- Home Agent Registration Group Counters

-- Home agent registration Counters per node


haCounterTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HaCounterEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A table containing registration statistics for all
            mobile nodes authorized to use this home agent."
    ::= { haRegistration 2 }

haCounterEntry  OBJECT-TYPE
    SYNTAX      HaCounterEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Registration statistics for one mobile node."
    INDEX   { haMobilityBindingMN }
    ::= { haCounterTable 1 }

HaCounterEntry      ::= SEQUENCE {
    haServiceRequestsAccepted Counter32,
    haServiceRequestsDenied Counter32,
    haOverallServiceTime Gauge32,
    haRecentServiceAcceptedTime TimeStamp,
    haRecentServiceDeniedTime TimeStamp,
    haRecentServiceDeniedCode INTEGER
    }

haServiceRequestsAccepted OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of service requests for the mobile node
            accepted by the home agent (Code 0 + Code 1)."
    ::= { haCounterEntry 2 }

haServiceRequestsDenied   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of service requests for the mobile node
            denied by the home agent (sum of all registrations
            denied with Code 128 through Code 159)."
    ::= { haCounterEntry 3 }

haOverallServiceTime   OBJECT-TYPE
    SYNTAX      Gauge32

    UNITS       "seconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Overall service time (in seconds) that has
            accumulated for the mobile node since the home agent
            last rebooted."
    ::= { haCounterEntry 4 }

haRecentServiceAcceptedTime  OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The time at which the most recent Registration
            Request was accepted by the home agent for this mobile
            node."
    ::= { haCounterEntry 5 }

haRecentServiceDeniedTime  OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The time at which the most recent Registration
            Request was denied by the home agent for this mobile
            node."
    ::= { haCounterEntry 6 }

haRecentServiceDeniedCode  OBJECT-TYPE
    SYNTAX      INTEGER {
                        reasonUnspecified(128),
                        admProhibited(129),
                        insufficientResource(130),
                        mnAuthenticationFailure(131),
                        faAuthenticationFailure(132),
                        idMismatch(133),
                        poorlyFormedRequest(134),
                        tooManyBindings(135),
                        unknownHA(136)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The Code indicating the reason why the most recent
            Registration Request for this mobile node was rejected
            by the home agent."
    ::= { haCounterEntry 7 }

-- Home agent registration Counters for all mobile nodes.

haRegistrationAccepted   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests accepted by
            home agent (Code 0)."
    ::= { haRegistration 3 }

haMultiBindingUnsupported OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests accepted by
            home agent -- simultaneous mobility bindings
            unsupported (Code 1)."
    ::= { haRegistration 4 }

haReasonUnspecified   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by home
            agent -- reason unspecified (Code 128)."
    ::= { haRegistration 5 }

haAdmProhibited   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by home
            agent -- administratively prohibited (Code 129)."
    ::= { haRegistration 6 }

haInsufficientResource  OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by home
            agent -- insufficient resources (Code 130)."
    ::= { haRegistration 7 }


haMNAuthenticationFailure OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by home
            agent -- mobile node failed authentication (Code
            131)."
    ::= { haRegistration 8 }

haFAAuthenticationFailure OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by home
            agent -- foreign agent failed authentication (Code
            132)."
    ::= { haRegistration 9 }

haIDMismatch OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by home
            agent -- Identification mismatch (Code 133)."
    ::= { haRegistration 10 }

haPoorlyFormedRequest OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by home
            agent -- poorly formed request (Code 134)."
    ::= { haRegistration 11 }

haTooManyBindings    OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by home
            agent -- too many simultaneous mobility bindings (Code
            135)."
    ::= { haRegistration 12 }


haUnknownHA   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests denied by home
            agent -- unknown home agent address (Code 136)."
    ::= { haRegistration 13 }

haGratuitiousARPsSent OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of gratuition ARPs sent by the home
            agent on behalf of mobile nodes."
    ::= { haRegistration 14 }

haProxyARPsSent   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of proxy ARPs sent by the home agent on
            behalf of mobile nodes."
    ::= { haRegistration 15 }

haRegRequestsReceived OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests received by
            home agent."
    ::= { haRegistration 16 }

haDeRegRequestsReceived OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Requests received by the
            home agent with a Lifetime of zero (requests to
            deregister)."
    ::= { haRegistration 17 }

haRegRepliesSent  OBJECT-TYPE
    SYNTAX      Counter32

    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Replies sent by the home
            agent."
    ::= { haRegistration 18 }

haDeRegRepliesSent OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total number of Registration Replies sent by the home
            agent in response to requests to deregister."
    ::= { haRegistration 19 }

mipMIBNotificationPrefix    OBJECT IDENTIFIER ::= { mipMIB 2 }

mipMIBNotifications  OBJECT IDENTIFIER ::=
                     { mipMIBNotificationPrefix 0 }

mipAuthFailure NOTIFICATION-TYPE
    OBJECTS   {    mipSecViolatorAddress,
                   mipSecRecentViolationSPI,
                   mipSecRecentViolationIDLow,
                   mipSecRecentViolationIDHigh,
                   mipSecRecentViolationReason
              }

    STATUS    current
    DESCRIPTION
            "The mipAuthFailure indicates that the Mobile IP
            entity has an authentication failure when it validates
            the mobile Registration Request or Reply.
            Implementation of this trap is optional."
    ::= { mipMIBNotifications 1 }


mipMIBConformance OBJECT IDENTIFIER ::= { mipMIB 3 }

mipGroups     OBJECT IDENTIFIER ::= { mipMIBConformance 1 }
mipCompliances    OBJECT IDENTIFIER ::= { mipMIBConformance 2 }

-- compliance statements

mipCompliance    MODULE-COMPLIANCE
    STATUS    current
    DESCRIPTION

            "The compliance statement for SNMPv2 entities which
            implement the Mobile IP MIB."
    MODULE
        MANDATORY-GROUPS { mipSystemGroup }

        GROUP    mipSecAssociationGroup
        DESCRIPTION
            "This group is mandatory for Mobile IP entities (MN,
            FA, and HA) which support security associations.
            Mobile Nodes and Home Agents must implement this
            group. Foreign Agents must implement this group if
            they maintain any security associations."

        GROUP    mipSecViolationGroup
        DESCRIPTION
            "This group is mandatory for Mobile IP entities (MN,
            FA, and HA) that can log security violations."

        GROUP     mnSystemGroup
        DESCRIPTION
            "This group is mandatory for mobile node."

        GROUP     mnDiscoveryGroup
        DESCRIPTION
            "This group is mandatory for mobile nodes which
            implement the Agent Discovery function."

        GROUP     mnRegistrationGroup
        DESCRIPTION
            "This group is mandatory for mobile nodes."

        GROUP    maAdvertisementGroup
        DESCRIPTION
            "This group is mandatory for the mobility agents (HA
            and FA) since they must implement Agent
            Advertisement."

        GROUP     faSystemGroup
        DESCRIPTION
            "This group is mandatory for foreign agents."

        GROUP     faAdvertisementGroup
        DESCRIPTION
            "This group is mandatory for foreign agents."

        GROUP     faRegistrationGroup
        DESCRIPTION
            "This group is mandatory for foreign agents."


        GROUP    haRegistrationGroup
        DESCRIPTION
            "This group is mandatory for home agents."

        GROUP    haRegNodeCountersGroup
        DESCRIPTION
            "This group is mandatory for home agents which log
            registration counters for each individual mobile
            node."

        GROUP    mipSecNotificationsGroup
        DESCRIPTION
            "This group is mandatory for Mobile IP entities (MN,
            FA, and HA) that can report the security violations."

   ::= { mipCompliances 1 }

-- Units of conformance

mipSystemGroup     OBJECT-GROUP
    OBJECTS    { mipEntities, mipEnable, mipEncapsulationSupported }
    STATUS     current
    DESCRIPTION
            "A collection of objects providing the basic Mobile IP
            entity's management information."
    ::= { mipGroups 1 }

mipSecAssociationGroup OBJECT-GROUP
    OBJECTS   { mipSecAlgorithmType, mipSecAlgorithmMode,
                mipSecKey, mipSecReplayMethod }
    STATUS    current
    DESCRIPTION
            "A collection of objects providing the management
            information for security associations of Mobile IP
            entities."
    ::= { mipGroups 2 }

mipSecViolationGroup     OBJECT-GROUP
    OBJECTS   { mipSecTotalViolations,
                mipSecViolationCounter, mipSecRecentViolationSPI,
                mipSecRecentViolationTime,
                mipSecRecentViolationIDLow,
                mipSecRecentViolationIDHigh,
                mipSecRecentViolationReason }
    STATUS    current
    DESCRIPTION
            "A collection of objects providing the management

            information for security violation logging of Mobile
            IP entities."
    ::= { mipGroups 3 }

mnSystemGroup    OBJECT-GROUP
    OBJECTS   { mnState, mnCurrentHA, mnHomeAddress,
                mnHAStatus }
    STATUS    current
    DESCRIPTION
            "A collection of objects providing the basic
            management information for mobile nodes."
    ::= { mipGroups 4 }

mnDiscoveryGroup    OBJECT-GROUP
    OBJECTS   { mnFAAddress, mnCOA, mnAdvSourceAddress,
                mnAdvSequence, mnAdvFlags, mnAdvMaxRegLifetime,
                mnAdvMaxAdvLifetime, mnAdvTimeReceived,
                mnSolicitationsSent, mnAdvertisementsReceived,
                mnAdvsDroppedInvalidExtension,
                mnAdvsIgnoredUnknownExtension, mnMoveFromHAToFA,
                mnMoveFromFAToFA, mnMoveFromFAToHA,
                mnGratuitousARPsSend, mnAgentRebootsDectected }
    STATUS    current
    DESCRIPTION
            "A collection of objects providing management
            information for the Agent Discovery function within a
            mobile node."
    ::= { mipGroups 5 }

mnRegistrationGroup    OBJECT-GROUP
    OBJECTS   { mnRegAgentAddress, mnRegCOA, mnRegFlags, mnRegIDLow,
                mnRegIDHigh, mnRegTimeRequested, mnRegTimeRemaining,
                mnRegTimeSent, mnRegIsAccepted, mnCOAIsLocal,
                mnRegRequestsSent, mnRegRepliesRecieved,
                mnDeRegRequestsSent, mnDeRegRepliesRecieved,
                mnRepliesInvalidHomeAddress, mnRepliesUnknownHA,
                mnRepliesUnknownFA, mnRepliesInvalidID,
                mnRepliesDroppedInvalidExtension,
                mnRepliesIgnoredUnknownExtension,
                mnRepliesHAAuthenticationFailure,
                mnRepliesFAAuthenticationFailure,
                mnRegRequestsAccepted, mnRegRequestsDeniedByHA,
                mnRegRequestsDeniedByFA,
                mnRegRequestsDeniedByHADueToID,
                mnRegRequestsWithDirectedBroadcast }
    STATUS    current
    DESCRIPTION
            "A collection of objects providing management

            information for the registration function within a
            mobile node."
    ::= { mipGroups 6 }

maAdvertisementGroup    OBJECT-GROUP
    OBJECTS   { maAdvMaxRegLifetime,
                maAdvPrefixLengthInclusion, maAdvAddress,
                maAdvMaxInterval, maAdvMinInterval,
                maAdvMaxAdvLifetime,
                maAdvResponseSolicitationOnly, maAdvStatus,
                maAdvertisementsSent, maAdvsSentForSolicitation,
                maSolicitationsReceived }
    STATUS    current
    DESCRIPTION
            "A collection of objects providing management
            information for the Agent Advertisement function
            within mobility agents."
    ::= { mipGroups 7 }

faSystemGroup       OBJECT-GROUP
    OBJECTS   { faCOAStatus}
    STATUS      current
    DESCRIPTION
            "A collection of objects providing the basic
            management information for foreign agents."
    ::= { mipGroups 8 }

faAdvertisementGroup OBJECT-GROUP
    OBJECTS   { faIsBusy, faRegistrationRequired }
    STATUS      current
    DESCRIPTION
            "A collection of objects providing supplemental
            management information for the Agent Advertisement
            function within a foreign agent."
    ::= { mipGroups 9 }

faRegistrationGroup    OBJECT-GROUP
    OBJECTS   {  faVisitorIPAddress, faVisitorHomeAddress,
                 faVisitorHomeAgentAddress, faVisitorTimeGranted,
                 faVisitorTimeRemaining, faVisitorRegFlags,
                 faVisitorRegIDLow, faVisitorRegIDHigh,
                 faVisitorRegIsAccepted, faRegRequestsReceived,
                 faRegRequestsRelayed, faReasonUnspecified,
                 faAdmProhibited, faInsufficientResource,
                 faMNAuthenticationFailure, faRegLifetimeTooLong,
                 faPoorlyFormedRequests,
                 faEncapsulationUnavailable,
                 faVJCompressionUnavailable, faHAUnreachable,

                 faRegRepliesRecieved, faRegRepliesRelayed,
                 faHAAuthenticationFailure, faPoorlyFormedReplies }
    STATUS    current
    DESCRIPTION
            "A collection of objects providing management
            information for the registration function within a
            foreign agent."
    ::= { mipGroups 10 }

haRegistrationGroup    OBJECT-GROUP
    OBJECTS   { haMobilityBindingMN, haMobilityBindingCOA,
                haMobilityBindingSourceAddress,
                haMobilityBindingRegFlags,
                haMobilityBindingRegIDLow,
                haMobilityBindingRegIDHigh,
                haMobilityBindingTimeGranted,
                haMobilityBindingTimeRemaining,
                haRegistrationAccepted, haMultiBindingUnsupported,
                haReasonUnspecified, haAdmProhibited,
                haInsufficientResource, haMNAuthenticationFailure,
                haFAAuthenticationFailure, haIDMismatch,
                haPoorlyFormedRequest, haTooManyBindings,
                haUnknownHA, haGratuitiousARPsSent,
                haProxyARPsSent, haRegRequestsReceived,
                haDeRegRequestsReceived, haRegRepliesSent,
                haDeRegRepliesSent }
    STATUS    current
    DESCRIPTION
            "A collection of objects providing management
            information for the registration function within a
            home agent."
    ::= { mipGroups 11 }

haRegNodeCountersGroup  OBJECT-GROUP
    OBJECTS   { haServiceRequestsAccepted,
                haServiceRequestsDenied, haOverallServiceTime,
                haRecentServiceAcceptedTime,
                haRecentServiceDeniedTime,
                haRecentServiceDeniedCode }
    STATUS      current
    DESCRIPTION
            "A collection of objects providing management
            information for counters related to the registration
            function within a home agent."
    ::= { mipGroups 12 }

mipSecNotificationsGroup NOTIFICATION-GROUP
    NOTIFICATIONS { mipAuthFailure }

    STATUS      current
    DESCRIPTION
            "The notification related to security violations."
    ::= { mipGroups 13 }

END