Le "reverse IP checker" est un outil qui permet de trouver les domaines associés à une adresse IP. Voici comment réaliser un reverse IP checker en Python :
Tout d’abord, il faut utiliser une bibliothèque qui permet de réaliser des requêtes DNS (Domain Name System). Une option possible est la bibliothèque dnspython. Pour l’installer, exécutez cette commande :
pip install dnspython
Ensuite, vous pouvez utiliser la fonction reverse_name de la bibliothèque dnspython pour obtenir le nom de domaine associé à une adresse IP. Voici un exemple de code qui montre comment faire :
import dns.reversename
def get_domain_from_ip(ip_address):
try:
reverse_name = dns.reversename.from_address(ip_address)
response = dns.resolver.query(reverse_name, "PTR")
return response[0].to_text()
except dns.resolver.NXDOMAIN:
return "Pas de domain pour cette IP"
# Exemples d'utilisation
print(get_domain_from_ip("8.8.8.8")) # "dns.google."
print(get_domain_from_ip("172.217.167.206")) # "lhr34s02-in-f14.1e100.net."
print(get_domain_from_ip("127.0.0.1")) # "localhost."
print(get_domain_from_ip("256.0.0.1")) # "Pas de domain pour cette IP"
Notez que la fonction reverse_name de dnspython retourne un objet dns.name.Name, et que vous devez utiliser la fonction to_text() pour obtenir le nom de domaine sous forme de chaîne de caractères.
Cependant, il est important de noter que le reverse IP checker n’est pas infaillible. En effet, il peut y avoir plusieurs domaines associés à une même adresse IP, ou bien aucun domaine associé. De plus, certaines adresses IP peuvent être utilisées pour des services autres que le Web (par exemple, l’adresse IP 127.0.0.1