code: def dns(self, domain_name, recursive=False, **kwargs):
          
          kwargs.setdefault("opts", {"recursive": recursive})
  
          args = (domain_name,)
          return self._client.request('/dns', args, decoder='json', **kwargs)
docs: Resolves DNS links to the referenced object.
  
          Multihashes are hard to remember, but domain names are usually easy to
          remember. To create memorable aliases for multihashes, DNS TXT records
          can point to other DNS links, IPFS objects, IPNS keys, etc.
          This command resolves those links to the referenced object.
  
          For example, with this DNS TXT record::
  
              >>> import dns.resolver
              >>> a = dns.resolver.query("ipfs.io", "TXT")
              >>> a.response.answer[0].items[0].to_text()
              '"dnslink=/ipfs/QmTzQ1JRkWErjk39mryYw2WVaphAZNAREyMchXzYQ7c15n"'
  
          The resolver will give::
  
              >>> c.dns("ipfs.io")
              {'Path': '/ipfs/QmTzQ1JRkWErjk39mryYw2WVaphAZNAREyMchXzYQ7c15n'}
  
          Parameters
          ----------
          domain_name : str
             The domain-name name to resolve
          recursive : bool
              Resolve until the name is not a DNS link
  
          Returns
          -------
              dict : Resource were a DNS entry points to