修改 /etc/resolv.conf

修改 /etc/resolv.conf

/etc/resolv.conf 是 Linux 系统中用于配置 DNS 解析器的文件。确认 systemd-resolvedNetworkManager 服务是否仍在管理 DNS 设置

  1. 检查 systemd-resolved 服务的状态:

    systemctl status systemd-resolved
    

    如果服务正在运行,你会看到 active (running) 的状态信息。

  2. 检查 NetworkManager 服务的状态:

    systemctl status NetworkManager
    

    类似上面。

使用 resolvconf

确认前面服务是否开放将其关闭后,

在 Debian 12 中,要永久设置 DNS 服务器为 8.8.8.88.8.4.4,你可以按照以下步骤操作:

  1. 打开 /etc/resolvconf/resolv.conf.d/head 配置文件,

    sudo vi /etc/resolvconf/resolv.conf.d/head
    

    如果没有 /etc/resolvconf/ 目录,记着安装 resolvconf

    sudo apt install resolvconf
    
  2. 在文件中添加以下两行,指定你希望使用的 DNS 服务器地址:

    nameserver 8.8.8.8
    nameserver 8.8.4.4
    
  3. 保存更改后,重启 resolvconf 服务

    sudo systemctl restart resolvconf.service
    

    或者重启

    sudo reboot
    
  4. 重启后,查看 /etc/resolv.conf 文件

    cat /etc/resolv.conf
    

结尾说明

安装完成后,你可以使用 /etc/resolvconf/resolv.conf.d/ 文件来管理 DNS 解析设置。这些文件允许你修改 /etc/resolv.conf 文件的内容:

  • head 文件的内容会被添加到自动生成的 /etc/resolv.conf 文件的最前面。
  • base 文件包含基本的解析器信息,当没有接口配置时,这个文件中的行也会被包含在解析器配置文件中。
  • tail 文件的内容会被添加到自动生成的 /etc/resolv.conf 文件的最后面。

有时候重启刷新是其他网络管理的服务对其覆盖操作,建议是逐一排查能够自启动的服务,官方还存在一种硬核手法,就是直接限制文件的可写,但是这种方法可能会导致某些服务异常

Debian 官方建议参考:https://wiki.debian.org/resolv.conf

posted @ 2024-03-18 12:30  sha0dow  阅读(2905)  评论(0编辑  收藏  举报