2009-06-23 12 views
7

J'essaie de déterminer par programme la société * associée à une adresse IP donnée.Comment puis-je déterminer à quelle société appartient une adresse IP?

Ma première hypothèse était la suivante:

string hostname = Dns.GetHostEntry(IPAddress.Parse(ip)).HostName; 

mais cela ne fonctionnera pas si le DNS inverse n'est pas correctement, ce qui semble se produire 90% du temps.

Toutefois, certains sites Web sont toujours en mesure de déterminer avec succès la société associée à une adresse IP spécifique, même si le reverse dns échoue. Par exemple, sur this site, le champ Fournisseur ISP contient parfois des informations précieuses (c'est-à-dire le nom de l'entreprise) même si le nom d'hôte n'est pas défini.

Quelle est la manière la plus simple d'obtenir la même chose avec .net?


Notes:

  • Je ne ai pas besoin d'un nom canonique. c'est-à-dire MS ou Microsoft sont tous deux ok.
  • Je cible les grandes entreprises, qui sont susceptibles de "posséder" leurs plages d'adresses IP.
  • Je suis sous Windows, donc les outils whois d'unix ne sont pas installés par défaut.

Modifier concernant l'utilisation de whois: Parfois, there's no whois information associated with an IP

+0

L'exemple que vous mentionnez "Aucune information whois associée à une adresse IP" est tout à fait faux. 121.243.106.222 a des infos sur whois, c'est Tata (le plus grand ISP en Inde). Comme il est en Asie, vous devez interroger le serveur whois APNIC, pas RIPE. (Ou interroger ARIN, qui vous redirigera.) Oui, whois est compliqué. – bortzmeyer

+0

Il n'est pas nécessaire d'utiliser "unix whois tools", le protocole whois est si simple qu'il faut deux lignes pour l'implémenter dans n'importe quelle langue plus récente que C. – bortzmeyer

Répondre

0

Vous pouvez faire une recherche whois sur le site https://ws.arin.net/whois et analyser les informations que vous recherchez.

+0

Malheureusement, il ne fournit pas l'information que je cherche – Brann

+0

C'est la raison pour laquelle ce type d'informations est probablement déterminé en déterminant à qui appartient le bloc d'adresses IP (qui provient de la base de données ARIN). Il peut y avoir des requêtes Whois successives. – Joe

2

Vous pouvez installer l'outil de ligne de commande pour Windows whois de modifier microsoft

: alors quelles sont les informations que vous cherchez?

>whois bbc.co.uk 
Domain name: 
    bbc.co.uk 

Registrant: 
    British Broadcasting Corporation 

Registrant type: 
    UK Limited Company, (Company number: 000057) 

Registrant's address: 
    Research & Development 
    Kingswood Warren 
    Tadworth 
    Surrey 
    KT20 6NP 
    United Kingdom 

Registrar: 
    British Broadcasting Corporation [Tag = BBC] 
+0

Malheureusement, il ne fournit pas l'information que je cherche. – Brann

+0

Pouvez-vous fournir des détails, tels qu'un exemple d'adresse IP? Outre DNS et whois, il n'y a PAS de moyen * automatique * d'obtenir des informations à partir d'une adresse IP. – bortzmeyer

0

Généralement, je suis en train d'appuyer les réponses «whois». À l'époque, les entreprises possédaient des blocs entiers d'adresses, de sorte qu'il était assez facile pour les gens d'écrire leur propre «whois», mais comme les adresses IP (v4) devenaient plus rares, elles cessaient d'être faciles. Je ne penserais même pas à l'essayer maintenant. Utilisez un vrai whois.

0

Comme beaucoup de préoccupations programmatiques, ce que vous demandez est pas aussi simple que vous pourriez vous attendre.

Question (s) en premier ... quelle est la source de l'adresse IP que vous souhaitez résoudre - un site web "visiteur", un serveur web ou une source inconnue? Dans le but de cette réponse, je vais faire la présomption que vous souhaitez "convertir" un visiteur de site Web car c'est la raison la plus commune/valable pour résoudre IP-> Société. En utilisant WHOIS, vous pouvez résoudre le "propriétaire" du réseau (plage d'adresses IP) associé à une adresse IP en question. Le «propriétaire» du netblock est (généralement) le FAI desservant la société que vous souhaitez identifier - pas la société qui utilise l'adresse IP.

Problème 2 ... DNS n'est pas une source fiable pour tout ce qui va au-delà de la résolution de type IP-> domain.tld ou domain.tld-> ip. Au-delà, ce n'est pas imposé (pas vraiment) et pas complètement fiable.

Problème 3 ... Cela peut ne pas être un problème pour vous. Selon le NIC (ARIN, RIPE, et.al.) qui a résolu votre requête WHOIS, vous constaterez que le format résultant n'est pas toujours facile à analyser - oui ..., analysable ... non.