диспетчер разрешения сетевых имен (Network Name Resolution manager)
COMPATIBILITY WITH THE TRADITIONAL GLIBC STUB RESOLVER
This section provides a short summary of differences in the stub
resolver implemented by nss-resolve(8) together with
systemd-resolved
and the traditional stub resolver implemented in
nss-dns.
• Some names are always resolved internally (see Synthetic
Records above). Traditionally they would be resolved by
nss-files if provided in /etc/hosts. But note that the
details of how a query is constructed are under the control
of the client library. nss-dns will first try to resolve
names using search domains and even if those queries are
routed to systemd-resolved, it will send them out over the
network using the usual rules for multi-label name routing
[3].
• Single-label names are not resolved for A and AAAA records
using unicast DNS (unless overridden with
ResolveUnicastSingleLabel=, see resolved.conf(5)). This is
similar to the no-tld-query
option being set in
resolv.conf(5).
• Search domains are not used for suffixing of multi-label
names. (Search domains are nevertheless used for lookup
routing, for names that were originally specified as
single-label or multi-label.) Any name with at least one dot
is always interpreted as a FQDN. nss-dns would resolve names
both as relative (using search domains) and absolute FQDN
names. Some names would be resolved as relative first, and
after that query has failed, as absolute, while other names
would be resolved in opposite order. The ndots option in
/etc/resolv.conf was used to control how many dots the name
needs to have to be resolved as relative first. This stub
resolver does not implement this at all: multi-label names
are only resolved as FQDNs.[4]
• This resolver has a notion of the special ".local" domain
used for MulticastDNS, and will not route queries with that
suffix to unicast DNS servers unless explicitly configured,
see above. Also, reverse lookups for link-local addresses are
not sent to unicast DNS servers.
• This resolver reads and caches /etc/hosts internally. (In
other words, nss-resolve replaces nss-files in addition to
nss-dns). Entries in /etc/hosts have highest priority.
• This resolver also implements LLMNR and MulticastDNS in
addition to the classic unicast DNS protocol, and will
resolve single-label names using LLMNR (when enabled) and
names ending in ".local" using MulticastDNS (when enabled).
• Environment variables $LOCALDOMAIN and $RES_OPTIONS described
in resolv.conf(5) are not supported currently.