3.1.5.11. NAPTR

NAPTR (Naming Authority Pointer Record) is a special DNS record that contains information on how to establish a connection with a specific domain or resource.

A feature of the NAPTR record is that it allows specifying multiple alternative methods for processing a connection request to a domain. This can be useful, for example, when several services provide the same domain but with different protocols or access conditions. The NAPTR record is typically used in combination with resource records A, AAAA, and SRV.

The NAPTR record contains several fields with information on how to perform name transformation. It is used in voice and video communications, for example, to determine which call processing server should be used for a specific phone number or SIP address.

The operation of NAPTR is based on the process of finding the most suitable NAPTR record for a given name. When a request reaches the DNS server, the server begins searching for NAPTR records that match the specified name and align with the given transformation rules. NAPTR records are numbered sequentially and sorted by priority and weight to determine the most appropriate record. The server then performs the corresponding transformations specified in the found NAPTR records to convert the name (e.g., URL) into the required form. If the first NAPTR record does not yield the desired result, the server continues checking in order of priority until it finds a suitable record or reaches the end of the list.

Each NAPTR record contains the following information:

  1. Order — the priority of record processing, where a lower value indicates a higher priority.
  2. Preference — allows you to specify the order of processing a record with the same priority, where a lower value indicates a higher priority.
  3. Flags — determine how the request will be processed, for example, indicating the use of templates.
  4. Scheme (service) — protocol or access conditions (e.g., SIP or E2U+sip).
  5. Handler entry (regexp) — information on how to process a request to a domain or resource is specified in the form of a regular expression.
100 10 "u" "E2U+sip" "!^.*$!sip:user@example.com!" .
  1. 100 — priority.
  2. 10 — preference.
  3. u — a flag indicating how the following fields will be used (in this case, they will be interpreted as URN).
  4. E2U+sip — conversion template, indicates the data type and execution order (in this case, conversion of E.164 to SIP URI).
  5. !^.*$!sip:user@example.com! — a regular expression used for name transformation.
  6. . — end of record.
目录