在 CentOS 6 系统想修改 DNS 我们都知道修改/etc/resolv.conf 文件,添加上需要的 DNS,并重启网卡即可
vim /etc/resolv.conf
|
|
# 添加下面的 dns
|
|
nameserver 8.8.8.8
|
|
nameserver 114.114.114.114
|
|
# 重启网卡命令
|
|
systemctl restart network
|
最近开了台服务器在 Centos7 上。ping 百度死活 ping 不通,下载宝塔面板也下载不了,提示 wget: 无法解析主机地址 “download.bt.cn” 很是蛋疼。初步分析应该是服务器自带的 dns 有问题,我们就需要自己添加合适的 dns。
直接按照 CentOS 6 原来的方法修改了 /etc/resolv.conf 文件,发现每当重启网卡后 /etc/resolv.conf 文件会被重置为默认 isp 的 dns. 即 “generated by NetworkManager”。原因是 Centos7 的网络配置服务已经替换成 NetworkManager。
方法 1,使用 nmcli:
查看当前启动的连接
nmcli connection show
|
|
名称 UUID 类型 设备
|
|
System eth0 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 802-3-ethernet eth0
|
注意看我这里的网卡名称比较特殊,是有空格的。一般是直接输入名称修改就行了,但是由于我的网卡名称有空格,通过名称修改的方式不行,需要使用 UUID 的方式修改。这点一定要注意。
下面我写了两种修改的方式,任选一种:
# 通过名称修改
|
|
nmcli con mod eno0 ipv4.dns “8.8.8.8 114.114.114.114“
|
|
# 通过 UUID 修改
|
|
nmcli con mod 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 ipv4.dns “8.8.8.8 114.114.114.114“
|
修改后再执行以下指令使 DNS 设定立即生效:
# 通过名称重启,任选一种
|
|
nmcli con up eno0
|
|
# 通过 UUID 重启
|
|
nmcli con up 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03
|
方法 2,修改 NetworkManager 配置的方式后,使用原来的方式修改
修改 /etc/NetworkManager/NetworkManager.conf 文件,在 main 部分添加 “dns=none” 选项:
main]
|
|
plugins=ifcfg-rh
|
|
dns=none # 注意是这句
|
再手动修改 /etc/resolv.conf 文件,添加下面的 DNS
nameserver 8.8.8.8
|
|
nameserver 114.114.114.114
|
最后重启网卡
systemctl restart network