DNS
需要 dns 模块。IPA 自管 DNS 的区、记录、转发区与转发策略、每服务器转发器、全局配置;主机加入时记录的自动维护,以及 IPA_SETUP_DNS=false 时这组页面不适用的原因。
本页说明 Network services 下的 DNS 页面组,需要 dns 模块,且安装时 IPA_SETUP_DNS=true(见配置)。IPA 内置的 BIND 从 LDAP 读取区数据,这组页面修改的是 LDAP 里的记录,BIND 自动跟随,不需要 reload。未安装 DNS 的部署中这组页面不对应任何服务:导航仍显示,修改无效。

区
安装时自动创建正向区(域名本身,如 linux.ipa.test.);反向区按安装参数可选。区名带尾点。

| 字段 | 含义 |
|---|---|
| Authoritative nameserver、Administrator e-mail | SOA 的 MNAME 和 RNAME |
| SOA serial | 每次修改记录自动加 1,不需要手动维护 |
| SOA refresh、retry、expire、minimum | 供从服务器(如果有)使用的定时器。IPA 副本之间靠 LDAP 复制,不走 AXFR |
| Dynamic update、BIND update policy | 允许客户端用 GSS-TSIG 更新自己的记录。ipa-client-install 默认开启 nsupdate,依赖策略 grant LINUX.IPA.TEST krb5-self * A; ... 放行 |
| Allow query、Allow transfer | ACL。传输默认 none |
| Allow PTR sync | 修改 A 记录时自动修改对应反向区的 PTR,前提是反向区也在 IPA 里 |
| DNSSEC | 为区签名。要先在 DNS servers 页开启密钥主服务器 |
记录

一个记录名下可以有多种类型(@ 同时有 NS、A、SOA)。_kerberos、_ldap._tcp 等 SRV、URI、TXT 记录由安装程序维护,客户端靠它们发现服务器,不要修改。
主机记录的自动维护:
| 动作 | 效果 |
|---|---|
ipa host-add --ip-address= | 创建 A 记录,反向区存在时同时创建 PTR |
ipa-client-install | 客户端用 nsupdate 写入自己的 A 和 AAAA 记录,之后 IP 变化由 sssd 的 dyndns_update 更新 |
ipa host-del | 不删除记录。带 --updatedns 才删除 |
转发区与转发策略
转发区(DNS forward zones)定义某个名字的查询交给谁:把 ad.ipa.test. 转发到 AD DC 是建立 AD 信任的前提(AD 信任前置)。
全局配置和每台 DNS 服务器都有转发器与转发策略:
| 策略 | 含义 |
|---|---|
| Forward first | 先问转发器,不通再自行递归 |
| Forward only | 只问转发器,不通即失败 |
| Forwarding disabled | 自行递归 |

服务器级设置覆盖全局设置。IPA 服务器自身的 /etc/resolv.conf 应指向 127.0.0.1,由这里的转发器把外部查询交出去。
边界
| 事项 | 说明 |
|---|---|
| 定位 | IPA DNS 不是通用权威服务器,不支持视图(view)和地理解析。业务域名放在企业 DNS,把 IPA 域委派过来 |
| 备份 | 区数据在 LDAP 里,由 ipa-backup 覆盖,不存在 named 的 zone 文件 |
| 删除区 | 不可恢复,之后加入的客户端无法通过 SRV 发现服务器 |