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

相关推荐
syc78901237 小时前
中文语境下AI编码工具实战对比:从迭代体验看日常开发选择
linux·人工智能·ubuntu
vsropy9 小时前
Ubuntu网络图标消失问题/有网络问号
linux·运维·ubuntu
coderwu9 小时前
Ubuntu 24.04 终端输入 openclaw config 提示未找到命令解决办法
linux·运维·ubuntu
学途路漫漫19 小时前
Ubuntu 24.04 国内网络环境全面优化指南
linux·网络·ubuntu
S-码农19 小时前
vscode 通过 SSH 远程控制 Ubuntu
vscode·ubuntu·ssh
dust_and_stars19 小时前
Ubuntu 24.04 使用 Snap 安装 code-server、CLion、PyCharm、JetBrains Toolbox 完整教程
ubuntu·pycharm
学途路漫漫19 小时前
Ubuntu 24.04 安装 Howdy 面部识别登录完整指南(含国内网络环境踩坑)
ubuntu
火山上的企鹅20 小时前
Codex实战:APP远程升级服务搭建(二)阿里云ECS部署Node升级服务_Ubuntu_systemd_Nginx
nginx·ubuntu·阿里云·qgc
承渊政道21 小时前
【MySQL数据库学习】(MySQL内置函数)
数据库·学习·mysql·ubuntu·bash·数据库开发·数据库系统
2601_961845421 天前
法考真题及答案解析|历年真题|资料已整理
linux·windows·ubuntu·macos·centos·gnu