第 3 章 使用 Ansible playbook 管理 IdM DNS 区域
作为 Identity Management(IdM)管理员,您可以使用 ansible-freeipa
软件包中的 dnszone
模块来管理 IdM DNS 区的工作方式。
先决条件
- DNS 服务在 IdM 服务器中安装。有关如何使用 Ansible 安装带有集成 DNS 的 IdM 服务器的更多信息,请参阅使用 Ansible playbook 安装身份管理服务器。
3.1. 支持的 DNS 区类型 复制链接链接已复制到粘贴板!
本节论述了 Identity Management (IdM)支持( primary 和 forward 区域)的两种 DNS 区域类型,并包括 DNS 转发的示例场景。
本节对区域类型使用 BIND 术语,它与用于 Microsoft Windows DNS 的术语不同。BIND 服务器中的 Primary zones 与 Microsoft Windows DNS 中的 forward lookup zones 和 reverse lookup zones 作用相同。BIND 中的 forward zone 与 Microsoft Windows DNS 中的 条件转发器 相同。
- 主 DNS 区域
主 DNS 区域包含权威 DNS 数据,可以接受动态 DNS 更新。这个行为等同于标准 BIND 配置中的
类型 master
设置。您可以使用ipa dnszone
fluentd 命令管理主区。在遵守标准 DNS 规则时,每个主区必须包含
start of authority
(SOA)和nameserver
(NS)记录。IdM 在创建 DNS 区时自动生成这些记录,但您必须手动将 NS 记录复制到父区以创建正确的委托。根据标准 BIND 行为,查询该服务器没有权威的名称转发到其他 DNS 服务器。这些 DNS 服务器(也称为转发器)可能也可能不是查询的权威。
例 3.1. DNS 转发情况示例
IdM 服务器包含
test.example.
主区。此区域包含sub.test.example.
名称的 NS 委托记录。此外,test.example.
区域配置了sub.text.example
子区的192.0.2.254
转发器 IP 地址。客户端查询名称
不存在.test.example.
接收NXDomain
回答,并且没有发生任何转发,因为 IdM 服务器对这个名称有权威。另一方面,查询
host1.sub.test.example.
name 转发到配置的 forwarder192.0.2.254
,因为 IdM 服务器对此名称没有权威。- 转发 DNS 区域
从 IdM 的角度来看,转发 DNS 区域不包含任何权威数据。实际上,转发"zone"通常仅包含两部分信息:
- 域名
- 与域关联的 DNS 服务器的 IP 地址
所有关于属于定义的域的名称的查询都转发到指定的 IP 地址。这个行为等同于标准 BIND 配置中的 类型 forward
设置。您可以使用 ipa dnsforwardzone
fluentd 命令管理转发区。
在 IdM-Active Directory(AD)信任的上下文中,转发 DNS 区域特别有用。如果 IdM DNS 服务器对 idm.example.com 区域有权威,并且 AD DNS 服务器对 ad.example.com 区域有权威,则 ad.example.com 是 idm.example.com 主区域的 DNS 转发区域。这意味着,当查询来自 IdM 客户端以获取 somehost.ad.example.com 的 IP 地址时,IdM DNS 服务器将查询转发到 ad.example.com IdM DNS 转发区域中指定的 AD 域控制器。