Manpages

NAME

resolved.conf, resolved.conf.d - 网 络 名 字 解 析 服 务 配 置 文 件

SYNOPSIS

/etc/systemd/resolved.conf

/etc/systemd/resolved.conf.d/*.conf

/run/systemd/resolved.conf.d/*.conf

/usr/lib/systemd/resolved.conf.d/*.conf

描 述

这 些 配 置 文 件 控 制 着 本 地 DNS与 LLMNR名 字 解 析

配 置 目 录 及 其 优 先 级

默 认 设 置 是 在 编 译 期 间 确 定 的 , 所 以 仅 在 确 实 需 要 修 改 默 认 设 置 的 情 况 下 , 才 需 要 使 用 配 置 文 件 。 位 于 /etc/systemd/ 目 录 中 的 初 始 配 置 文 件 , 仅 包 含 了 展 示 选 项 默 认 值 的 注 释 , 目 的 在 于 方 便 系 统 管 理 员 查 看 和 直 接 修 改 。 如 果 软 件 包 想 要 自 定 义 某 些 默 认 设 置 , 那 么 必 须 将 自 定 义 的 配 置 文 件 安 装 到 /usr/lib/systemd/*.conf.d/ 目 录 中 。 /etc/ 目 录 仅 供 系 统 管 理 员 使 用 。 系 统 管 理 员 可 以 利 用 下 面 的 逻 辑 来 覆 盖 默 认 设 置 : 主 配 置 文 件 最 先 被 读 取 , 优 先 级 也 最 低 。 所 有 *.conf.d/ 中 的 配 置 文 件 都 会 覆 盖 主 配 置 文 件 中 的 设 置 。 所 有 *.conf.d/ 中 的 配 置 文 件 (无 论 位 于 哪 个 目 录 中 ), 统 一 按 照 文 件 名 的 字 典 顺 序 处 理 。 如 果 在 多 个 配 置 文 件 中 设 置 了 同 一 个 选 项 , 那 么 仅 以 文 件 名 最 靠 后 (字 典 顺 序 )的 那 一 个 为 准 。 为 了 便 于 排 序 , 建 议 给 所 有 *.conf.d/ 中 的 配 置 文 件 都 加 上 两 位 十 进 制 数 字 的 文 件 名 前 缀 。 如 果 系 统 管 理 员 想 要 屏 蔽 /usr/lib/ 目 录 中 的 某 个 配 置 文 件 , 那 么 最 佳 做 法 是 在 /etc/ 目 录 中 创 建 一 个 指 向 /dev/null 的 同 名 符 号 链 接 , 即 可 彻 底 屏 蔽 /usr/lib/ 目 录 中 的 同 名 文 件 。

选 项

下 列 选 项 都 位 于 "[Resolve]" 小 节 :

DNS= 一 个 空 格 分 隔 的 IPv4 与 IPv6 地 址 列 表 。 用 作 系 统 的 全 局 DNS服 务 器 。 DNS请 求 将 被 首 先 发 送 给 systemd-networkd.service(8) 中 针 对 特 定 连 接 设 置 的 DNS服 务 器 或 者 由 外 部 程 序 在 运 行 时 设 置 的 DNS服 务 器 , 然 后 才 会 发 送 给 此 处 设 置 的 全 局 DNS服 务 器 。 出 于 兼 容 性 考 虑 , 如 果 未 设 置 此 选 项 , 那 么 将 使 用 /etc/resolv.conf 中 的 DNS服 务 器 (如 果 其 中 确 实 配 置 了 DNS服 务 器 的 话 )。 此 选 项 的 默 认 值 为 空 。

FallbackDNS= 一 个 空 格 分 隔 的 IPv4 与 IPv6 地 址 列 表 。 用 作 系 统 的 替 补 DNS服 务 器 。 在 systemd-networkd.service(8) 中 针 对 特 定 连 接 配 置 的 任 何 DNS服 务 器 的 优 先 级 都 高 于 此 选 项 中 设 置 的 DNS服 务 器 , 也 高 于 上 述 DNS= 中 设 置 的 DNS服 务 器 , 同 样 也 高 于 /etc/resolv.conf 中 设 置 的 DNS服 务 器 。 所 以 , 此 选 项 所 设 置 的 DNS服 务 器 仅 在 实 在 找 不 到 可 用 DNS的 情 况 下 才 会 被 使 用 。 若 未 设 置 此 选 项 , 则 使 用 程 序 内 置 的 默 认 DNS服 务 器 列 表 。

Domains= 一 个 空 格 分 隔 的 域 名 列 表 。 在 解 析 不 含 "."的 域 名 时 , 将 被 用 作 域 名 后 缀 , 以 将 这 些 域 名 转 化 为 FQDN(全 限 定 域 名 )。 这 些 后 缀 将 会 严 格 按 照 这 里 设 置 的 顺 序 依 次 尝 试 , 直 到 解 析 成 功 。 出 于 兼 容 性 考 虑 , 如 果 未 设 置 此 选 项 , 那 么 将 使 用 /etc/resolv.conf 中 列 出 的 搜 索 域 (如 果 其 中 确 实 配 置 了 搜 索 域 的 话 )。 此 选 项 的 默 认 值 为 空 。 如 果 指 定 的 域 名 带 有 "~" 前 缀 , 那 么 表 示 它 不 是 一 个 搜 索 域 , 而 是 一 个 "路 由 专 用 域 名 ", 也 就 是 仅 用 于 将 指 定 的 域 名 查 询 请 求 优 先 路 由 到 上 文 DNS= 设 置 的 全 局 DNS服 务 器 上 去 。 注 意 , 如 果 不 存 在 针 对 特 定 连 接 的 DNS服 务 器 , 那 么 "~" 语 法 没 有 任 何 实 际 效 果 。 特 殊 值 "~." 表 示 将 所 有 DNS查 询 请 求 优 先 路 由 到 上 文 DNS= 设 置 的 全 局 DNS服 务 器 上 去 (前 面 的 波 浪 号 表 示 这 是 一 个 "路 由 专 用 域 名 ", 后 面 的 点 表 示 DNS根 域 名 (也 就 是 所 有 域 名 的 后 缀 ))。

LLMNR= 必 须 设 为 "resolve" 或 布 尔 值 。 控 制 本 机 对 LLMNR(Link-Local Multicast Name Resolution, RFC 4794 [1] )的 支 持 。 设 为 yes 表 示 完 全 支 持 LLMNR responder 与 resolver ; 设 为 no 表 示 彻 底 不 支 持 LLMNR ; 设 为 "resolve" 表 示 仅 支 持 LLMNR resolver 而 不 支 持 LLMNR responder ; 注 意 , systemd-networkd.service(8) 中 还 有 针 对 特 定 连 接 的 LLMNR设 置 。 对 于 某 个 特 定 的 连 接 来 说 , LLMNR 将 仅 在 针 对 该 连 接 的 设 置 与 全 局 设 置 都 开 启 的 情 况 下 , 才 会 开 启 。

DNSSEC= 必 须 设 为 布 尔 值 或 特 殊 值 "allow-downgrade" 。 设 为 yes 表 示 使 用 DNSSEC 机 制 检 查 所 有 DNS 应 答 的 有 效 性 (多 播 DNS 与 LLMNR 除 外 )。 如 果 某 个 DNS应 答 被 鉴 定 为 无 效 , 那 么 上 层 应 用 将 会 得 到 一 个 "查 询 失 败 "的 结 果 。 注 意 , 这 意 味 着 DNS 服 务 器 必 须 支 持 DNSSEC 。 如 果 某 个 DNS 服 务 器 不 能 正 确 支 持 DNSSEC , 那 么 从 该 DNS 服 务 器 接 收 到 的 所 有 应 答 都 将 被 视 为 无 效 应 答 。 设 为 "allow-downgrade" 表 示 : 如 果 某 个 DNS 服 务 器 不 能 正 确 支 持 DNSSEC , 那 么 将 不 使 用 DNSSEC 机 制 检 查 该 DNS 应 答 的 有 效 性 。 注 意 , 这 将 导 致 DNSSEC 机 制 形 同 虚 设 , 从 而 造 成 安 全 漏 洞 。 设 为 no 则 表 示 彻 底 禁 用 DNSSEC 机 制 。 注 意 , 因 为 DNSSEC 需 要 额 外 查 询 更 多 的 DNS数 据 , 所 以 , 开 启 此 选 项 会 减 慢 DNS查 询 速 度 。

DNSSEC requires knowledge of "trust anchors" to prove data integrity. The trust anchor for the Internet root domain is built into the resolver, additional trust anchors may be defined with dnssec-trust-anchors.d(5). Trust anchors may change at regular intervals, and old trust anchors may be revoked. In such a case DNSSEC validation is not possible until new trust anchors are configured locally or the resolver software package is updated with the new root trust anchor. In effect, when the built-in trust anchor is revoked and DNSSEC= is yes, all further lookups will fail, as it cannot be proved anymore whether lookups are correctly signed, or validly unsigned. If DNSSEC= is set to "allow-downgrade" the resolver will automatically turn off DNSSEC validation in such a case.

Client programs looking up DNS data will be informed whether lookups could be verified using DNSSEC, or whether the returned data could not be verified (either because the data was found unsigned in the DNS, or the DNS server did not support DNSSEC or no appropriate trust anchors were known). In the latter case it is assumed that client programs employ a secondary scheme to validate the returned DNS data, should this be required.

It is recommended to set DNSSEC= to yes on systems where it is known that the DNS server supports DNSSEC correctly, and where software or trust anchor updates happen regularly. On other systems it is recommended to set DNSSEC= to "allow-downgrade".

In addition to this global DNSSEC setting systemd-networkd.service(8) also maintains per-link DNSSEC settings. For system DNS servers (see above), only the global DNSSEC setting is in effect. For per-link DNS servers the per-link setting is in effect, unless it is unset in which case the global setting is used instead.

Site-private DNS zones generally conflict with DNSSEC operation, unless a negative (if the private zone is not signed) or positive (if the private zone is signed) trust anchor is configured for them. If "allow-downgrade" mode is selected, it is attempted to detect site-private DNS zones using top-level domains (TLDs) that are not known by the DNS root server. This logic does not work in all private zone setups. 默 认 值 是 no

Cache= 必 须 设 为 布 尔 值 。 默 认 值 "yes" 表 示 缓 存 先 前 已 经 解 析 成 功 的 域 名 直 到 缓 存 过 期 , 以 避 免 重 复 查 询 。 注 意 , 关 闭 缓 存 不 但 浪 费 网 络 流 量 , 更 容 易 造 成 访 问 延 迟 , 尤 其 是 在 使 用 了 DNSSEC的 时 候 。 注 意 , 对 于 IP地 址 为 127.0.0.1 或 ::1 之 类 的 本 机 DNS来 说 , DNS缓 存 总 是 关 闭 的 。 这 样 做 是 为 了 避 免 不 必 要 的 多 次 缓 存 。

参 见

systemd(1), systemd-resolved.service(8), systemd-networkd.service(8), dnssec-trust-anchors.d(5), resolv.conf(4)

NOTES

1.

RFC 4794

https://tools.ietf.org/html/rfc4795

本 页 面 中 文 版 由 中 文 man 手 册 页 计 划 提 供 。 翻 译 人 员 : 金 步 国 金 步 国 作 品 集 : http://www.jinbuguo.com 中 文 man 手 册 页 计 划 : https://github.com/man-pages-zh/manpages-zh