第 28 章 使用 Ansible playbook 来管理 IdM DNS 区域
作为身份管理(IdM)管理员,您可以使用 ansible-freeipa
软件包中的 dnszone
模块来管理 IdM DNS 区域如何工作。
先决条件
- DNS 服务已安装在 IdM 服务器上。有关如何使用 Red Hat Ansible Engine 安装带有集成 DNS 的 IdM 服务器的更多信息,请参阅 使用 Ansible playbook 安装身份管理服务器。
28.1. 支持的 DNS 区域类型
身份管理 (IdM) 支持两种类型的 DNS 区域:primary 和 forward区域。此处描述了这两种类型的区,包括 DNS 转发的一个场景示例。
本指南对区域类型使用 BIND 术语,其不同于用于 Microsoft Windows DNS 的术语。BIND 服务器中的 Primary zones 与 Microsoft Windows DNS 中的 forward lookup zones 和 reverse lookup zones 作用相同。BIND 中的转发区域与 Microsoft Windows DNS 种的 conditional forwarders 的用途相同。
- 主 DNS 区域
主 DNS 区域包含权威 DNS 数据,并且可以接受动态 DNS 更新。此行为等同于标准 BIND 配置中的
type master
设置。您可以使用ipa dnszone-*
命令管理主区域。符合标准的 DNS 规则,每个主区域必须包含
start of authority
(SOA)和nameserver
(NS)记录。在创建 DNS 区域时,IdM 会自动生成这些记录,但您必须手动将 NS 记录复制到父区域,以创建正确的委托。符合标准的 BIND 行为,对不具有权威的服务器名称查询将被转发到其他 DNS 服务器。这些 DNS 服务器(所谓的转发器)可能是也可能不是查询的权威。
例 28.1. DNS 转发的示例场景
IdM 服务器包含
test.example.
主区域。此区域包含sub.test.example.
名称的 NS 委托记录。此外,test.example.
区域被配置为sub.text.example
子区域的192.0.2.254
转发器 IP 地址。查询名称
nonexistent.test.example.
的客户端会收到NXDomain
回答,且不会发生转发,因为 IdM 服务器是此名称的权威。另一方面,查询
host1.sub.test.example.
名称会被转发到配置的转发器192.0.2.254
,因为 IdM 服务器不是此名称的权威。- 转发 DNS 区域
从 IdM 的角度来看,转发 DNS 区域不包含任何权威数据。事实上,转发"区域"通常仅包含两段信息:
- 域名
- 与域关联的 DNS 服务器的 IP 地址
所有对属于定义的域的名称的查询都被转发到指定的 IP 地址。此行为等同于标准 BIND 配置中的 type forward
设置。您可以使用 ipa dnsforwardzone-*
命令来管理转发区域。
转发 DNS 区域在 IdM-活动目录(AD)信任的上下文中特别有用。如果 IdM DNS 服务器是 idm.example.com 区域的权威,且 AD DNS 服务器对是 ad.example.com 区域的权威,则 ad.example.com 是 idm.example.com 主区域的 DNS 转发区域。这意味着,当从 IdM 客户端查询 somehost.ad.example.com 的 IP 地址时,查询将被转发到 ad.example.com IdM DNS 转发区域中指定的 AD 域控制器。