📄 rfc1611.txt
字号:
Network Working Group R. Austein
Request for Comments: 1611 Epilogue Technology Corporation
Category: Standards Track J. Saperia
Digital Equipment Corporation
May 1994
DNS Server MIB Extensions
Status of this Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Table of Contents
1. Introduction .............................................. 1
2. The SNMPv2 Network Management Framework ................... 2
2.1 Object Definitions ....................................... 2
3. Overview .................................................. 2
3.1 Resolvers ................................................ 3
3.2 Name Servers ............................................. 3
3.3 Selected Objects ......................................... 4
3.4 Textual Conventions ...................................... 4
4. Definitions ............................................... 5
5. Acknowledgements .......................................... 28
6. References ................................................ 28
7. Security Considerations ................................... 29
8. Authors' Addresses ........................................ 30
1. Introduction
This memo defines a portion of the Management Information Base (MIB)
for use with network management protocols in the Internet community.
In particular, it describes a set of extensions which instrument DNS
name server functions. This memo was produced by the DNS working
group.
With the adoption of the Internet-standard Network Management
Framework [4,5,6,7], and with a large number of vendor
implementations of these standards in commercially available
products, it became possible to provide a higher level of effective
network management in TCP/IP-based internets than was previously
available. With the growth in the use of these standards, it has
become possible to consider the management of other elements of the
infrastructure beyond the basic TCP/IP protocols. A key element of
Austein & Saperia [Page 1]
RFC 1611 DNS Server MIB Extensions May 1994
the TCP/IP infrastructure is the DNS.
Up to this point there has been no mechanism to integrate the
management of the DNS with SNMP-based managers. This memo provides
the mechanisms by which IP-based management stations can effectively
manage DNS name server software in an integrated fashion.
We have defined DNS MIB objects to be used in conjunction with the
Internet MIB to allow access to and control of DNS name server
software via SNMP by the Internet community.
2. The SNMPv2 Network Management Framework
The SNMPv2 Network Management Framework consists of four major
components. They are:
o RFC 1442 which defines the SMI, the mechanisms used for
describing and naming objects for the purpose of management.
o STD 17, RFC 1213 defines MIB-II, the core set of managed objects
for the Internet suite of protocols.
o RFC 1445 which defines the administrative and other architectural
aspects of the framework.
o RFC 1448 which defines the protocol used for network access to
managed objects.
The Framework permits new objects to be defined for the purpose of
experimentation and evaluation.
2.1. Object Definitions
Managed objects are accessed via a virtual information store, termed
the Management Information Base or MIB. Objects in the MIB are
defined using the subset of Abstract Syntax Notation One (ASN.1)
defined in the SMI. In particular, each object object type is named
by an OBJECT IDENTIFIER, an administratively assigned name. The
object type together with an object instance serves to uniquely
identify a specific instantiation of the object. For human
convenience, we often use a textual string, termed the descriptor, to
refer to the object type.
3. Overview
In theory, the DNS world is pretty simple. There are two kinds of
entities: resolvers and name servers. Resolvers ask questions. Name
servers answer them. The real world, however, is not so simple.
Austein & Saperia [Page 2]
RFC 1611 DNS Server MIB Extensions May 1994
Implementors have made widely differing choices about how to divide
DNS functions between resolvers and servers. They have also
constructed various sorts of exotic hybrids. The most difficult task
in defining this MIB was to accommodate this wide range of entities
without having to come up with a separate MIB for each.
We divided up the various DNS functions into two, non-overlapping
classes, called "resolver functions" and "name server functions." A
DNS entity that performs what we define as resolver functions
contains a resolver, and therefore must implement the MIB groups
required of all resolvers which are defined in a separate MIB Module.
A DNS entity which implements name server functions is considered to
be a name server, and must implement the MIB groups required for name
servers in this module. If the same piece of software performs both
resolver and server functions, we imagine that it contains both a
resolver and a server and would thus implement both the DNS Server
and DNS Resolver MIBs.
3.1. Resolvers
In our model, a resolver is a program (or piece thereof) which
obtains resource records from servers. Normally it does so at the
behest of an application, but may also do so as part of its own
operation. A resolver sends DNS protocol queries and receives DNS
protocol replies. A resolver neither receives queries nor sends
replies. A full service resolver is one that knows how to resolve
queries: it obtains the needed resource records by contacting a
server authoritative for the records desired. A stub resolver does
not know how to resolve queries: it sends all queries to a local name
server, setting the "recursion desired" flag to indicate that it
hopes that the name server will be willing to resolve the query. A
resolver may (optionally) have a cache for remembering previously
acquired resource records. It may also have a negative cache for
remembering names or data that have been determined not to exist.
3.2. Name Servers
A name server is a program (or piece thereof) that provides resource
records to resolvers. All references in this document to "a name
server" imply "the name server's role"; in some cases the name
server's role and the resolver's role might be combined into a single
program. A name server receives DNS protocol queries and sends DNS
protocol replies. A name server neither sends queries nor receives
replies. As a consequence, name servers do not have caches.
Normally, a name server would expect to receive only those queries to
which it could respond with authoritative information. However, if a
name server receives a query that it cannot respond to with purely
authoritative information, it may choose to try to obtain the
Austein & Saperia [Page 3]
RFC 1611 DNS Server MIB Extensions May 1994
necessary additional information from a resolver which may or may not
be a separate process.
3.3. Selected Objects
Many of the objects included in this memo have been created from
information contained in the DNS specifications [1,2], as amended and
clarified by subsequent host requirements documents [3]. Other
objects have been created based on experience with existing DNS
management tools, expected operational needs, the statistics
generated by existing DNS implementations, and the configuration
files used by existing DNS implementations. These objects have been
ordered into groups as follows:
o Server Configuration Group
o Server Counter Group
o Server Optional Counter Group
o Server Zone Group
This information has been converted into a standard form using the
SNMPv2 SMI defined in [9]. For the most part, the descriptions are
influenced by the DNS related RFCs noted above. For example, the
descriptions for counters used for the various types of queries of
DNS records are influenced by the definitions used for the various
record types found in [2].
3.4. Textual Conventions
Several conceptual data types have been introduced as a textual
conventions in this DNS MIB document. These additions will
facilitate the common understanding of information used by the DNS.
No changes to the SMI or the SNMP are necessary to support these
conventions.
Readers familiar with MIBs designed to manage entities in the lower
layers of the Internet protocol suite may be surprised at the number
of non-enumerated integers used in this MIB to represent values such
as DNS RR class and type numbers. The reason for this choice is
simple: the DNS itself is designed as an extensible protocol,
allowing new classes and types of resource records to be added to the
protocol without recoding the core DNS software. Using non-
enumerated integers to represent these data types in this MIB allows
the MIB to accommodate these changes as well.
Austein & Saperia [Page 4]
RFC 1611 DNS Server MIB Extensions May 1994
4. Definitions
DNS-SERVER-MIB DEFINITIONS ::= BEGIN
IMPORTS
mib-2
FROM RFC-1213
MODULE-IDENTITY, OBJECT-TYPE, OBJECT-IDENTITY,
IpAddress, Counter32, Gauge32
FROM SNMPv2-SMI
TEXTUAL-CONVENTION, RowStatus, DisplayString, TruthValue
FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP
FROM SNMPv2-CONF;
dns OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The OID assigned to DNS MIB work by the IANA."
::= { mib-2 32 }
dnsServMIB MODULE-IDENTITY
LAST-UPDATED "9401282251Z"
ORGANIZATION "IETF DNS Working Group"
CONTACT-INFO
" Rob Austein
Postal: Epilogue Technology Corporation
268 Main Street, Suite 283
North Reading, MA 10864
US
Tel: +1 617 245 0804
Fax: +1 617 245 8122
E-Mail: sra@epilogue.com
Jon Saperia
Postal: Digital Equipment Corporation
110 Spit Brook Road
ZKO1-3/H18
Nashua, NH 03062-2698
US
Tel: +1 603 881 0480
Fax: +1 603 881 0120
Email: saperia@zko.dec.com"
DESCRIPTION
"The MIB module for entities implementing the server side
of the Domain Name System (DNS) protocol."
::= { dns 1 }
Austein & Saperia [Page 5]
RFC 1611 DNS Server MIB Extensions May 1994
dnsServMIBObjects OBJECT IDENTIFIER ::= { dnsServMIB 1 }
-- (Old-style) groups in the DNS server MIB.
dnsServConfig OBJECT IDENTIFIER ::= { dnsServMIBObjects 1 }
dnsServCounter OBJECT IDENTIFIER ::= { dnsServMIBObjects 2 }
dnsServOptCounter OBJECT IDENTIFIER ::= { dnsServMIBObjects 3 }
dnsServZone OBJECT IDENTIFIER ::= { dnsServMIBObjects 4 }
-- Textual conventions
DnsName ::= TEXTUAL-CONVENTION
-- A DISPLAY-HINT would be nice, but difficult to express.
STATUS current
DESCRIPTION
"A DNS name is a sequence of labels. When DNS names are
displayed, the boundaries between labels are typically
indicated by dots (e.g. `Acme' and `COM' are labels in
the name `Acme.COM'). In the DNS protocol, however, no
such separators are needed because each label is encoded
as a length octet followed by the indicated number of
octets of label. For example, `Acme.COM' is encoded as
the octet sequence { 4, 'A', 'c', 'm', 'e', 3, 'C', 'O',
'M', 0 } (the final 0 is the length of the name of the
root domain, which appears implicitly at the end of any
DNS name). This MIB uses the same encoding as the DNS
protocol.
A DnsName must always be a fully qualified name. It is
an error to encode a relative domain name as a DnsName
without first making it a fully qualified name."
REFERENCE
"RFC-1034 section 3.1."
SYNTAX OCTET STRING (SIZE (0..255))
DnsNameAsIndex ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention is like a DnsName, but is used
as an index componant in tables. Alphabetic characters
in names of this type are restricted to uppercase: the
characters 'a' through 'z' are mapped to the characters
'A' through 'Z'. This restriction is intended to make
the lexical ordering imposed by SNMP useful when applied
to DNS names.
Note that it is theoretically possible for a valid DNS
Austein & Saperia [Page 6]
RFC 1611 DNS Server MIB Extensions May 1994
name to exceed the allowed length of an SNMP object
identifer, and thus be impossible to represent in tables
in this MIB that are indexed by DNS name. Sampling of
DNS names in current use on the Internet suggests that
this limit does not pose a serious problem in practice."
REFERENCE
"RFC-1034 section 3.1, RFC-1448 section 4.1."
SYNTAX DnsName
DnsClass ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2d"
STATUS current
DESCRIPTION
"This data type is used to represent the class values
which appear in Resource Records in the DNS. A 16-bit
unsigned integer is used to allow room for new classes
of records to be defined. Existing standard classes are
listed in the DNS specifications."
REFERENCE
"RFC-1035 section 3.2.4."
SYNTAX INTEGER (0..65535)
DnsType ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2d"
STATUS current
DESCRIPTION
"This data type is used to represent the type values
which appear in Resource Records in the DNS. A 16-bit
unsigned integer is used to allow room for new record
types to be defined. Existing standard types are listed
in the DNS specifications."
REFERENCE
"RFC-1035 section 3.2.2."
SYNTAX INTEGER (0..65535)
DnsQClass ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2d"
STATUS current
DESCRIPTION
"This data type is used to represent the QClass values
which appear in Resource Records in the DNS. A 16-bit
unsigned integer is used to allow room for new QClass
records to be defined. Existing standard QClasses are
listed in the DNS specification."
REFERENCE
"RFC-1035 section 3.2.5."
SYNTAX INTEGER (0..65535)
Austein & Saperia [Page 7]
RFC 1611 DNS Server MIB Extensions May 1994
DnsQType ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2d"
STATUS current
DESCRIPTION
"This data type is used to represent the QType values
which appear in Resource Records in the DNS. A 16-bit
unsigned integer is used to allow room for new QType
records to be defined. Existing standard QTypes are
listed in the DNS specification."
REFERENCE
"RFC-1035 section 3.2.3."
SYNTAX INTEGER (0..65535)
DnsTime ::= TEXTUAL-CONVENTION
DISPLAY-HINT "4d"
STATUS current
DESCRIPTION
"DnsTime values are 32-bit unsigned integers which
measure time in seconds."
REFERENCE
"RFC-1035."
SYNTAX Gauge32
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -