nss-resolve 中文手册
名称
nss-resolve, libnss_resolve.so.2 — 通过 systemd-resolved.service 提供主机名解析功能
大纲
libnss_resolve.so.2
描述
nss-resolve 是一个 glibc(GNU C Library) NSS(Name Service Switch) 插件,它通过systemd-resolved.service(8) 服务提供了主机名解析功能,并替换了传统的 nss-dns 插件(通过DNS解析主机名)。
要激活此NSS模块,可将 "resolve
" 添加到 /etc/nsswitch.conf
文件中以 "hosts:
" 开头的行里面。强烈建议将 "resolve
" 放置在 /etc/nsswitch.conf
文件中以"hosts:
" 开头的行里面比较靠前的位置(仅在 "files
" 与 "mymachines
" 之后)。如果存在 "dns
" 项,那么必须同时再附加上 "[!UNAVAIL=return]
" ,且必须恰好位于 "dns
" 之前,以确保将DNS查询工作交给systemd-resolved.service(8) (若该服务已启动),或者 nss-dns 来执行(若上述服务不可用)。
注意,在某些情况下, systemd-resolved 会整合多个不同来源的 DNS 记录,例如,对于特殊值 "localhost
" 以及当前主机的主机名。详见systemd-resolved.service(8) 手册。虽然这个功能与nss-myhostname(8) 有重复,但是依然推荐(参见下面的例子)将nss-myhostname 配置到/etc/nsswitch.conf
文件中,以确保即使systemd-resolved 没有运行,也能解析这些名称。
例子
下面是一个正确开启了 nss-resolve 插件的 /etc/nsswitch.conf
文件的例子:
passwd: compat mymachines systemd group: compat mymachines systemd shadow: compat hosts: files mymachines resolve [!UNAVAIL=return] dns myhostname networks: files protocols: db files services: db files ethers: db files rpc: db files netgroup: nis
参见
systemd(1),systemd-resolved.service(8),nss-systemd(8),nss-myhostname(8),nss-mymachines(8),nsswitch.conf(5)