Naming Authority Pointer (NAPTR) Records are most commonly used for applications in Internet telephony, for example, in the mapping of servers and user addresses in the Session Initiation Protocol (SIP). The combination of NAPTR records with Service Records (SRV) allows the chaining of multiple records to form complex rewrite rules which produce new domain labels or uniform resource identifiers (URIs).
A NAPTR record consists of the following fields:
-
Host - The hostname for the record, entered as either a simple, one-part name, or as a Fully Qualified Domain Name (FQDN) with or without a trailing dot.
-
Service Name - Specifies the service(s) available down the rewrite path or a protocol. This field must contain a protocol if the Flags field contains P. This field is not case-sensitive.
-
Pref - Provide an integer value between 0 – 65535 that specifies the processing preference (order) of the NAPTR records (if multiple NAPTR records have equal Order values. Low numbers are processed before higher numbers.
-
Order - Provide an integer value to determine the order in which the NAPTR records are supposed to be processed in. Low numbers are processed before higher numbers.
-
Flags: A character string consisting of a single character (from the set [A–Z0–9], that is case insensitive, and that controls aspects of rewriting and interpreting fields in the NAPTR record. Currently, the NAPTR record supports the following four flags:
-
S indicates the output of the rewrite will be an SRV record.
-
A indicates the output of the rewrite will be an A or AAAA record.
-
U indicates the output of the Regexp field is a Uniform Resource Identifier (URI) (which is used in ENUM).
-
P indicates the next step is to look for protocol-specific rules in the Services field.
-
-
Regexp - (“Regular Expression”) A character string containing a substitution expression applied to a client's original string, in order to construct the next domain name to lookup
-
Replacement - An FQDN of the next domain-name to query, depending on the values in the Flags field. Use the Replacement field when the Regexp is a simple replacement operation.
-
TTL
Additional Examples:
This following NAPTR record set provides three ways to contact example.biz.
Host |
Service |
Order |
Pref |
Flags |
regexp |
Replacement |
---|---|---|---|---|---|---|
example.biz |
sip+d2u |
10 |
101 |
S |
|
_sip._udp.example.biz. |
example.biz |
sip+d2t10 |
10 |
102 |
S |
|
_sip._tcp.example.biz. |
example.biz |
e2u+email |
10 |
103 |
S |
|
!^.*$!mailto:info@example.biz! |
This example is the NAPTR set for the phone number 1+202-555-1212, with a preference for SIP, then H323, and finally email.
Host |
Service |
Order |
Pref |
Flags |
regexp |
Replacement |
---|---|---|---|---|---|---|
2.1.2.1.5.5.5.2.0.2.1.itrs.us. |
e2u+sip |
10 |
101 |
U |
!^.*$!sip:info@itrs.us! |
|
2.1.2.1.5.5.5.2.0.2.1.itrs.us. |
E2U+h323 |
10 |
102 |
U |
!^.*$!h323:info@itrs.us! |
|
2.1.2.1.5.5.5.2.0.2.1.itrs.us. |
E2U+msg |
10 |
103 |
U |
!^.*$!mailto:info@itrs.us! |
|