I think the hard part about DNS is not the public facing resolution of addresses, but rather how to understand it in enterprise environments.
A junior tasked with creating a DNS record in an enterprises servers will have to go through a wild ride to just get that record created and set in a correct manner. Even worse, if a service has to be reachable through an internal DNS entry and external DNS entry.
Not only is it stressful to find the IT deities to grant the junior their wish, it can be a monetary issue as well if the company needs to re-order public certs in case of mistakes.