1
DISMAN-NSLOOKUP-MIB DEFINITIONS ::= BEGIN
4
MODULE-IDENTITY, OBJECT-TYPE,
5
Unsigned32, mib-2, Integer32
6
FROM SNMPv2-SMI -- RFC2578
8
FROM SNMPv2-TC -- RFC2579
9
MODULE-COMPLIANCE, OBJECT-GROUP
10
FROM SNMPv2-CONF -- RFC2580
12
FROM SNMP-FRAMEWORK-MIB -- RFC3411
13
InetAddressType, InetAddress
14
FROM INET-ADDRESS-MIB; -- RFC4001
16
lookupMIB MODULE-IDENTITY
17
LAST-UPDATED "200606130000Z" -- 13 June 2006
18
ORGANIZATION "IETF Distributed Management Working Group"
30
Phone: +49 6221 4342-115
31
Email: quittek@netlab.nec.de"
33
"The Lookup MIB (DISMAN-NSLOOKUP-MIB) enables determination
34
of either the name(s) corresponding to a host address or of
35
the address(es) associated with a host name at a remote
38
Copyright (C) The Internet Society (2006). This version of
39
this MIB module is part of RFC 4560; see the RFC itself for
44
REVISION "200606130000Z" -- 13 June 2006
46
"Updated version, published as RFC 4560.
47
- Replaced references to RFC 2575 by RFC 3415
48
- Replaced references to RFC 2571 by RFC 3411
49
- Replaced references to RFC 2851 by RFC 4001
50
- Added value enabled(1) to SYNTAX clause of
52
- Added lookupMinimumCompliance
53
- Defined semantics of value 0 for object
55
- Added DEFVAL { unknown } to object
56
lookupCtlTargetAddressType OBJECT-TYPE"
58
REVISION "200009210000Z" -- 21 September 2000
60
"Initial version, published as RFC 2925."
64
-- Top level structure of the MIB
66
lookupObjects OBJECT IDENTIFIER ::= { lookupMIB 1 }
67
lookupConformance OBJECT IDENTIFIER ::= { lookupMIB 2 }
69
-- Simple Object Definitions
71
lookupMaxConcurrentRequests OBJECT-TYPE
79
"The maximum number of concurrent active lookup requests
80
that are allowed within an agent implementation. A value
81
of 0 for this object implies that there is no limit for
82
the number of concurrent active requests in effect.
84
The limit applies only to new requests being activated.
85
When a new value is set, the agent will continue processing
86
all the requests already active, even if their number
87
exceed the limit just imposed."
89
::= { lookupObjects 1 }
91
lookupPurgeTime OBJECT-TYPE
92
SYNTAX Unsigned32 (0..86400)
97
"The amount of time to wait before automatically
98
deleting an entry in the lookupCtlTable and any
99
dependent lookupResultsTable entries
100
after the lookup operation represented by a
101
lookupCtlEntry has been completed.
102
A lookupCtEntry is considered complete
103
when its lookupCtlOperStatus object has a
104
value of completed(3).
106
A value of 0 indicates that automatic deletion
107
of entries is disabled."
108
DEFVAL { 900 } -- 15 minutes as default
109
::= { lookupObjects 2 }
111
-- Lookup Control Table
113
lookupCtlTable OBJECT-TYPE
114
SYNTAX SEQUENCE OF LookupCtlEntry
115
MAX-ACCESS not-accessible
118
"Defines the Lookup Control Table for providing
119
the capability of performing a lookup operation
120
for a symbolic host name or for a host address
124
::= { lookupObjects 3 }
126
lookupCtlEntry OBJECT-TYPE
127
SYNTAX LookupCtlEntry
128
MAX-ACCESS not-accessible
131
"Defines an entry in the lookupCtlTable. A
132
lookupCtlEntry is initially indexed by
133
lookupCtlOwnerIndex, which is a type of SnmpAdminString,
134
a textual convention that allows for the use of the SNMPv3
135
View-Based Access Control Model (RFC 3415, VACM)
136
and that also allows a management application to identify
137
its entries. The second index element,
138
lookupCtlOperationName, enables the same
139
lookupCtlOwnerIndex entity to have multiple outstanding
140
requests. The value of lookupCtlTargetAddressType
141
determines which lookup function to perform."
144
lookupCtlOperationName
146
::= { lookupCtlTable 1 }
150
lookupCtlOwnerIndex SnmpAdminString,
151
lookupCtlOperationName SnmpAdminString,
152
lookupCtlTargetAddressType InetAddressType,
153
lookupCtlTargetAddress InetAddress,
154
lookupCtlOperStatus INTEGER,
155
lookupCtlTime Unsigned32,
156
lookupCtlRc Integer32,
157
lookupCtlRowStatus RowStatus
160
lookupCtlOwnerIndex OBJECT-TYPE
161
SYNTAX SnmpAdminString (SIZE(0..32))
162
MAX-ACCESS not-accessible
165
"To facilitate the provisioning of access control by a
166
security administrator using the View-Based Access
167
Control Model (RFC 2575, VACM) for tables in which
168
multiple users may need to create or
169
modify entries independently, the initial index is used as
170
an 'owner index'. Such an initial index has a syntax of
171
SnmpAdminString and can thus be trivially mapped to a
174
securityName or groupName defined in VACM, in
175
accordance with a security policy.
177
When used in conjunction with such a security policy all
178
entries in the table belonging to a particular user (or
179
group) will have the same value for this initial index.
180
For a given user's entries in a particular table, the
181
object identifiers for the information in these entries
182
will have the same subidentifiers (except for the
183
'column' subidentifier) up to the end of the encoded
184
owner index. To configure VACM to permit access to this
185
portion of the table, one would create
186
vacmViewTreeFamilyTable entries with the value of
187
vacmViewTreeFamilySubtree including the owner index
188
portion, and vacmViewTreeFamilyMask 'wildcarding' the
189
column subidentifier. More elaborate configurations
191
::= { lookupCtlEntry 1 }
193
lookupCtlOperationName OBJECT-TYPE
194
SYNTAX SnmpAdminString (SIZE(0..32))
195
MAX-ACCESS not-accessible
198
"The name of a lookup operation. This is locally unique,
199
within the scope of an lookupCtlOwnerIndex."
200
::= { lookupCtlEntry 2 }
202
lookupCtlTargetAddressType OBJECT-TYPE
203
SYNTAX InetAddressType
204
MAX-ACCESS read-create
208
"Specifies the type of address for performing a
209
lookup operation for a symbolic host name or for a host
210
address from a remote host.
212
Specification of dns(16) as the value for this object
213
means that a function such as, for example, getaddrinfo()
214
or gethostbyname() should be performed to return one or
215
more numeric addresses. Use of a value of either ipv4(1)
216
or ipv6(2) means that a functions such as, for example,
217
getnameinfo() or gethostbyaddr() should be used to return
218
the symbolic names associated with a host."
220
::= { lookupCtlEntry 3 }
224
lookupCtlTargetAddress OBJECT-TYPE
226
MAX-ACCESS read-create
229
"Specifies the address used for a resolver lookup at a
230
remote host. The corresponding lookupCtlTargetAddressType
231
objects determines its type, as well as the function
232
that can be requested.
234
A value for this object MUST be set prior to
235
transitioning its corresponding lookupCtlEntry to
236
active(1) via lookupCtlRowStatus."
237
::= { lookupCtlEntry 4 }
239
lookupCtlOperStatus OBJECT-TYPE
241
enabled(1), -- operation is active
242
notStarted(2), -- operation has not started
243
completed(3) -- operation is done
248
"Reflects the operational state of an lookupCtlEntry:
250
enabled(1) - Operation is active.
251
notStarted(2) - Operation has not been enabled.
252
completed(3) - Operation has been completed.
254
An operation is automatically enabled(1) when its
255
lookupCtlRowStatus object is transitioned to active(1)
256
status. Until this occurs, lookupCtlOperStatus MUST
257
report a value of notStarted(2). After the lookup
258
operation is completed (success or failure), the value
259
for lookupCtlOperStatus MUST be transitioned to
261
::= { lookupCtlEntry 5 }
263
lookupCtlTime OBJECT-TYPE
269
"Reports the number of milliseconds that a lookup
270
operation required to be completed at a remote host.
271
Completed means operation failure as well as
275
::= { lookupCtlEntry 6 }
277
lookupCtlRc OBJECT-TYPE
282
"The system-specific return code from a lookup
283
operation. All implementations MUST return a value
284
of 0 for this object when the remote lookup
285
operation succeeds. A non-zero value for this
286
objects indicates failure. It is recommended that
287
implementations return the error codes that are
288
generated by the lookup function used."
289
::= { lookupCtlEntry 7 }
291
lookupCtlRowStatus OBJECT-TYPE
293
MAX-ACCESS read-create
296
"This object allows entries to be created and deleted
297
in the lookupCtlTable.
299
A remote lookup operation is started when an
300
entry in this table is created via an SNMP set
301
request and the entry is activated. This
302
occurs by setting the value of this object
303
to CreateAndGo(4) during row creation or
304
by setting this object to active(1) after
307
A value MUST be specified for lookupCtlTargetAddress
308
prior to the acceptance of a transition to active(1) state.
309
A remote lookup operation starts when its entry
310
first becomes active(1). Transitions in and
311
out of active(1) state have no effect on the
312
operational behavior of a remote lookup
313
operation, with the exception that deletion of
314
an entry in this table by setting its RowStatus
315
object to destroy(6) will stop an active
316
remote lookup operation.
318
The operational state of a remote lookup operation
319
can be determined by examination of its
320
lookupCtlOperStatus object."
324
"See definition of RowStatus in RFC 2579,
325
'Textual Conventions for SMIv2.'"
326
::= { lookupCtlEntry 8 }
330
lookupResultsTable OBJECT-TYPE
331
SYNTAX SEQUENCE OF LookupResultsEntry
332
MAX-ACCESS not-accessible
335
"Defines the Lookup Results Table for providing
336
the capability of determining the results of a
337
operation at a remote host.
339
One or more entries are added to the
340
lookupResultsTable when a lookup operation,
341
as reflected by an lookupCtlEntry, is completed
342
successfully. All entries related to a
343
successful lookup operation MUST be added
344
to the lookupResultsTable at the same time
345
that the associating lookupCtlOperStatus
346
object is transitioned to completed(2).
348
The number of entries added depends on the
349
results determined for a particular lookup
350
operation. All entries associated with an
351
lookupCtlEntry are removed when the
352
lookupCtlEntry is deleted.
354
A remote host can be multi-homed and have more than one IP
355
address associated with it (returned by lookup function),
356
or it can have more than one symbolic name (returned
359
A function such as, for example, getnameinfo() or
360
gethostbyaddr() is called with a host address as its
361
parameter and is used primarily to determine a symbolic
362
name to associate with the host address. Entries in the
363
lookupResultsTable MUST be made for each host name
364
returned. If the function identifies an 'official host
365
name,' then this symbolic name MUST be assigned a
366
lookupResultsIndex of 1.
368
A function such as, for example, getaddrinfo() or
369
gethostbyname() is called with a symbolic host name and is
370
used primarily to retrieve a host address. The entries
373
MUST be stored in the order that they are retrieved from
374
the lookup function. lookupResultsIndex 1 MUST be
375
assigned to the first entry."
376
::= { lookupObjects 4 }
378
lookupResultsEntry OBJECT-TYPE
379
SYNTAX LookupResultsEntry
380
MAX-ACCESS not-accessible
383
"Defines an entry in the lookupResultsTable. The
384
first two index elements identify the
385
lookupCtlEntry that a lookupResultsEntry belongs
386
to. The third index element selects a single
387
lookup operation result."
390
lookupCtlOperationName,
393
::= { lookupResultsTable 1 }
395
LookupResultsEntry ::=
397
lookupResultsIndex Unsigned32,
398
lookupResultsAddressType InetAddressType,
399
lookupResultsAddress InetAddress
402
lookupResultsIndex OBJECT-TYPE
403
SYNTAX Unsigned32 (1..'ffffffff'h)
404
MAX-ACCESS not-accessible
407
"Entries in the lookupResultsTable are created when
408
the result of a lookup operation is determined.
410
Entries MUST be stored in the lookupResultsTable in
411
the order that they are retrieved. Values assigned
412
to lookupResultsIndex MUST start at 1 and increase
414
::= { lookupResultsEntry 1 }
416
lookupResultsAddressType OBJECT-TYPE
417
SYNTAX InetAddressType
423
"Indicates the type of result of a remote lookup
424
operation. A value of unknown(0) implies either that
425
the operation hasn't been started or that
427
::= { lookupResultsEntry 2 }
429
lookupResultsAddress OBJECT-TYPE
434
"Reflects a result for a remote lookup operation
435
as per the value of lookupResultsAddressType.
437
The address type (InetAddressType) that relates to
438
this object is specified by the corresponding value
439
of lookupResultsAddress."
441
::= { lookupResultsEntry 3 }
444
-- Conformance information
445
-- Compliance statements
447
lookupCompliances OBJECT IDENTIFIER ::= { lookupConformance 1 }
448
lookupGroups OBJECT IDENTIFIER ::= { lookupConformance 2 }
450
-- Compliance statements
452
lookupCompliance MODULE-COMPLIANCE
455
"The compliance statement for SNMP entities that
456
fully implement the DISMAN-NSLOOKUP-MIB."
457
MODULE -- this module
458
MANDATORY-GROUPS { lookupGroup }
460
OBJECT lookupMaxConcurrentRequests
463
"The agent is not required to support set
464
operations to this object."
466
OBJECT lookupPurgeTime
469
"The agent is not required to support a set
470
operation to this object."
473
::= { lookupCompliances 1 }
475
lookupMinimumCompliance MODULE-COMPLIANCE
478
"The minimum compliance statement for SNMP entities
479
that implement the minimal subset of the
480
DISMAN-NSLOOKUP-MIB. Implementors might choose this
481
subset for small devices with limited resources."
482
MODULE -- this module
483
MANDATORY-GROUPS { lookupGroup }
485
OBJECT lookupMaxConcurrentRequests
488
"The agent is not required to support set
489
operations to this object."
491
OBJECT lookupPurgeTime
494
"The agent is not required to support a set
495
operation to this object."
497
OBJECT lookupCtlRowStatus
500
"Write access is not required. If write access is
501
not supported, then at least one entry in the
502
lookupCtlTable MUST be established already when the SNMP
503
agent starts offering access to the NSLOOKUP-MIB module.
504
If, in such a case, only a single entry is offered, then
505
it is RECOMMENDED that this entry use strings with a
506
length of 0 for both of its two index objects."
507
::= { lookupCompliances 2 }
511
lookupGroup OBJECT-GROUP
513
lookupMaxConcurrentRequests,
516
lookupCtlTargetAddressType,
517
lookupCtlTargetAddress,
523
lookupResultsAddressType,
528
"The group of objects that constitute the remote
530
::= { lookupGroups 1 }