Chapter 17. Identity: Managing DNS
If the IdM server was installed with DNS configured, then all of the DNS entries for the domain — host entries, locations, records — can be managed using the IdM tools.
17.1. About DNS in IdM
DNS is one of the services that can be configured and maintained by the IdM domain. DNS is critical to the performance of the IdM domain; DNS is used for the Kerberos services and SSL connections for all servers and clients and for connections to domain services like LDAP.
While IdM can use an external DNS service, there is a lot more flexibility and control over IdM — DNS interactions when the DNS service is configured within the domain. For example, DNS records and zones can be managed within the domain using IdM tools, and clients can update their own DNS records dynamically. When a host is added to IdM, a DNS record is automatically created in IdM's DNS service for that host machine.
IdM stores all DNS information as LDAP entries. Every resource record for each machine is stored for the domain. For example, the client1 resource has three IPv4 (A) records and one IPv6 (AAAA) record:
dn: idnsname=client1,idnsname=example.com,cn=dns,dc=example,dc=com idnsname: client1 arecord: 10.0.0.1 arecord: 10.0.0.2 arecord: 10.0.0.3 aaaarecord: fc00::1 objectclass: top objectclass: idnsrecord
The schema used to define the DNS entries is in the
/usr/share/ipa/60basev2.ldif
schema file[6].
The BIND service communicates with the Directory Server using the system
bind-dyndb-ldap
plug-in. When Identity Management is configured to manage DNS, IdM creates a dynamic-db
configuration section in the /etc/named.conf
file for the BIND service. This configures the bind-dyndb-ldap
plug-in for the BIND (named
) service.
When this plug-in is properly configured, it delivers the DNS records from the Directory Server to the
named
service. The configuration can be changed to adapt the behavior of the plug-in and, therefore, the LDAP-BIND interactions.
[6]
Any updated schema files, included updated DNS schema elements, are located in the
/usr/share/ipa/updates
directory.