- NAPTR record
-
A Name Authority Pointer (NAPTR) is a type of resource record used in the Domain Name System (DNS).[1][2]
Contents
Rationale
Uniform Resource Names (URNs) are a subset of Uniform Resource Identifiers (URIs) used for abstract identifiers, such as a person's name or their telephone number. For URNs to be meaningful, they must be mapped to a concrete resource of some sort. Uniform Resource Locators (URLs) are often used to describe such resources, such as a computer hostname, or a local file.
As part of the standardization of URNs, NAPTR records were introduced to do just this. NAPTR records map between sets of URNs, URLs and plain domain names and suggest to clients what protocol should be used to talk to the mapped resource.[3] Each NAPTR record contains a service name, a set of flags, a regexp rule, an order value, a preference and a replacement. Multiple records can be chained together in a cascade to rewrite URIs in fairly sophisticated, but deterministic ways. These cascading rules have been standardized in RFC2915 and RFC3403.
Example
A common use for NAPTR records is in SIP, where it is used to route phone calls over the Internet. For example, the SIP URN for the US telephone number 1-800-555-1234 would be tel:+1-800-555-1234 and its domain name 4.3.2.1.5.5.5.0.0.8.1.e164.arpa. A SIP client doing a lookup on that name might receive:
$ORIGIN 4.3.2.1.5.5.5.0.0.8.1.e164.arpa. IN NAPTR 100 10 "U" "E2U+sip" "!^.*$!sip:customer-service@example.com!i" . IN NAPTR 102 10 "U" "E2U+email" "!^.*$!mailto:information@example.com!i" .
The first record has an order value of 100, which is lower than 102, so it is picked first. Its preference of 10 is unimportant as there are no other rules with order 100. The service name E2U+sip is an ENUM string indicating that the record can be used in phone number-to-SIP lookups.[4] The client then goes on to apply the regexp rule !^.*$!sip:customer-service@example.com!, which replaces its entire lookup URN tel:+1-800-555-1234 with sip:customer-service@example.com. The "U" flag indicates that the replacement string is a SIP URN, and that no further rules should be applied.
To resolve SIP URN, the client then performs a second NAPTR lookup—on example.com, yielding:
$ORIGIN example.com. IN NAPTR 100 10 "S" "SIP+D2U" "!^.*$!sip:customer-service@example.com!" _sip._udp.example.com. IN NAPTR 102 10 "S" "SIP+D2T" "!^.*$!sip:customer-service@example.com!" _sip._tcp.example.com.
As before, the client picks the first record because it has the lowest order value. The regexp rule replaces the lookup URN, this time with the domain name _sip._udp.example.com. The "S" flag indicates that resulting domain name points to a SRV record. The client thus finishes with _sip._udp.example.com, for which it can then fetch a SRV record to initiate a VOIP call.
Support
Vendor Product NAPTR support? ISC BIND Yes Cisco Systems CNR Yes Daniel Bernstein djbdns No (requires patch) Microsoft Windows Server 2003 DNS Server No Microsoft Windows Server 2008 R2 DNS Server Yes Bert Hubert PowerDNS Yes NLnet Labs NSD Yes Sam Trenholme MaraDNS Yes (as of version 1.4[5]) Unixservice, LLC. unxsBind Yes EDNS is required for NAPTR implementations, as extended-length DNS packets are needed to encapsulate queries returning multiple NAPTR records.
References
- ^ Mealling, M; Daniel, R (2000), RFC2915: The Naming Authority Pointer (NAPTR) DNS Resource Record, IETF Network Working Group, http://www.ietf.org/rfc/rfc2915.txt
- ^ Mealling, M (2002), RFC3403: Dynamic Delegation Discovery System (DDDS), Part Three: The Domain Name System (DNS) Database, IETF Network Working Group, http://www.ietf.org/rfc/rfc3403.txt
- ^ Sollins, K (1998), RFC2276: Architectural Principles of Uniform Resource Name Resolution, IETF Network Working Group, http://www.ietf.org/rfc/rfc2276.txt
- ^ van der Berg, Rudolf (2010-01-13), ENUM: Dragging telephone numbers into the Internet Age, Ars Technica, http://arstechnica.com/business/news/2010/01/enum-dragging-telephone-numbers-into-the-internet-age.ars
- ^ "Updating MaraDNS". http://maradns.org/tutorial/update.html#1.3. Retrieved 2009-01-17.
Categories:
Wikimedia Foundation. 2010.
См. также в других словарях:
NAPTR-Record — Mit NAPTR (Naming Authority Pointer) Resource Records werden DNS Namen Adressen von Servern und weitere Informationen zugeordnet. Inhaltsverzeichnis 1 Hintergrund 2 Aufbau 3 Beispiel mit regulärem Ausdruck 4 Weblinks … Deutsch Wikipedia
NAPTR — Mit NAPTR (Naming Authority Pointer) Resource Records werden DNS Namen Adressen von Servern und weitere Informationen zugeordnet. Inhaltsverzeichnis 1 Hintergrund 2 Aufbau 3 Beispiel mit regulärem Ausdruck 4 Weblinks … Deutsch Wikipedia
NAPTR Resource Record — Mit NAPTR (Naming Authority Pointer) Resource Records werden DNS Namen Adressen von Servern und weitere Informationen zugeordnet. Inhaltsverzeichnis 1 Hintergrund 2 Aufbau 3 Beispiel mit regulärem Ausdruck … Deutsch Wikipedia
Resource-Record — Ein Resource Record (RR) ist die kleinste Informationseinheit im Domain Name System (DNS). Er tritt in ASCII Darstellung in Zonendateien oder in komprimierter Form in DNS Transport Paketen oder DNS Caches auf. Einige RR Typen – sogenannte Pseudo… … Deutsch Wikipedia
List of DNS record types — This List of DNS record types provides an overview of types of resource records (database records) stored in the zone files of the Domain Name System (DNS). The DNS implements a distributed, hierarchical, and redundant database for information… … Wikipedia
Resource Record — Ein Resource Record (RR) ist die grundlegende Informationseinheit im Domain Name System (DNS). Er tritt in ASCII Darstellung in Zonendateien oder in komprimierter Form in DNS Transport Paketen oder DNS Caches auf. Einige RR Typen – sogenannte… … Deutsch Wikipedia
Telephone Number Mapping — (ENUM or Enum, from E.164 NUmber Mapping) is a suite of protocols to unify the telephone numbering system E.164 with the Internet addressing system DNS by using an indirect lookup method, to obtain NAPTR records. The records are stored at a DNS… … Wikipedia
Domain Name System — Pour les articles homonymes, voir DNS. Domain Name System Fonction Traduction de nom de domaine en adresse IP … Wikipédia en Français
Domain Name Server — Domain Name System Pour les articles homonymes, voir DNS. Pile de protocoles 7 • Application 6 • … Wikipédia en Français
Domain Name Service — Domain Name System Pour les articles homonymes, voir DNS. Pile de protocoles 7 • Application 6 • … Wikipédia en Français