socket.gethostbyaddr() wrongly returning a DNS CNAME as the 'primary' hostname

cjblaine cjblaine at
Thu Apr 28 18:10:27 CEST 2011

Python 2.7.1 (perhaps others)

I believe this is a bug.  Comments?

Docs state: Return a triple (hostname, aliaslist, ipaddrlist)
where hostname is the primary host name responding to the
given ip_address, aliaslist is a (possibly empty) list of
alternative host names  for the same address, and ipaddrlist
is a list of IPv4/v6 addresses for the same interface on the
same host (most likely containing only a single address). is a CNAME record for has IP address xx.xx.xx.xx

import socket


    ('', [''], ['xx.xx.xx.xx'])

More information about the Python-list mailing list