web-dev-qa-db-fra.com

Python recherche le nom d'hôte de l'IP avec 1 seconde de temporisation

Comment puis-je rechercher un nom d'hôte avec une adresse IP? De plus, comment puis-je spécifier un délai d'attente au cas où aucune entrée DNS inversée de ce type n'existe? Essayer de garder les choses aussi vite que possible. Ou existe-t-il une meilleure façon? Merci!

48
ensnare
>>> import socket
>>> socket.gethostbyaddr("69.59.196.211")
('stackoverflow.com', ['211.196.59.69.in-addr.arpa'], ['69.59.196.211'])

Pour implémenter le délai d'attente sur la fonction, ce thread stackoverflow a des réponses à ce sujet.

81
ChristopheD

Ce que vous essayez d'accomplir s'appelle la recherche DNS inversée.

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

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

Cependant, pour la partie timeout, j'ai lu que les gens rencontraient des problèmes avec cela. Je voudrais vérifier PyDNS ou this solution pour un traitement plus avancé.

17
adamse