nss-resolve 中文手册

译者:金步国


版权声明

本文译者是一位开源理念的坚定支持者,所以本文虽然不是软件,但是遵照开源的精神发布。

其他作品

本文译者十分愿意与他人分享劳动成果,如果你对我的其他翻译作品或者技术文章有兴趣,可以在如下位置查看现有的作品集:

联系方式

由于译者水平有限,因此不能保证译文内容准确无误。如果你发现了译文中的错误(哪怕是错别字也好),请来信指出,任何提高译文质量的建议我都将虚心接纳。


手册索引 · 指令索引systemd-241

名称

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)