CentOS 7中的DNS配置是一个关键任务,它确保系统能够正确解析域名,在CentOS 7中,有几种方法可以修改DNS设置,包括通过nmcli命令、编辑网卡配置文件以及修改/etc/resolv.conf文件,下面将详细介绍这些方法:
1、通过nmcli命令修改DNS
查看网络连接名称:首先使用nmcli con show
命令查看当前系统中的网络连接名称。
设置新的DNS服务器地址:使用nmcli con mod YourConnectionName ipv4.dns "DNS1 DNS2"
命令来设置新的DNS服务器地址,可以使用Google的公共DNS服务器8.8.8.8和8.8.4.4。
忽略自动分配的DNS:使用nmcli con mod YourConnectionName ipv4.ignoreautodns yes
命令来忽略DHCP自动分配的DNS服务器。
重新启动网络连接:使用nmcli con up YourConnectionName
命令重新启动网络连接以使修改生效。
2、通过编辑网卡配置文件修改DNS
打开网卡配置文件:如果系统没有安装NetworkManager或用户喜欢直接编辑配置文件,可以通过编辑网卡配置文件来修改DNS,网卡配置文件通常位于/etc/sysconfig/networkscripts/
目录下,并以ifcfg网卡名称
命名。
添加DNS服务器地址:在文件中添加或修改DNS1
和DNS2
行,设置所需的DNS服务器地址。
禁用PEERDNS:如果文件中包含PEERDNS=yes
,并且想要使用静态设置的DNS而不是DHCP分配的DNS,需要将其更改为PEERDNS=no
。
保存并退出编辑器:保存文件并退出编辑器。
重新启动网络服务:使用sudo systemctl restart network
命令重新启动网络服务以使新的DNS设置生效。
3、修改/etc/resolv.conf文件
编辑/etc/resolv.conf文件:尽管直接编辑/etc/resolv.conf文件可以更改DNS服务器设置,但在使用NetworkManager的系统中,这些更改可能不会持久,因为NetworkManager可能会覆盖该文件。
添加或修改nameserver行:在文件中添加或修改nameserver
行以包括所需的DNS服务器地址。
阻止NetworkManager修改/etc/resolv.conf文件:为确保修改能持续生效,还需要阻止NetworkManager对该文件进行修改,这可以通过编辑NetworkManager的配置文件并添加或修改[main]
部分,设置dns=none
来实现。
重新启动NetworkManager:使用sudo systemctl restart NetworkManager
命令重新启动NetworkManager以使设置生效。
CentOS 7提供了多种方式来修改DNS设置,用户可以根据自己的需求和偏好选择适合的方法,无论是通过nmcli命令、编辑网卡配置文件还是修改/etc/resolv.conf文件,都需要确保正确配置DNS服务器地址,并在必要时重启网络服务或NetworkManager以使更改生效。