blob: b12ca53ddc86ae39d69798cbf2d25d2f1a7b1ccf [file] [log] [blame]
DISMAN-NSLOOKUP-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE,
Unsigned32, mib-2, Integer32
FROM SNMPv2-SMI -- RFC2578
RowStatus
FROM SNMPv2-TC -- RFC2579
MODULE-COMPLIANCE, OBJECT-GROUP
FROM SNMPv2-CONF -- RFC2580
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB -- RFC3411
InetAddressType, InetAddress
FROM INET-ADDRESS-MIB; -- RFC4001
lookupMIB MODULE-IDENTITY
LAST-UPDATED "200606130000Z" -- 13 June 2006
ORGANIZATION "IETF Distributed Management Working Group"
CONTACT-INFO
"Juergen Quittek
NEC Europe Ltd.
Network Laboratories
Kurfuersten-Anlage 36
69115 Heidelberg
Germany
Phone: +49 6221 4342-115
Email: quittek@netlab.nec.de"
DESCRIPTION
"The Lookup MIB (DISMAN-NSLOOKUP-MIB) enables determination
of either the name(s) corresponding to a host address or of
the address(es) associated with a host name at a remote
host.
Copyright (C) The Internet Society (2006). This version of
this MIB module is part of RFC 4560; see the RFC itself for
full legal notices."
-- Revision history
REVISION "200606130000Z" -- 13 June 2006
DESCRIPTION
"Updated version, published as RFC 4560.
- Replaced references to RFC 2575 by RFC 3415
- Replaced references to RFC 2571 by RFC 3411
- Replaced references to RFC 2851 by RFC 4001
- Added value enabled(1) to SYNTAX clause of
lookupCtlOperStatus
- Added lookupMinimumCompliance
- Defined semantics of value 0 for object
lookupPurgeTime
- Added DEFVAL { unknown } to object
lookupCtlTargetAddressType OBJECT-TYPE"
REVISION "200009210000Z" -- 21 September 2000
DESCRIPTION
"Initial version, published as RFC 2925."
::= { mib-2 82 }
-- Top level structure of the MIB
lookupObjects OBJECT IDENTIFIER ::= { lookupMIB 1 }
lookupConformance OBJECT IDENTIFIER ::= { lookupMIB 2 }
-- Simple Object Definitions
lookupMaxConcurrentRequests OBJECT-TYPE
SYNTAX Unsigned32
UNITS "requests"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The maximum number of concurrent active lookup requests
that are allowed within an agent implementation. A value
of 0 for this object implies that there is no limit for
the number of concurrent active requests in effect.
The limit applies only to new requests being activated.
When a new value is set, the agent will continue processing
all the requests already active, even if their number
exceed the limit just imposed."
DEFVAL { 10 }
::= { lookupObjects 1 }
lookupPurgeTime OBJECT-TYPE
SYNTAX Unsigned32 (0..86400)
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The amount of time to wait before automatically
deleting an entry in the lookupCtlTable and any
dependent lookupResultsTable entries
after the lookup operation represented by a
lookupCtlEntry has been completed.
A lookupCtEntry is considered complete
when its lookupCtlOperStatus object has a
value of completed(3).
A value of 0 indicates that automatic deletion
of entries is disabled."
DEFVAL { 900 } -- 15 minutes as default
::= { lookupObjects 2 }
-- Lookup Control Table
lookupCtlTable OBJECT-TYPE
SYNTAX SEQUENCE OF LookupCtlEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Defines the Lookup Control Table for providing
the capability of performing a lookup operation
for a symbolic host name or for a host address
from a remote host."
::= { lookupObjects 3 }
lookupCtlEntry OBJECT-TYPE
SYNTAX LookupCtlEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Defines an entry in the lookupCtlTable. A
lookupCtlEntry is initially indexed by
lookupCtlOwnerIndex, which is a type of SnmpAdminString,
a textual convention that allows for the use of the SNMPv3
View-Based Access Control Model (RFC 3415, VACM)
and that also allows a management application to identify
its entries. The second index element,
lookupCtlOperationName, enables the same
lookupCtlOwnerIndex entity to have multiple outstanding
requests. The value of lookupCtlTargetAddressType
determines which lookup function to perform."
INDEX {
lookupCtlOwnerIndex,
lookupCtlOperationName
}
::= { lookupCtlTable 1 }
LookupCtlEntry ::=
SEQUENCE {
lookupCtlOwnerIndex SnmpAdminString,
lookupCtlOperationName SnmpAdminString,
lookupCtlTargetAddressType InetAddressType,
lookupCtlTargetAddress InetAddress,
lookupCtlOperStatus INTEGER,
lookupCtlTime Unsigned32,
lookupCtlRc Integer32,
lookupCtlRowStatus RowStatus
}
lookupCtlOwnerIndex OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(0..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"To facilitate the provisioning of access control by a
security administrator using the View-Based Access
Control Model (RFC 2575, VACM) for tables in which
multiple users may need to create or
modify entries independently, the initial index is used as
an 'owner index'. Such an initial index has a syntax of
SnmpAdminString and can thus be trivially mapped to a
securityName or groupName defined in VACM, in
accordance with a security policy.
When used in conjunction with such a security policy all
entries in the table belonging to a particular user (or
group) will have the same value for this initial index.
For a given user's entries in a particular table, the
object identifiers for the information in these entries
will have the same subidentifiers (except for the
'column' subidentifier) up to the end of the encoded
owner index. To configure VACM to permit access to this
portion of the table, one would create
vacmViewTreeFamilyTable entries with the value of
vacmViewTreeFamilySubtree including the owner index
portion, and vacmViewTreeFamilyMask 'wildcarding' the
column subidentifier. More elaborate configurations
are possible."
::= { lookupCtlEntry 1 }
lookupCtlOperationName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(0..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The name of a lookup operation. This is locally unique,
within the scope of an lookupCtlOwnerIndex."
::= { lookupCtlEntry 2 }
lookupCtlTargetAddressType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Specifies the type of address for performing a
lookup operation for a symbolic host name or for a host
address from a remote host.
Specification of dns(16) as the value for this object
means that a function such as, for example, getaddrinfo()
or gethostbyname() should be performed to return one or
more numeric addresses. Use of a value of either ipv4(1)
or ipv6(2) means that a functions such as, for example,
getnameinfo() or gethostbyaddr() should be used to return
the symbolic names associated with a host."
DEFVAL { unknown }
::= { lookupCtlEntry 3 }
lookupCtlTargetAddress OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Specifies the address used for a resolver lookup at a
remote host. The corresponding lookupCtlTargetAddressType
objects determines its type, as well as the function
that can be requested.
A value for this object MUST be set prior to
transitioning its corresponding lookupCtlEntry to
active(1) via lookupCtlRowStatus."
::= { lookupCtlEntry 4 }
lookupCtlOperStatus OBJECT-TYPE
SYNTAX INTEGER {
enabled(1), -- operation is active
notStarted(2), -- operation has not started
completed(3) -- operation is done
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Reflects the operational state of an lookupCtlEntry:
enabled(1) - Operation is active.
notStarted(2) - Operation has not been enabled.
completed(3) - Operation has been completed.
An operation is automatically enabled(1) when its
lookupCtlRowStatus object is transitioned to active(1)
status. Until this occurs, lookupCtlOperStatus MUST
report a value of notStarted(2). After the lookup
operation is completed (success or failure), the value
for lookupCtlOperStatus MUST be transitioned to
completed(3)."
::= { lookupCtlEntry 5 }
lookupCtlTime OBJECT-TYPE
SYNTAX Unsigned32
UNITS "milliseconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Reports the number of milliseconds that a lookup
operation required to be completed at a remote host.
Completed means operation failure as well as
success."
::= { lookupCtlEntry 6 }
lookupCtlRc OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The system-specific return code from a lookup
operation. All implementations MUST return a value
of 0 for this object when the remote lookup
operation succeeds. A non-zero value for this
objects indicates failure. It is recommended that
implementations return the error codes that are
generated by the lookup function used."
::= { lookupCtlEntry 7 }
lookupCtlRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object allows entries to be created and deleted
in the lookupCtlTable.
A remote lookup operation is started when an
entry in this table is created via an SNMP set
request and the entry is activated. This
occurs by setting the value of this object
to CreateAndGo(4) during row creation or
by setting this object to active(1) after
the row is created.
A value MUST be specified for lookupCtlTargetAddress
prior to the acceptance of a transition to active(1) state.
A remote lookup operation starts when its entry
first becomes active(1). Transitions in and
out of active(1) state have no effect on the
operational behavior of a remote lookup
operation, with the exception that deletion of
an entry in this table by setting its RowStatus
object to destroy(6) will stop an active
remote lookup operation.
The operational state of a remote lookup operation
can be determined by examination of its
lookupCtlOperStatus object."
REFERENCE
"See definition of RowStatus in RFC 2579,
'Textual Conventions for SMIv2.'"
::= { lookupCtlEntry 8 }
-- Lookup Results Table
lookupResultsTable OBJECT-TYPE
SYNTAX SEQUENCE OF LookupResultsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Defines the Lookup Results Table for providing
the capability of determining the results of a
operation at a remote host.
One or more entries are added to the
lookupResultsTable when a lookup operation,
as reflected by an lookupCtlEntry, is completed
successfully. All entries related to a
successful lookup operation MUST be added
to the lookupResultsTable at the same time
that the associating lookupCtlOperStatus
object is transitioned to completed(2).
The number of entries added depends on the
results determined for a particular lookup
operation. All entries associated with an
lookupCtlEntry are removed when the
lookupCtlEntry is deleted.
A remote host can be multi-homed and have more than one IP
address associated with it (returned by lookup function),
or it can have more than one symbolic name (returned
by lookup function).
A function such as, for example, getnameinfo() or
gethostbyaddr() is called with a host address as its
parameter and is used primarily to determine a symbolic
name to associate with the host address. Entries in the
lookupResultsTable MUST be made for each host name
returned. If the function identifies an 'official host
name,' then this symbolic name MUST be assigned a
lookupResultsIndex of 1.
A function such as, for example, getaddrinfo() or
gethostbyname() is called with a symbolic host name and is
used primarily to retrieve a host address. The entries
MUST be stored in the order that they are retrieved from
the lookup function. lookupResultsIndex 1 MUST be
assigned to the first entry."
::= { lookupObjects 4 }
lookupResultsEntry OBJECT-TYPE
SYNTAX LookupResultsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Defines an entry in the lookupResultsTable. The
first two index elements identify the
lookupCtlEntry that a lookupResultsEntry belongs
to. The third index element selects a single
lookup operation result."
INDEX {
lookupCtlOwnerIndex,
lookupCtlOperationName,
lookupResultsIndex
}
::= { lookupResultsTable 1 }
LookupResultsEntry ::=
SEQUENCE {
lookupResultsIndex Unsigned32,
lookupResultsAddressType InetAddressType,
lookupResultsAddress InetAddress
}
lookupResultsIndex OBJECT-TYPE
SYNTAX Unsigned32 (1..'ffffffff'h)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Entries in the lookupResultsTable are created when
the result of a lookup operation is determined.
Entries MUST be stored in the lookupResultsTable in
the order that they are retrieved. Values assigned
to lookupResultsIndex MUST start at 1 and increase
consecutively."
::= { lookupResultsEntry 1 }
lookupResultsAddressType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates the type of result of a remote lookup
operation. A value of unknown(0) implies either that
the operation hasn't been started or that
it has failed."
::= { lookupResultsEntry 2 }
lookupResultsAddress OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Reflects a result for a remote lookup operation
as per the value of lookupResultsAddressType.
The address type (InetAddressType) that relates to
this object is specified by the corresponding value
of lookupResultsAddress."
::= { lookupResultsEntry 3 }
-- Conformance information
-- Compliance statements
lookupCompliances OBJECT IDENTIFIER ::= { lookupConformance 1 }
lookupGroups OBJECT IDENTIFIER ::= { lookupConformance 2 }
-- Compliance statements
lookupCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for SNMP entities that
fully implement the DISMAN-NSLOOKUP-MIB."
MODULE -- this module
MANDATORY-GROUPS { lookupGroup }
OBJECT lookupMaxConcurrentRequests
MIN-ACCESS read-only
DESCRIPTION
"The agent is not required to support set
operations to this object."
OBJECT lookupPurgeTime
MIN-ACCESS read-only
DESCRIPTION
"The agent is not required to support a set
operation to this object."
::= { lookupCompliances 1 }
lookupMinimumCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The minimum compliance statement for SNMP entities
that implement the minimal subset of the
DISMAN-NSLOOKUP-MIB. Implementors might choose this
subset for small devices with limited resources."
MODULE -- this module
MANDATORY-GROUPS { lookupGroup }
OBJECT lookupMaxConcurrentRequests
MIN-ACCESS read-only
DESCRIPTION
"The agent is not required to support set
operations to this object."
OBJECT lookupPurgeTime
MIN-ACCESS read-only
DESCRIPTION
"The agent is not required to support a set
operation to this object."
OBJECT lookupCtlRowStatus
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required. If write access is
not supported, then at least one entry in the
lookupCtlTable MUST be established already when the SNMP
agent starts offering access to the NSLOOKUP-MIB module.
If, in such a case, only a single entry is offered, then
it is RECOMMENDED that this entry use strings with a
length of 0 for both of its two index objects."
::= { lookupCompliances 2 }
-- MIB groupings
lookupGroup OBJECT-GROUP
OBJECTS {
lookupMaxConcurrentRequests,
lookupPurgeTime,
lookupCtlOperStatus,
lookupCtlTargetAddressType,
lookupCtlTargetAddress,
lookupCtlTime,
lookupCtlRc,
lookupCtlRowStatus,
lookupResultsAddressType,
lookupResultsAddress
}
STATUS current
DESCRIPTION
"The group of objects that constitute the remote
Lookup operation."
::= { lookupGroups 1 }
END