Как я могу найти имя хоста по IP-адресу? Кроме того, как я могу указать тайм-аут, если такой обратной записи DNS не существует? Пытаться держать вещи как можно быстрее. Или есть лучший способ? Спасибо!
>>> import socket >>> socket.gethostbyaddr("69.59.196.211") ('stackoverflow.com', ['211.196.59.69.in-addr.arpa'], ['69.59.196.211'])
Для реализации тайм-аута функции этот поток стекопотока имеет ответы на этот вопрос.
То, что вы пытаетесь выполнить, называется обратным поиском DNS.
socket.gethostbyaddr("IP") # => (hostname, alias-list, IP)
http://docs.python.org/library/socket.html?highlight=gethostbyaddr#socket.gethostbyaddr
Однако, для части тайм-аута, которую я прочитал о людях, сталкивающихся с проблемами с этим. Я бы проверил PyDNS или это решение для более продвинутого лечения.