Linux DNS 解析服务 传统都是依靠 /etc/resolv.conf 来处理 DNS 解析, 但是新的 linux-systemd 系统转而采用 resolved.service 处理网络解析服务.
而目前如果只要不是太老的 linux 版本建议都直接采用 resolved 相关工具链来维护处理服务器 DNS 相关; resolved 实际上是一整套的工具链, 本质上其实就是在本地开启开启个小型的 DNS 服务端, 常规操作如下:
# 查看目前的服务器解析路由状态, 可以看到所有网口链路 sudo resolvectl status # 查看目前的DNS系统单元状态 sudo systemctl status systemd-resolved.service # 上面的命令都可以看到网口对应 DNS 服务及其上游 # 当然借助这个工具可以手动指定全局 DNS 公共服务器 sudo resolvectl dns all 8.8.8.8 223.5.5.5 # 也可以指定 eth0 网口服务采用的 DNS 服务器 sudo resolvectl dns eth0 8.8.8.8 223.5.5.5 # 更新清空 DNS 缓存 sudo resolvectl flush-caches # 查看全局 DNS 系统配置文件 cat /etc/systemd/resolved.