CentOS 7系统修改DNS地址的完整操作步骤与注意事项
CentOS7中要持久修改DNS,需要编辑网卡配置文件ifcfg,添加DNS1和DNS2后重启network服务。若NetworkManager已启用,则需在配置文件中设置dns=none,以防止其自动覆盖。注意:直接修改 etc resolv conf仅临时生效,重启服务后会被还原。采用此方法可确保DNS配置永久生效。
说到修改DNS,很多人第一反应是直接编辑 /etc/resolv.conf 文件,这确实是最快的方式。但实际使用中你会发现,只要重启网络服务或重启系统,这个文件就会被还原。原因在于 NetworkManager 或 network 服务会主动覆盖它。要想一劳永逸,最稳妥的办法还是修改网卡配置文件。
修改网卡配置文件(推荐,永久生效)
在 CentOS 7 中,默认使用 network 服务管理传统网卡(例如 ens33),DNS 配置需要写入对应接口的 ifcfg 文件。具体操作如下:
- 先查看网卡名称:执行
ip -br a或ls /sys/class/net/,常见的有ens33、eth0等 - 编辑配置文件:
sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33(注意替换为你实际的网卡名) - 在文件末尾追加以下内容(支持多个DNS,用空格分隔):
DNS1=114.114.114.114
DNS2=8.8.8.8 - 重启网络服务:
sudo systemctl restart network - 验证生效:执行
cat /etc/resolv.conf查看是否已经同步更新,再使用nslookup google.com测试,能正常解析即表示成功

禁用 NetworkManager 对DNS的覆盖(如果启用了 NM)
如果你的系统同时运行着 NetworkManager(桌面版或最小化安装后手动开启的情况很常见),它默认会接管DNS并覆写 /etc/resolv.conf。此时需要执行以下两步:
- 首先确认 NetworkManager 的状态:
systemctl is-active NetworkManager - 临时禁止其接管DNS:在
/etc/NetworkManager/NetworkManager.conf配置文件的[main]段下添加一行:dns=none - 重启 NetworkManager 服务:
sudo systemctl restart NetworkManager - 完成上述操作后,无论你是通过修改 ifcfg 文件还是直接编辑
/etc/resolv.conf,DNS 设置都不会再被覆盖
直接编辑 /etc/resolv.conf(仅用于临时调试)
该文件由 resolver 库直接读取,修改后立即生效,但缺点也很明显:
- 执行命令:
echo "nameserver 1.1.1.1" | sudo tee /etc/resolv.conf - 修改后马上生效,可以用
dig @1.1.1.1 github.com验证 - 但只要执行
systemctl restart network或dhclient -r && dhclient等操作,内容就会被还原为默认值 - 注意:不要删除原有的
search或domain行,否则可能导致本地主机名解析异常
最常见也最容易忽略的问题是 NetworkManager 和 network 服务共存时产生的冲突——如果不搞清楚到底是谁在管理DNS,只修改 resolv.conf 就像往漏水的桶里灌水,白费力气。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
Win10应用商店提示我们这边出了点问题解决方法
当Win10应用商店提示“我们这边出了点问题”时,可通过三步修复:第一步运行wsreset exe清除应用商店缓存,第二步在设置中重置MicrosoftStore应用,第三步以管理员身份打开PowerShell执行命令重新注册商店组件。按顺序操作,通常能解决该问题。
CentOS从零开始安装最新版Docker的完整详细操作教程
在CentOS上安装最新版DockerCE,需要先确认系统版本(推荐使用CentOSStream9 10),然后使用dnf添加阿里云源以加速下载,列出可用版本后指定安装(如docker-ce-25 0 0),同时安装containerd io,并配置daemon json设置国内镜像源,从而有效避免默认仓库版本滞后或安装失败,确保成功。
Linux操作系统中查看CPU主频实时动态的详细方法
Linux查看CPU实时主频应使用 sys scaling_cur_freq,该接口直接输出每核当前频率(kHz),轻量无延迟且无需root。而 proc cpuinfo的cpuMHz存在缓存延迟,无法捕捉毫秒级跳变,不适用于实时监控。
Linux系统创建新普通用户的详细操作教程
Linux中创建普通用户需注意:useradd命令必须加-m参数创建家目录并指定-s bin bash;新用户默认无sudo权限,需手动加入sudo或wheel组;创建后必须用passwd设置密码,否则无法登录。adduser脚本可自动完成上述操作,但仅适用于Debian Ubuntu系统。
CentOS 7系统修改DNS地址的完整操作步骤与注意事项
CentOS7中要持久修改DNS,需要编辑网卡配置文件ifcfg,添加DNS1和DNS2后重启network服务。若NetworkManager已启用,则需在配置文件中设置dns=none,以防止其自动覆盖。注意:直接修改 etc resolv conf仅临时生效,重启服务后会被还原。采用此方法可确保DNS配置永久生效。
- 热门数据榜
相关攻略
2026-08-05 18:52
2026-08-05 18:52
2026-08-05 18:52
2026-08-05 18:51
2026-08-05 18:51
2026-08-05 18:51
2026-08-05 18:50
2026-08-05 18:50
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程

