centos 设置 dns

在 CentOS 中设置 DNS,可编辑 /etc/resolv.conf 文件,添加 nameserver 指定 DNS 服务器地址。

一、查看当前 DNS 配置

在修改 DNS 配置之前,可以通过以下命令查看当前的 DNS 配置:

1、查看 /etc/resolv.conf 文件

执行命令cat /etc/resolv.conf,该文件中包含了当前系统使用的 DNS 服务器地址等信息,如果输出的内容中包含了nameserver 关键字后面跟着的 IP 地址,则表示当前已经配置了 DNS 服务器。

二、设置 DNS 的方法

(一)通过 nmcli(适合 NetworkManager 管理的系统)

1、查看网络连接名称

执行命令nmcli con show,会列出所有的网络连接及其详细信息,包括连接名称等。

2、设置新的 DNS 服务器地址

假设网络连接名称为YourConnectionName,要设置的 DNS 服务器地址为DNS1DNS2(Google 的公共 DNS 服务器 8.8.8.8 和 8.8.4.4),执行以下命令:

nmcli con mod YourConnectionName ipv4.dns "DNS1 DNS2"

nmcli con mod YourConnectionName ipv4.ignoreautodns yes

3、重新启动网络连接

执行命令nmcli con up YourConnectionName,使修改生效。

(二)通过编辑网卡配置文件(适合没有安装 NetworkManager 或喜欢直接编辑配置文件的用户)

1、打开网卡配置文件

网卡配置文件通常位于/etc/sysconfig/networkscripts/ 目录下,文件名以ifcfg 开头加上网卡名称,例如ifcfgeth0,使用文本编辑器打开相应的配置文件,假设网卡名称为eth0,执行命令sudo vi /etc/sysconfig/networkscripts/ifcfgeth0

centos 设置 dns

2、修改或添加 DNS 配置

在文件中找到以DNS1DNS2 为关键字的行,如果不存在则添加它们,并将其值设置为希望使用的 DNS 服务器地址,

DNS1=8.8.8.8

DNS2=8.8.4.4

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

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

在 vi 编辑器中,可以使用:wq 命令保存并退出文件。

4、重新启动网络服务

执行命令sudo systemctl restart network,使新的 DNS 设置生效。

(三)修改 /etc/resolv.conf 文件(不推荐长期单独使用)

centos 设置 dns

1、编辑 /etc/resolv.conf 文件

执行命令sudo vi /etc/resolv.conf

2、添加或修改 nameserver 行

在该文件中添加nameserver 行,指定需要使用的 DNS 服务器的 IP 地址,如果要使用 8.8.4.4 这个 DNS 服务器,可以添加以下行:

nameserver 8.8.4.4

如果需要添加多个 DNS 服务器,可以在不同行上添加不同的nameserver 行。

3、保存并关闭文件

在 vi 编辑器中,可以使用:wq 命令保存并退出文件。

4、阻止 NetworkManager 修改 /etc/resolv.conf 文件(可选)

如果系统中安装了 NetworkManager,且不希望其覆盖手动修改的 /etc/resolv.conf 文件,可以编辑 NetworkManager 的配置文件/etc/NetworkManager/NetworkManager.conf,在[main] 部分添加或修改设置为dns=none,然后重新启动 NetworkManager 服务,执行命令sudo systemctl restart NetworkManager

centos 设置 dns

三、验证 DNS 配置是否生效

可以通过以下命令测试新设置是否生效:

1、ping 命令

执行命令ping www.google.com,如果能收到响应,则说明 DNS 正在正常工作。

2、nslookup 命令

执行命令nslookup example.com,将example.com 替换为需要查询的域名,如果输出的结果中包含了 DNS 服务器的 IP 地址,则表示 DNS 配置已经生效。

四、相关问题与解答

问题1:修改 /etc/resolv.conf 文件后,为什么重启网络服务后设置没有生效?

解答:如果在修改 /etc/resolv.conf 文件后重启网络服务但设置没有生效,可能是因为 NetworkManager 服务在后台自动覆盖了该文件的修改,可以尝试按照上述方法阻止 NetworkManager 对该文件进行修改,或者检查 NetworkManager 的相关配置是否正确,也可能是系统中存在多个网络相关的服务或配置文件相互影响,需要仔细排查其他可能的因素。

问题2:如何确定应该使用哪种方法来设置 CentOS 系统的 DNS?

解答:选择设置 CentOS 系统 DNS 的方法主要取决于系统的网络管理方式和个人偏好,如果系统是通过 NetworkManager 管理网络连接,那么使用 nmcli 命令或修改 /etc/resolv.conf 文件(并阻止 NetworkManager 覆盖)可能更为方便;如果没有安装 NetworkManager,或者更喜欢直接对配置文件进行操作,那么编辑网卡配置文件可能是更好的选择,对于大多数普通用户,使用 nmcli 命令是一种简单快捷的方法来临时更改 DNS 设置;而对于需要长期稳定运行的服务器环境,修改网卡配置文件或正确配置 /etc/resolv.conf 文件并确保其不被覆盖可能更合适。

来源互联网整合,作者:小编,如若转载,请注明出处:https://www.aiboce.com/ask/190446.html

Like (0)
小编小编
Previous 2025年4月13日 23:01
Next 2025年4月13日 23:07

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注