Python поиск имени хоста с IP с 1 секунда тайм-аут - PullRequest
47 голосов
/ 05 апреля 2010

Как я могу найти имя хоста по IP-адресу? Кроме того, как я могу указать тайм-аут, если такой обратной записи DNS не существует? Пытаться держать вещи как можно быстрее. Или есть лучший способ? Спасибо!

Ответы [ 2 ]

78 голосов
/ 05 апреля 2010
>>> import socket
>>> socket.gethostbyaddr("69.59.196.211")
('stackoverflow.com', ['211.196.59.69.in-addr.arpa'], ['69.59.196.211'])

Для реализации тайм-аута функции этот поток стекопотока имеет ответы на этот вопрос.

17 голосов
/ 05 апреля 2010

То, что вы пытаетесь выполнить, называется обратным поиском DNS.

socket.gethostbyaddr("IP") 
# => (hostname, alias-list, IP)

http://docs.python.org/library/socket.html?highlight=gethostbyaddr#socket.gethostbyaddr

Однако, для части тайм-аута, которую я прочитал о людях, сталкивающихся с проблемами с этим. Я бы проверил PyDNS или это решение для более продвинутого лечения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...