CentOS 7 中,编辑
/etc/resolv.conf
文件,添加公共 DNS 服务器地址如 `8.8.在CentOS 7中配置公共DNS的详细步骤及相关内容:
配置方法及步骤
方法 | 步骤详情 | 适用场景 |
---|---|---|
修改/etc/resolv.conf 文件 |
打开终端,使用文本编辑器(如vi 、vim 等)编辑/etc/resolv.conf 文件:sudo vi /etc/resolv.conf 在文件中添加公共DNS服务器地址, nameserver 8.8.8.8 (Google公共DNS)nameserver 8.8.4.4 (Google备用公共DNS)nameserver 223.5.5.5 (阿里云公共DNS)保存并退出文件。 |
快速手动配置DNS,适用于临时或简单需求,但可能被动态更新工具覆盖。 |
使用nmcli 命令 |
查看网络接口名称:nmcli dev status ,找到需要配置DNS的网络接口名称,如eth0 。修改DNS配置: nmcli connection modify [连接名称] ipv4.dns "[DNS服务器地址1] [DNS服务器地址2]" ,nmcli connection modify eth0 ipv4.dns "8.8.8.8 8.8.4.4" 重启网络连接: nmcli connection down [连接名称] && nmcli connection up [连接名称] ,如nmcli connection down eth0 && nmcli connection up eth0 。 |
通过命令行灵活配置,适合熟悉命令行操作的用户。 |
修改网络接口配置文件 | 打开对应的网络接口配置文件,一般位于/etc/sysconfig/networkscripts/ 目录下,文件名格式为ifcfg[接口名称] ,如ifcfgeth0 :sudo vi /etc/sysconfig/networkscripts/ifcfgeth0 。添加或修改以下字段: DNS1=8.8.8.8 (首选DNS服务器)DNS2=8.8.4.4 (备用DNS服务器)PEERDNS=no (关闭Peer DNS,防止冲突)保存文件后,重启网络服务: systemctl restart network 。 |
适合需要长期稳定配置,且不希望被动态更新覆盖的场景。 |
常见问题与解答
问题1:配置的公共DNS不生效怎么办?
- 解答:
- 检查配置文件是否正确保存,并且语法无误,例如在
/etc/resolv.conf
中,确保nameserver
后面跟的是有效的IP地址,且没有多余的空格或字符。 - 如果使用了
NetworkManager
,可能是其动态更新了DNS配置,可以尝试修改NetworkManager
的配置文件/etc/NetworkManager/NetworkManager.conf
,在[main]
部分添加dns=none
,然后重启NetworkManager
服务:systemctl restart NetworkManager
。 - 查看防火墙设置,确保DNS所需的端口(通常为53端口)是开放的,可以使用
firewallcmd listall
查看防火墙规则,如有需要,使用firewallcmd addservice=dns permanent
添加DNS服务到防火墙允许列表,然后重新加载防火墙规则:firewallcmd reload
。 - 检查网络连接是否正常,可以尝试ping一下配置的DNS服务器地址,看是否能够连通,如果网络不通,可能是网络环境问题,需要排查网络故障。
- 检查配置文件是否正确保存,并且语法无误,例如在
问题2:如何选择适合的公共DNS服务器?
- 解答:
- 考虑速度:不同的公共DNS服务器在不同地区的响应速度可能有所不同,可以通过一些在线工具(如
DNSBenchmark
等)来测试不同DNS服务器在你所在地区的响应时间,选择响应速度较快的DNS服务器,距离你较近的DNS服务器可能会有更快的响应速度。 - 考虑稳定性:选择知名、可靠的公共DNS服务提供商,如Google、阿里云等,这些提供商通常具有高可用性和稳定性,能够保证DNS解析服务的持续正常运行,减少因DNS故障导致的网络访问问题。
- 考虑隐私保护:有些公共DNS服务器可能会记录用户的查询日志,如果你对隐私比较关注,可以选择一些注重隐私保护的DNS服务器,如某些声称不记录日志的DNS服务。
- 考虑速度:不同的公共DNS服务器在不同地区的响应速度可能有所不同,可以通过一些在线工具(如