51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Centos禁止在重启网卡时对resolv.conf的修改

概述

官方参考文档:

https://access.redhat.com/solutions/7412
https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/8/html/configuring_and_managing_networking/manually-configuring-the-etc-resolv-conf-file_configuring-and-managing-networking

默认情况下,网络管理器(NetworkManager)使用来自活跃网络管理器连接配置集的 DNS 设置动态地更新 /etc/resolv.conf 文件。这部分论述了如何在 /etc/resolv.conf 中禁用此功能的不同选项来手动配置 DNS 设置。

解决办法

本篇文章,使用第二个链接方法。

在 NetworkManager 配置中禁用 DNS 处理

这部分论述了如何在 NetworkManager 配置中禁用 DNS 处理来手动配置 /etc/resolv.conf 文件。

流程
  1. 作为 root 用户,使用文本编辑器使用以下内容创建 /etc/NetworkManager/conf.d/90-dns-none.conf 文件:

    [main]
    dns=none
    
  2. 重新载入 NetworkManager 服务:

    # systemctl reload NetworkManager
    

    注意

    重新载入该服务后,NetworkManager 不再更新 /etc/resolv.conf 文件。但是该文件的最后内容将被保留。

  3. (可选)从 Generated by NetworkManager 中删除 /etc/resolv.conf 注释以避免混淆。

验证步骤
  1. 编辑 /etc/resolv.conf 文件并手动更新配置。

  2. 重新载入 NetworkManager 服务:

    # systemctl reload NetworkManager
    
  3. 显示 /etc/resolv.conf 文件:

    # cat /etc/resolv.conf
    

    如果您成功禁用了 DNS 处理,NetworkManager 不会覆盖手动配置的设置。

其它资源
  • 详情请查看 dns man page 中的 NetworkManager.conf(5) 参数描述。
使用符号链接替换 /etc/resolv.conf 来手动配置 DNS 设置

如果 /etc/resolv.conf 是符号链接,NetworkManager 不会自动更新 DNS 配置。这部分论述了如何使用 DNS 配置的其它文件的符号链接替换 /etc/resolv.conf

先决条件
  • rc-manager 选项没有设置为 file。要验证,请使用 NetworkManager --print-config 命令。
流程
  1. 创建文件,如 /etc/resolv.conf.manually-configured,并将您的环境的 DNS 配置添加到其中。使用与原来的 /etc/resolv.conf 相同的参数和语法。

  2. 删除 /etc/resolv.conf 文件:

    # rm /etc/resolv.conf
    
  3. 创建名为 /etc/resolv.conf 的符号链接,引用 /etc/resolv.conf.manually-configured:

    # ln -s /etc/resolv.conf.manually-configured /etc/resolv.conf
    
赞(0)
未经允许不得转载:工具盒子 » Centos禁止在重启网卡时对resolv.conf的修改