Puppet claims to be unable to resolve domains even if domain properly resolves

You'll need a forward and reverse DNS entry for the client. You could also add an /etc/hosts entry for the client on the puppetmaster.