HCRM博客

如何在 CentOS 中配置 DNS 服务器?

在 CentOS 系统中设置 DNS(域名系统)服务器地址,可以通过多种方法来实现,以下是几种常见的方法:

方法一:使用nmcli 命令行工具

如何在 CentOS 中配置 DNS 服务器?-图1
(图片来源网络,侵权删除)

1、查看当前网络连接:使用nmcli con show 命令查看当前的网络连接名称。

2、设置新的 DNS 服务器地址:使用nmcli con mod <YourConnectionName> ipv4.dns "DNS1 DNS2" 命令来设置新的 DNS 服务器地址,如果要将 DNS 设置为 Google 的公共 DNS 服务器(8.8.8.8 和 8.8.4.4),可以使用以下命令:

   nmcli con mod YourConnectionName ipv4.dns "8.8.8.8 8.8.4.4"

注意替换<YourConnectionName> 为你的网络连接名称。

3、忽略自动获取的 DNS 服务器:为了避免系统自动获取 DNS 服务器地址,可以添加ipv4.ignoreautodns yes 选项:

   nmcli con mod YourConnectionName ipv4.ignoreautodns yes

4、重启网络连接:使用nmcli con up YourConnectionName 命令重启网络连接以使修改生效。

方法二:编辑网卡配置文件

如何在 CentOS 中配置 DNS 服务器?-图2
(图片来源网络,侵权删除)

1、打开网卡配置文件:使用文本编辑器(如 vi 或 nano)打开位于/etc/sysconfig/networKScripts/ 目录下的网卡配置文件,文件名通常为ifcfgeth0,其中eth0 是网卡的名称,如果不确定网卡名称,可以使用ifconfigip addr show 命令查看。

2、修改 DNS 设置:在配置文件中找到以DNS1DNS2 等为关键字的行,并将其值设置为您希望使用的 DNS 服务器地址。

   DNS1=8.8.8.8
   DNS2=8.8.4.4

如果文件中包含PEERDNS=yes,并且您希望使用静态设置的 DNS,而不是 DHCP 分配的 DNS,需要将其更改为PEERDNS=no

3、保存并退出:保存文件并退出编辑器。

4、重启网络服务:使用systemctl restart network 命令重启网络服务以使新的 DNS 设置生效。

方法三:修改 /etc/resolv.conf 文件

如何在 CentOS 中配置 DNS 服务器?-图3
(图片来源网络,侵权删除)

尽管直接编辑/etc/resolv.conf 文件可以更改 DNS 服务器设置,但在使用 NetworkManager 的系统中,这些更改可能不会持久,因为 NetworkManager 可能会覆盖该文件,这种方法通常不推荐用于长期配置,不过,如果您仍然想尝试这种方法,可以按照以下步骤操作:

1、编辑 /etc/resolv.conf 文件:使用文本编辑器打开/etc/resolv.conf 文件。

2、添加或修改 nameserver 行:在文件中添加或修改nameserver 行以包括所需的 DNS 服务器地址。

   nameserver 8.8.8.8
   nameserver 8.8.4.4

3、保存并关闭文件

4、阻止 NetworkManager 修改 /etc/resolv.conf 文件:为了确保修改能持续生效,需要阻止 NetworkManager 对该文件进行修改,这可以通过编辑/etc/NetworkManager/NetworkManager.conf 文件并添加或修改[main] 部分中的dns=none 设置来实现,重新启动 NetworkManager 服务以使设置生效。

5、验证新设置是否生效:通过运行ping www.google.com 等命令来测试新设置是否生效。

FAQs

问题1:在 CentOS 中如何查看当前的 DNS 配置?

答:在 CentOS 中,可以通过查看/etc/resolv.conf 文件来查看当前的 DNS 配置,使用cat /etc/resolv.conf 命令即可显示该文件的内容,其中包含了当前配置的 DNS 服务器地址。

问题2:为什么直接编辑 /etc/resolv.conf 文件的方法不推荐用于长期配置?

答:直接编辑/etc/resolv.conf 文件的方法不推荐用于长期配置,因为在使用 NetworkManager 的系统中,这些更改可能不会持久,NetworkManager 是一个网络管理工具,它负责管理网络连接和配置,包括 DNS 设置,当 NetworkManager 启动或重新配置网络时,它可能会覆盖/etc/resolv.conf 文件中的手动更改,导致 DNS 设置恢复到默认状态或根据其他配置源进行更新,为了确保 DNS 设置的持久性,建议使用 NetworkManager 或其他更稳定的方法来配置 DNS。

分享:
扫描分享到社交APP
上一篇
下一篇