33.4. 管理主 DNS 区域
33.4.1. 添加和删除主 DNS 区域
在 Web UI 中添加主 DNS 区域
- 打开 Network Services 选项卡,然后选择 DNS 子选项卡,后跟 DNS Zones 部分。
图 33.1. 管理 DNS 主区
- 要添加新的 master 区域,请单击所有区域列表顶部的。
图 33.2. 添加主 DNS 区域
- 提供区域名称,然后单击。
图 33.3. 输入新的 master 区域
从命令行添加主 DNS 区域
ipa dnszone-add 命令向 DNS 域添加新区域。添加新区要求您指定新子域的名称。您可以使用以下命令直接传递子域名称:
$ ipa dnszone-add newserver.example.com
如果没有将名称传递给 ipa dnszone-add,脚本会自动提示它。
ipa dnszone-add 命令也接受各种命令行选项。如需这些选项的完整列表,请运行 ipa dnszone-add --help 命令。
删除主 DNS 区域
要在 Web UI 中删除 master DNS 区域,在所有区列表中,按区域名称选择复选框,然后单击
。
图 33.4. 删除主 DNS 区域
要从命令行删除主 DNS 区域,请使用 ipa dnszone-del 命令。例如:
$ ipa dnszone-del server.example.com
33.4.2. 为主 DNS 区域添加额外的配置
IdM 使用特定默认配置创建新区域,如刷新周期、传输设置或缓存设置。
DNS 区域配置属性
可用的区设置列在 表 33.1 “zone 属性” 中。除了为区域设置实际信息外,设置还定义 DNS 服务器如何处理 授权起始 (SOA)记录条目,以及如何从 DNS 名称服务器更新其记录。
属性 | 命令行选项 | 描述 |
---|---|---|
权威名称服务器 | --name-server |
设置主 DNS 名称服务器的域名,也称为 SOA MNAME。
默认情况下,每个 IdM 服务器在 SOA MNAME 字段中公告其自身。因此,使用
--name-server 存储在 LDAP 中的值将被忽略。
|
管理员电子邮件地址 | --admin-email | 设置要用于区域管理员的电子邮件地址。这默认为主机上的 root 帐户。 |
SOA 串行 | --serial | 在 SOA 记录中设置序列号。请注意,IdM 会自动设置版本号,用户不应该修改它。 |
SOA 刷新 | --refresh | 设置辅助 DNS 服务器在从主 DNS 服务器请求更新前等待的时间间隔(以秒为单位)。 |
SOA 重试 | --retry | 在重试失败的刷新操作前将等待的时间(以秒为单位)。 |
SOA 过期 | --expire | 设置辅助 DNS 服务器在结束操作尝试前尝试执行刷新更新的时间,以秒为单位。 |
SOA 最小值 | --minimum | 根据 RFC 2308,为负缓存设置生存时间(TTL)值(以秒为单位)。 |
SOA 时间生存 | --ttl | 为区域 apex 的记录设置 TTL(以秒为单位)。例如,在区域 example.com 中,配置了名称 example.com 下的所有记录(A、NS 或 SOA),但不影响其他域名,如 test.example.com 。 |
默认生存时间 | --default-ttl | 为区域中的所有值(以秒为单位)设置默认生存时间(TTL)值(以秒为单位)。更改生效后,需要在所有 IdM DNS 服务器上重新启动 named-pkcs11 服务。 |
BIND 更新策略 | --update-policy |
设置允许 DNS 区域中的客户端的权限。
如需有关 更新策略语法的更多信息,请参阅 BIND 9 管理员参考手册中的动态 更新策略。
|
动态更新 | --dynamic-update =TRUE|FALSE | 为客户端启用 DNS 记录的动态更新。
请注意,如果设置为 false,IdM 客户端计算机将无法添加或更新其 IP 地址。请参阅 第 33.5.1 节 “启用动态 DNS 更新” 了解更多信息。
|
允许传输 | --allow-transfer =string |
提供允许传输给定区的 IP 地址或网络名称列表,用分号(;)分隔。
默认情况下禁用区域传送。默认的
--allow-transfer 值为 none 。
|
允许查询 | --allow-query | 提供允许发出 DNS 查询的 IP 地址或网络名称列表,用分号(;)分隔。 |
允许 PTR 同步 | --allow-sync-ptr =1|0 | 设置区域的 A 或 AAAA 记录(正向记录)是否将自动与 PTR(反向)记录同步。 |
区域转发器 | --forwarder =IP_address | 指定专门为 DNS 区域配置的转发器。这与 IdM 域中使用的任何全局转发器分开。
要指定多个转发器,请多次使用 选项。
|
forward 策略 | --forward-policy =none|only|first | 指定 forward 策略。有关支持的策略的详情,请参考 “forward 策略”一节 |
在 Web UI 中编辑区域配置
要从 Web UI 管理 DNS master 区域,请打开 网络服务 选项卡,然后选择 DNS 子选项卡,后跟 DNS Zones 部分。
图 33.5. DNS 主区管理
要在 DNS Zones 部分编辑现有的 master 区域:
- 单击所有区域列表中的区域名称,以打开 DNS 区域页面。
图 33.6. 编辑 master zone
- 单击 Settings,然后根据需要更改区域配置。
图 33.7. Master zone Edit 页面中的 Settings 选项卡
有关可用设置的详情,请参考 表 33.1 “zone 属性”。 - 单击以确认新配置。
注意
如果您要将所有区域的默认时间更改为 live(TTL),在所有 IdM DNS 服务器上重新启动
named-pkcs11
服务,以使更改生效。所有其他设置都会立即自动激活。
从命令行编辑区域配置
要从命令行修改现有 master DNS 区域,请使用 ipa dnszone-mod 命令。有关可用设置的详情,请参考 表 33.1 “zone 属性”。
如果 DNS 区域条目中不存在属性,ipa dnszone-mod 命令会添加属性。如果 属性存在,则 命令使用指定的值覆盖当前值。
有关 ipa dnszone-mod 及其选项的详细信息,请运行 ipa dnszone-mod --help 命令。
注意
如果您要将所有区域的默认时间更改为 live(TTL),在所有 IdM DNS 服务器上重新启动
named-pkcs11
服务,以使更改生效。所有其他设置都会立即自动激活。
33.4.3. 启用区传输
名称服务器维护区域的权威数据;对区域进行的更改必须在 DNS 域的名称服务器之间发送和分发。区域传送 将所有资源记录从一个名称服务器复制到另一个名称服务器。
重要
IdM 集成的 DNS 是多主控机。IdM 区域中的 SOA 序列号不会在 IdM 服务器间同步。因此,请将 DNS 从属服务器配置为仅使用一个 IdM 主服务器。这可防止由非同步 SOA 序列号导致的区域传送失败。
在 UI 中启用区传输
打开 DNS 区页面,如 “在 Web UI 中编辑区域配置”一节 所述,并切换到 Settings 选项卡。
在 Allow transfer 下,指定将区域记录传输到的名称服务器。
图 33.8. 启用区传输
单击 DNS 区域页面顶部的
,以确认新配置。
从命令行启用区域传输
要从命令行启用区域传送,请将
--allow-transfer
选项添加到 ipa dnszone-mod 命令中。使用 --allow-transfer
指定区域记录传输到的名称服务器的列表。例如:
[user@server ~]$ ipa dnszone-mod --allow-transfer="192.0.2.1;198.51.100.1;203.0.113.1" example.com
在
绑定
服务中启用区传输后,可以按名称传输 IdM DNS 区域,如 dig
工具:
[root@server ~]# dig @ipa-server zone_name AXFR
33.4.4. 在 DNS 区域中添加记录
IdM 支持许多不同的记录类型。以下四项最常使用:
- 一个
- 这是主机名和普通 IPv4 地址的基本映射。A 记录的记录名称是主机名,如
www
。A 记录的 IP Address 值是一个标准的 IPv4 地址,如192.0.2.1
。有关 A 记录的更多信息,请参阅 RFC 1035。 - AAAA
- 这是主机名和 IPv6 地址的基本映射。AAAA 记录的记录名称是主机名,如
www
。IP Address 值是一个标准的十六进制 IPv6 地址,如2001:DB8::1111
。有关 AAAA 记录的更多信息,请参阅 RFC 3596。 - SRV
- 服务(SRV)资源记录将服务名称映射到 提供该特定服务的服务器的 DNS 名称。例如,此记录类型可以将 LDAP 目录等服务映射到管理该服务的服务器。SRV 记录的记录名称格式为
_service._protocol
,如_ldap._tcp
。SRV 记录的配置选项包括目标服务的优先级、权重、端口号和主机名。有关 SRV 记录的更多信息,请参阅 RFC 2782。 - PTR
- 指针记录类型(PTR)记录添加反向 DNS 记录,该记录将 IP 地址映射到域名。注意IPv4 地址的所有反向 DNS 查找都使用在
in-addr.arpa.
域中定义的反向条目。反向地址(人类可读形式)与常规 IP 地址正好相反,其中in-addr.arpa.
域附加到该地址。例如,对于网络地址192.0.2.0/24
,反向区域为2.0.192.in-addr.arpa
。PTR 记录的记录名称必须使用 RFC 1035 指定的标准格式,以 RFC 2317 和 RFC 3596 为单位进行扩展。主机名值必须是您要为其创建记录的主机的规范主机名。如需更多信息,请参阅 例 33.8 “PTR 记录”。注意也可以为 IPv6 地址配置反向区域,包括. ip6.arpa. 域中的区域。有关 IPv6 反向区的更多信息,请参阅 RFC 3596。
在添加 DNS 资源记录时,请注意,许多记录需要不同的数据。例如,CNAME 记录需要主机名,而 A 记录需要 IP 地址。在 Web UI 中,会自动更新用于添加新记录的表单中的字段,以反映当前选定的记录类型所需的数据。
DNS 通配符支持
IdM 支持 DNS 区域中的特殊记录,作为通配符。
例 33.2. 演示 DNS 通配符结果
- 在您的 DNS 区域 example.com 中配置以下内容:
- 通配符
A 记录:
mail.example.com
的 192.168.1.0/24 记录,但没有此主机的 A 记录。demo.example.com
没有记录。
- 查询现有和不存在的 DNS 记录和类型。您将收到以下结果:
# host -t MX mail.example.com. mail.example.com mail is handled by 10 server.example.com. # host -t MX demo.example.com. demo.example.com. has no MX record. # host -t A mail.example.com. mail.example.com has no A record # host -t A demo.example.com. random.example.com has address 192.168.1.1
如需了解更多详细信息,请参阅 RFC1034。
从 Web UI 添加 DNS 资源记录
- 打开 DNS 区页面,如 “在 Web UI 中编辑区域配置”一节 所述。
- 在 DNS Resource Records 部分,点 来添加新记录。
图 33.9. 添加新的 DNS 资源记录
- 根据需要,选择要创建和填写其他字段的记录类型。
图 33.10. 定义新的 DNS 资源记录
- 单击以确认新记录。
从命令行添加 DNS 资源记录
要从命令行添加任何类型的 DNS 资源记录,请使用 ipa dnsrecord-add 命令。该命令遵循以下语法:
$ ipa dnsrecord-add zone_name record_name --record_type_option=data
zone_name 是记录要添加到的 DNS 区域的名称。record_name 是新 DNS 资源记录的标识符。
表 33.2 “常用 ipa dnsrecord-add 选项” 列出最常见的资源记录类型选项:A(IPv4)、AAAA(IPv6)、SRV 和 PTR。可以通过多次使用 选项和同一命令调用来设置条目列表,或者在 Bash 中列出以逗号分隔的大括号中的选项,如
--option={val1,val2,val3}
。
有关如何使用 ipa dnsrecord-add 以及 IdM 支持哪些 DNS 记录类型的更多详细信息,请运行 ipa dnsrecord-add --help 命令。
常规记录选项 | |
---|---|
选项 | 描述 |
--ttl =number | 设置记录的生存时间。 |
--structured | 解析原始 DNS 记录并以结构化格式返回。 |
"a"记录选项 | |
---|---|
选项 | 描述 |
--a-rec =ARECORD | 通过 A 记录的列表. |
--a-ip-address =string | 提供 记录的 IP 地址。 |
"AAAA"记录选项 | |
---|---|
选项 | 描述 |
--aaaa-rec =AAAARECORD | 传递 AAAA(IPv6)记录列表。 |
--aaaa-ip-address =string | 为 记录指定 IPv6 地址。 |
"PTR"记录选项 | |
---|---|
选项 | 描述 |
--ptr-rec =PTRRECORD | 传递 PTR 记录列表. |
--ptr-hostname =string | 为记录指定主机名。 |
"SRV"记录选项 | |
---|---|
选项 | 描述 |
--srv-rec =SRVRECORD | 传递 SRV 记录列表。 |
--srv-priority =number | 设置记录的优先级。服务类型可以有多个 SRV 记录。优先级(0 - 65535)设置记录的等级;优先级越低,优先级越高。服务必须首先使用优先级最高的 记录。 |
--srv-weight =number | 设置记录的权重。这有助于确定具有相同优先级的 SRV 记录的顺序。设定的权重应最多增加 100 个,表示使用特定记录的几率(以百分比表示)。 |
--srv-port =number | 为目标主机上服务提供服务的端口。 |
--srv-target =string | 提供目标主机的域名。如果服务在域中不可用,这可以是单个句点(.)。 |
33.4.5. 从命令行添加或修改 DNS 资源记录的示例
例 33.3. 添加 IPv4 记录
以下示例创建了 IP 地址为
192.0.2.123
的记录 www.example.com
。
$ ipa dnsrecord-add example.com www --a-rec 192.0.2.123
例 33.4. 添加 IPv4 通配符记录
以下示例创建了一个通配符 A 记录,其 IP 地址为
192.0.2.123
:
$ ipa dnsrecord-add example.com "*" --a-rec 192.0.2.123
例 33.5. 修改 IPv4 记录
在创建记录时,指定 A 记录值的选项是
--a-record
。但是,在修改 A 记录时,--a-record
选项用于指定 A 记录的当前值。新值使用 --a-ip-address
选项设置。
$ ipa dnsrecord-mod example.com www --a-rec 192.0.2.123 --a-ip-address 192.0.2.1
例 33.6. 添加 IPv6 记录
以下示例创建记录
www.example.com
,其 IP 地址为 2001:db8::1231:5675
。
$ ipa dnsrecord-add example.com www --aaaa-rec 2001:db8::1231:5675
例 33.7. 添加 SRV 记录
在以下示例中,
_ldap._tcp
定义 SRV 记录的服务类型和连接协议。srv-rec
选项定义优先级、权重、端口和目标值。
例如:
[root@server ~]# ipa dnsrecord-add server.example.com _ldap._tcp --srv-rec="0 51 389 server1.example.com." [root@server ~]# ipa dnsrecord-add server.example.com _ldap._tcp --srv-rec="1 49 389 server2.example.com."
权重值(本例中为
51
和 49
)添加到 100,并代表使用特定记录的可能性(百分比)。
例 33.8. PTR 记录
添加反向 DNS 记录时,与添加其他 DNS 记录的用法相比,与 ipa dnsrecord-add 命令一起使用的区域名称相反:
$ ipa dnsrecord-add reverseNetworkIpAddress hostIpAddress --ptr-rec FQDN
通常,hostIpAddress 是给定网络中 IP 地址的最后一个八进制数。
例如,这会为
server4.example.com
添加 IPv4 地址为 192.0.2.4 的 PTR 记录:
$ ipa dnsrecord-add 2.0.192.in-addr.arpa 4 --ptr-rec server4.example.com.
下一个示例在
0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa 中添加一个反向 DNS 条目。
主机 server2.example.com
的 IPv6 反向区,IP 地址为 2001:DB8::1111
:
$ ipa dnsrecord-add 0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa. 1.1.1.0.0.0.0.0.0.0.0.0.0.0.0 --ptr-rec server2.example.com.
33.4.6. 从 DNS 区域中删除记录
删除 Web UI 中的记录
要只从资源记录中删除特定的记录类型:
- 打开 DNS 区页面,如 “在 Web UI 中编辑区域配置”一节 所述。
- 在 DNS Resource Records 部分,点击资源记录的名称。
图 33.11. 选择 DNS 资源记录
- 按要删除的记录类型的名称选中复选框。
图 33.12. 删除 DNS 资源记录
之后,仅删除所选的记录类型;其他配置将保持不变。
删除区中资源的所有记录:
- 打开 DNS 区页面,如 “在 Web UI 中编辑区域配置”一节 所述。
- 在 DNS Resource Records 部分中,按要删除的资源记录名称选择复选框,然后单击区域记录顶部的 。
图 33.13. 删除基本资源记录
之后,整个资源记录将被删除。
从命令行删除记录
要从区中删除记录,请使用 ipa dnsrecord-del 命令,并将
--recordType-rec
选项与记录值一起添加。
例如,删除 A 类型记录:
$ ipa dnsrecord-del example.com www --a-rec 192.0.2.1
如果您在没有任何选项的情况下运行 ipa dnsrecord-del,该命令会提示输入要删除的记录的信息。请注意,通过 命令传递
--del-all
选项可删除该区域的所有关联记录。
有关如何使用 ipa dnsrecord-del 以及命令可接受的选项列表的详细信息,请运行 ipa dnsrecord-del --help 命令。
33.4.7. 禁用和启用区域
IdM 允许管理员禁用和启用 DNS 区域。当删除 DNS 区(如 “删除主 DNS 区域”一节 所述)完全删除区条目以及所有相关的配置时,禁用区会在没有从 IdM 永久删除区的情况下将其从活动中删除。也可以再次启用禁用的区域。
在 Web UI 中禁用和启用区域
要从 Web UI 管理 DNS 区域,请打开 网络服务 选项卡,然后选择 DNS 子选项卡,后跟 DNS Zones 部分。
图 33.14. 管理 DNS 区域
若要禁用某个区域,可选中区域名称旁边的复选框,然后单击
。
图 33.15. 禁用 DNS 区域
类似地,若要启用禁用的区域,可选中区域名称旁边的复选框,然后单击
。
从命令行禁用和启用 DNS 区域
要从命令行禁用 DNS 区域,请使用 ipa dnszone-disable 命令。例如:
[user@server ~]$ ipa dnszone-disable zone.example.com ----------------------------------------- Disabled DNS zone "example.com" -----------------------------------------
要重新启用禁用的区域,请使用 ipa dnszone-enable 命令。