NAPTR
Click on the red underlined text to get to the source
... adhere to. It does not define the reasons the rewrite is used, what
the expected outcomes are, or what they are used for. Those are
specified by applications that define how they use the NAPTR record
and algorithms within their contexts ...
... A 16-bit unsigned integer specifying the order in which the NAPTR
records MUST be processed to ensure the correct ordering of
rules. Low numbers are processed before high numbers, and once a
NAPTR ...
... NAPTR
records MUST be processed to ensure the correct ordering of
rules. Low numbers are processed before high numbers, and once a
NAPTR is found whose rule "matches" the target, the client MUST
...
... target, the client MUST
NOT consider any NAPTRs with a higher value for order (except as
noted below for the Flags field).
...
... A 16-bit unsigned integer that specifies the order in which NAPTR
records with equal "order" values SHOULD be processed, low
numbers being processed before high numbers. This is similar to
the preference field in an MX record, and is used so domain ...
... terminal lookup.
This means that this NAPTR record is the last one and that the
flag determines what the next stage should be. The "S" flag
means that the next lookup ...
... SRV records [4]. See
Section 5 for additional information on how NAPTR uses the SRV
record type. "A" means that the next lookup should be for either
...
... 2396(-> 3986std66) [9]. Since there may be applications that use
NAPTR to also lookup aspects of URIs, implementors ...
... The remaining alphabetic flags are reserved for future versions
of the NAPTR specification. The numeric flags may be used for
local experimentation. The S, A, U and P flags are all mutually
exclusive, and resolution libraries MAY signal an error if more
...
... than one is given. (Experimental code and code for assisting in
the creation of NAPTRs would be more likely to signal such an
error than a client such as a browser). It is anticipated that
...
... algorithm. If those flags are not
present, clients may assume that another NAPTR RR exists at the
domain name ...
... terminal'.
Thus, the client cannot assume that another NAPTR exists since
this case is determined elsewhere.
...
... service. A protocol MUST be specified if the flags field states
that the NAPTR is terminal. If a protocol is specified, but the
flags field ...
... terminal, the next
lookup MUST be for a NAPTR. The client MAY choose not to perform
the next lookup ...
...
The list of "valid" protocols for any given NAPTR record is any
protocol that implements some or all of the services defined for
...
... protocol that implements some or all of the services defined for
a NAPTR application. Currently, THTTP [6] is the only protocol
that is known to make that claim at the time of publication. Any
...
... services of the application
* how it is to appear in the NAPTR record (i.e., the string id
of the protocol)
...
... valid Resolution Services is defined by the documents
that specify individual NAPTR based applications.
It is worth noting that the interpretation of this field is
...
... by the client, never to the domain name produced by a previous
NAPTR rewrite. The latter is tempting in some applications but
experience has shown such use to be extremely fault sensitive,
very error prone, and extremely difficult to debug.
...
... algorithm where the output of one rewrite is a new key that points to
another rule. This looping algorithm allows NAPTR records to
incrementally specify a complete rule. These incremental rules can
be delegated which allows other entities to specify rules so that one
...
... starts with a string and some known key (domain).
NAPTR records for this key are retrieved, those with unknown Flags or
inappropriate Services are discarded and the remaining records are
...
... regular expression is then used as the domain of the
next loop through the NAPTR algorithm. Note that the same target
...
... valid at any level of the algorithm, the degenerative
case is to never loop but to look up the NAPTR and then stop. In
many specialized cases this is all that is needed. Implementors
...
... Concerning How NAPTR Uses SRV Records ...
...
In the case of NAPTR, the actual domain-name is specified by the
various fields in the NAPTR record ...
... NAPTR, the actual domain-name is specified by the
various fields in the NAPTR record. In this case the client isn't
asking a question but is instead attempting to get at information
...
... SRV authors originally intended it does not break any of the
assumptions concerning what SRV contains. Also, since the NAPTR
explicitly spells out the domain-name for which an SRV ...
... queries with NO transformations. Any
given NAPTR record may result in a domain-name to be used for SRV
...
... queries that may or may not contain the SRV standardized underscore
characters. NAPTR applications that make use of SRV MUST NOT attempt
to understand these domains ...
... NAPTR algorithm is the basic assumption
about how NAPTR works. The reasons for the rewrite and the expected
output and its use are specified by documents that define what
applications the NAPTR record ...
... NAPTR works. The reasons for the rewrite and the expected
output and its use are specified by documents that define what
applications the NAPTR record and algorithm are used for. Any
document that defines such an application must define the following:
...
...
NAPTR was originally specified for use with the a Uniform Resource
Name Resolver Discovery System. This example details how a
particular URN ...
... Uniform Resource
Name Resolver Discovery System. This example details how a
particular URN would use the NAPTR record to find a resolver service.
...
... the URN, prepended to urn.arpa. 'cid.urn.arpa' then becomes the first
'known' key in the NAPTR algorithm. The NAPTR records for
...
... 'known' key in the NAPTR algorithm. The NAPTR records for
cid.urn.arpa looked up and return a single record:
...
...
There is only one NAPTR response, so ordering the responses is not a
problem. The replacement field is empty, so the pattern provided in
the regexp field is used. We apply that regexp to the entire URN ...
... probe to DNS is for more NAPTR records where the new domain is '
gatech.edu' and the string is the same string as before.
...
... domain. While all hosts, such as mordred, could have their very own
NAPTR, maintaining those records for all the machines at a site as
large as Georgia Tech would be an intolerable burden. Wildcards are
...
... service regexp replacement
IN NAPTR 100 50 "s" "z3950+I2L+I2C" "" _z3950._tcp.gatech.edu.
IN NAPTR ...
... NAPTR 100 50 "s" "z3950+I2L+I2C" "" _z3950._tcp.gatech.edu.
IN NAPTR 100 50 "s" "rcds+I2C" "" _rcds._udp.gatech.edu.
IN NAPTR ...
... NAPTR 100 50 "s" "rcds+I2C" "" _rcds._udp.gatech.edu.
IN NAPTR 100 50 "s" "http+I2L+I2C+I2R" "" _http._tcp.gatech.edu.
...
... pick any record. The flags field tells us that these are the last
NAPTR patterns we should see, and after the rewrite (a simple
replacement in this case) we should look up SRV records to get
...
... prefix,
"http", and lookup NAPTR records for http.uri.arpa. This might
return a record of the form
...
... Applying this pattern to the URL extracts "www.foo.com". Looking up
NAPTR records for that might return:
...
... NAPTR 100 100 "s" "http+I2R" "" _http._tcp.foo.com.
IN NAPTR 100 100 "s" "ftp+I2R" "" _ftp._tcp.foo.com.
...
... A non-URI example is the ENUM application which uses a NAPTR record
to map an e.164 telephone number to a URI ...
... For this example telephone number we might get back the following
NAPTR records:
...
... ORIGIN 2.1.2.1.5.5.5.0.7.7.1.e164.arpa.
IN NAPTR 100 10 "u" "sip+E2U" "!^.*$!sip:information@tele2.se!" .
IN ...
...
The packet format for the NAPTR record is:
...
... SRV records. Since there is no place for a
port specification in the NAPTR record, when the "A" flag is used the
specified protocol must be running on its default port.
...
... A client MUST process multiple NAPTR records in the order
specified by the "order" field, it MUST NOT simply use the first
record that provides a known protocol and service ...
... being equal, the client should use the value of the preference
field to select the next NAPTR to consider. However, because it
will often be the case where preferred protocols or services
...
... The values for the Services field will be determined by the
application that makes use of the NAPTR record. Those values must be
specified in a published specification and approved by the IESG.
...
... The interactions with DNSSEC are currently being studied. It is
expected that NAPTR records will be signed with SIG records once the
DNSSEC ...
