【ubuntu】 DNS 设置工具 resolvectl

什么是 resolvectl

"resolvectl" 是一个用于管理系统 DNS 解析配置的命令行工具。它是 systemd-resolved 服务的一部分,该服务是在许多基于 Systemd 的 Linux 发行版中用于管理网络配置和 DNS 解析的系统服务。

通过 resolvectl 命令,可以查看当前系统的 DNS 配置、添加或删除 DNS 服务器、启用或禁用特定的 DNS 解析器等。

以下是一些常用的 resolvectl 命令:

  • resolvectl status:显示当前的 DNS 配置状态,包括当前使用的 DNS 解析器、域名搜索列表等信息。

  • resolvectl dns:列出当前配置的 DNS 解析器列表。

  • resolvectl domain:列出当前配置的域名搜索列表。

  • resolvectl query example.com:执行 DNS 查询来获取指定域名的 IP 地址。

  • resolvectl dns <interface> <DNS server>:设置指定网络接口的 DNS 解析服务器。

  • resolvectl domain <interface> <domain>:设置指定网络接口的域名搜索列表。

请注意,使用 resolvectl 命令可能需要管理员权限(使用 sudo 或 root 用户)。

有关更多详细信息和使用示例,可以查阅您所使用的 Linux 发行版的文档或 resolvectl 命令的 man 手册页(man resolvectl)。

使用resolvectl添加DNS服务器

要使用 resolvectl 命令添加 DNS 服务器,请按照以下步骤进行操作:

  1. 打开终端或命令行界面。

  2. 使用以下命令列出当前的 DNS 配置,以确定要添加 DNS 服务器的网络接口:

    shell 复制代码
    resolvectl status

    这将显示当前的 DNS 配置信息,包括网络接口和已配置的 DNS 服务器。

  3. 使用以下命令添加 DNS 服务器:

    shell 复制代码
    sudo resolvectl dns <interface> <DNS server>

    <interface> 替换为要添加 DNS 服务器的网络接口标识符,例如 "wlan0" 或 "eth0"。将 <DNS server> 替换为要添加的 DNS 服务器的 IP 地址。

    例如,要将 DNS 服务器设置为 Google Public DNS(8.8.8.8),并将其添加到 "wlan0" 接口上,可以运行以下命令:

    shell 复制代码
    sudo resolvectl dns wlan0 8.8.8.8
  4. 输入您的管理员密码以确认命令。

  5. 您可以使用 resolvectl status 命令验证新的 DNS 服务器是否已成功添加到指定的网络接口。

如果您想删除已添加的 DNS 服务器,可以使用 resolvectl dns 命令结合 --reset 选项来恢复默认配置。例如:

shell 复制代码
sudo resolvectl dns <interface> --reset

请确保将 <interface> 替换为要重置 DNS 服务器的网络接口标识符。

添加多个 DNS 服务

resolvectl 可以同时添加多个 DNS 服务器到系统配置中。通过添加多个 DNS 服务器,可以提供备用服务器,以便在一个服务器不可用时使用其他服务器进行 DNS 解析。

要同时添加多个 DNS 服务器,应使用 resolvectl 命令多次执行 dns 子命令。每次执行命令时,指定要添加 DNS 服务器的网络接口和相应的 DNS 服务器 IP 地址。

以下是添加多个 DNS 服务器的示例:

shell 复制代码
sudo resolvectl dns <interface> <DNS server 1>
sudo resolvectl dns <interface> <DNS server 2>
sudo resolvectl dns <interface> <DNS server 3>

<interface> 替换为要添加 DNS 服务器的网络接口标识符,例如 "wlan0" 或 "eth0"。将 <DNS server 1>, <DNS server 2>, <DNS server 3> 等依次替换为要添加的 DNS 服务器的 IP 地址。

例如,要同时添加 Google Public DNS (8.8.8.8) 和 Cloudflare DNS (1.1.1.1) 到 "wlan0" 接口上,可以运行以下命令:

shell 复制代码
sudo resolvectl dns wlan0 8.8.8.8
sudo resolvectl dns wlan0 1.1.1.1

这样就在指定的网络接口上添加了两个 DNS 服务器。

注意,DNS 解析将按照添加的顺序进行尝试。如果一个服务器无法响应,系统将尝试使用下一个服务器进行解析。

相关推荐
光通信学徒3 小时前
ubuntu图形界面右上角网络图标找回解决办法
linux·服务器·ubuntu·信息与通信·模块测试
暗恋 懒羊羊4 小时前
Linux 生产者消费者模型
linux·开发语言·ubuntu
GFCGUO9 小时前
Ubuntu18.04配置OpenPCDet并运行demo过程记录
linux·python·学习·ubuntu·conda·pip
GFCGUO15 小时前
Ubuntu18.04安装cuda11.1(出现c++版本问题)
linux·运维·ubuntu
‍。。。15 小时前
Ubuntu 系统崩了,如何把数据拷下来
数据库·ubuntu·php
一叶知秋@qqy1 天前
Kubernetes-环境篇-02-ubuntu开发环境搭建
ubuntu·容器·kubernetes
吴恩达亲传弟子1 天前
【Bug】解决 Ubuntu 中 “error: Unable to Find Python3 Executable” 错误
linux·ubuntu·bug
漫无目的行走的月亮2 天前
Ubuntu下安装Zookeeper集群
linux·ubuntu·zookeeper
AlenTech2 天前
Ubuntu 安装 Docker Compose
ubuntu·docker·eureka
AlenTech2 天前
解决Ubuntu无法找到python3.7的包的问题 E: Couldn‘t find any package by glob ‘python3.7‘
linux·python·ubuntu