一、
在CentOS系统中,DNS(Domain Name System,域名系统)用于将域名解析为IP地址,正确配置DNS对于网络连接和访问互联网资源至关重要,本文将详细介绍如何在CentOS中设置DNS,包括通过命令行工具nmcli、编辑网卡配置文件以及修改/etc/resolv.conf文件的方法。
二、使用nmcli命令设置DNS
查看当前网络连接
使用nmcli connection show
命令查看当前的网络连接信息:
nmcli connection show
输出示例:
NAME UUID TYPE DEVICE eno1 5fb06bd00bb07ffb45f1d6edd65f3e03 8023ethernet eno1
修改DNS服务器地址
假设要修改的网络连接名称为eno1,可以使用以下命令设置新的DNS服务器地址(Google的公共DNS服务器8.8.8.8和8.8.4.4):
nmcli con mod eno1 ipv4.dns "8.8.8.8 8.8.4.4" nmcli con mod eno1 ipv4.ignoreautodns yes
重新启动网络连接
重新启动网络连接以使修改生效:
nmcli con up eno1
三、通过编辑网卡配置文件设置DNS
打开网卡配置文件
如果系统中没有安装NetworkManager或者更喜欢直接编辑配置文件,可以手动修改网卡配置文件,网卡配置文件通常位于/etc/sysconfig/networkscripts/
目录下,并以ifcfg<网卡名称>命名,例如ifcfgeth0。
使用文本编辑器打开相应的配置文件:
sudo vi /etc/sysconfig/networkscripts/ifcfgeth0
添加或修改DNS服务器地址
在文件中添加或修改以下行,设置所需的DNS服务器地址:
DNS1=8.8.8.8 DNS2=8.8.4.4
如果文件中包含PEERDNS=yes
,并且希望使用静态DNS而不是DHCP分配的DNS,需要将其更改为PEERDNS=no
。
保存并退出编辑器
保存文件并退出编辑器,然后重新启动网络服务以使新的DNS设置生效:
sudo systemctl restart network
四、修改/etc/resolv.conf文件设置DNS
1. 阻止NetworkManager覆盖/etc/resolv.conf文件
默认情况下,NetworkManager可能会覆盖手动编辑的/etc/resolv.conf文件,为了避免这种情况,可以编辑NetworkManager的配置文件:
sudo vi /etc/NetworkManager/NetworkManager.conf
在[main]部分添加或修改以下行:
[main] dns=none
保存并退出编辑器后,重新启动NetworkManager服务:
sudo systemctl restart NetworkManager
2. 编辑/etc/resolv.conf文件
现在可以安全地编辑/etc/resolv.conf文件,添加或修改nameserver行以指定DNS服务器地址:
sudo vi /etc/resolv.conf
添加或修改如下内容:
nameserver 8.8.8.8 nameserver 8.8.4.4
保存并关闭文件。
五、验证DNS设置
完成上述步骤后,可以通过ping命令测试新的DNS设置是否生效:
ping www.google.com
如果能收到响应,则说明DNS正在正常工作。
六、小编总结
在CentOS中设置DNS的方法有多种,可以根据具体需求选择适合的方式,使用nmcli命令可以方便地通过命令行修改DNS设置;编辑网卡配置文件适合没有安装NetworkManager或喜欢直接操作配置文件的用户;而修改/etc/resolv.conf文件则是最直接的方法,但需要注意防止被NetworkManager覆盖,无论采用哪种方法,都需要在完成后验证DNS设置是否生效,以确保网络连接正常。
来源互联网整合,作者:小编,如若转载,请注明出处:https://www.aiboce.com/ask/78913.html