首页/网络/协议速查/NSS 与 hosts 文件优先级
本包目录(405 条)
HTTP 方法与状态码91 条HTTP 头与缓存70 条
DNS 与域名解析60 条
TCP 与 UDP54 条TLS 与加密50 条IP 与 ICMP37 条邮件与文件传输43 条

NSS 与 hosts 文件优先级

glibc 按 /etc/nsswitch.conf 的 hosts 行决定查询顺序:一般 files 在前(hosts 文件)再 dns,因此 hosts 可覆盖 DNS 结果。

协议速查网络更新于 2026-10-12

查看与配置

查看与配置
# /etc/nsswitch.conf
hosts:      files dns myhostname

# /etc/hosts
127.0.0.1   local.api.example.com

验证优先级

验证优先级
getent hosts local.api.example.com   # 命中 hosts → 127.0.0.1
dig +short local.api.example.com      # 绕开 NSS,直接看 DNS
容器/边缘场景常用 hosts 做本地覆盖;排查「dig 正常但应用解析不对」时先看 nsswitch 与 hosts。

易错点

  • 应用若自带解析库(Go/Node 等)可能绕过 NSS 顺序,行为与 getent 不一致

数据来源与参考

  • man 5 nsswitch.conf
  • man 5 hosts

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌