【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 解析将按照添加的顺序进行尝试。如果一个服务器无法响应,系统将尝试使用下一个服务器进行解析。

相关推荐
wowocpp2 小时前
ubuntu 22.04 硬件配置 查看 显卡
linux·运维·ubuntu
山河君2 小时前
ubuntu使用DeepSpeech进行语音识别(包含交叉编译)
linux·ubuntu·语音识别
knighthood20013 小时前
解决:ros进行gazebo仿真,rviz没有显示传感器数据
c++·ubuntu·ros
wowocpp14 小时前
ubuntu 22.04 server 安装 anaconda3
linux·运维·ubuntu
wowocpp16 小时前
ubuntu 22.04 防火墙 ufw
linux·运维·ubuntu
188_djh1 天前
# Python基础到实战一飞冲天(一)--linux基础(一)
linux·开发语言·python·ubuntu·centos·os·operationsystem
winds~1 天前
ubuntu中安装matplotcpp绘图
linux·运维·ubuntu
UsamaBinLaden1 天前
Ubuntu和Debian系列的Release默认shell解释器变更
linux·ubuntu·debian
黑风风2 天前
Ubuntu 22 安装 Apache Doris 3.0.3 笔记
笔记·ubuntu·apache
knighthood20012 天前
ros中仿真编写launch时robot_state_publisher,output参数
c++·ubuntu·ros