如何在 Debian 12 上配置我的 DNS 设置?

如何在 Debian 12 上配置我的 DNS 设置?

我正在尝试更改我的 Debian 12 VPS 上的 DNS 设置,我的意思是,我想使用公共解析器(如 1.1.1.1)而不是我的 VPS 主机的解析器。

我记得在 Debian 11 中我可以编辑/etc/resolv.conf文件,然后重新启动,resolvconf.service一切都会正常工作。

然而,在 Debian 12 上,当我去编辑时,/etc/resolv.conf它会出现一个大警告:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
# 127.0.0.53 is the systemd-resolved stub resolver.
# run "resolvectl status" to see details about the actual nameservers.

那么,如果我无法编辑此文件,我可以在哪里配置我的解析器?

我尝试阅读man resolvconfman resolv.conf但这让我更加困惑。

有任何想法吗?

答案1

警告(这显然是 chatgpt)

systemd-resolved要在使用 systemd 作为其初始化系统的 Linux 系统(例如许多现代发行版,如 Ubuntu)上添加自定义 DNS(域名系统)名称服务器,您可以按照以下步骤操作:

  1. 编辑systemd-resolved配置文件

    systemd-resolved使用文本编辑器(如nano或 )打开配置文件进行编辑vi。在大多数系统上,此文件位于/etc/systemd/resolved.conf。您可能需要超级用户权限才能编辑此文件,因此请使用sudo

    sudo nano /etc/systemd/resolved.conf
    
  2. 添加名称服务器

    在配置文件中,您可以使用DNS指令指定 DNS 服务器。如果指令不存在,您可以添加它。如果指令已存在,您可以将其他 DNS 服务器附加到其中。

    例如,要添加 Google 的公共 DNS 服务器(8.8.8.8)和 Cloudflare 的 DNS 服务器(1.1.1.1),您可以执行以下操作:

    [Resolve]
    DNS=8.8.8.8 1.1.1.1
    

    您可以添加多个名称服务器,以空格分隔。

  3. 重启 systemd-resolved

    编辑配置文件后,您应该重新启动systemd-resolved服务以使更改生效:

    sudo systemctl restart systemd-resolved
    
  4. 验证更改

    systemd-resolved您可以通过查询DNS 信息来验证您的自定义名称服务器是否正在使用。使用以下systemd-resolve命令检查:

    sudo resolvectl status
    

    您应该会在输出中的“DNS 服务器”下看到您的自定义名称服务器列表。

就这样!您已成功使用 添加自定义 DNS 名称服务器systemd-resolved。这些更改应在重新启动后保留,并且您的系统将使用指定的 DNS 服务器进行名称解析。

相关内容