2009-06-23 21 views
7

Ich versuche, das Unternehmen * mit einer bestimmten IP-Adresse programmatisch zu bestimmen.Wie kann ich feststellen, zu welcher Firma eine IP-Adresse gehört?

Meine erste Vermutung war:

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

aber das wird nicht funktionieren, wenn der Reverse-DNS nicht richtig eingestellt ist, die 90% der Zeit zu passieren scheint.

Einige Websites sind jedoch immer noch in der Lage, das mit einer bestimmten IP verbundene Unternehmen zu ermitteln, auch wenn die umgekehrte DNS fehlschlägt. Unter this site beispielsweise enthält das Feld ISP Provider manchmal wertvolle Informationen (dh den Namen des Unternehmens), auch wenn der Hostname nicht festgelegt ist.

Was ist der einfachste Weg, um die gleiche Sache mit .net zu erreichen?


Hinweise:

  • Ich habe keinen kanonischen Namen brauchen. dh MS oder Microsoft sind beide in Ordnung.
  • Ich ziele auf große Unternehmen, die wahrscheinlich ihre IP-Adressbereiche "besitzen".
  • Ich bin auf Windows ausgeführt, so dass Unix Whois-Tools nicht standardmäßig installiert sind.

Bearbeiten in Bezug auf die Verwendung von whois: Manchmal there's no whois information associated with an IP

+0

Das von Ihnen erwähnte Beispiel "Keine Informationen, die mit einer IP-Adresse verknüpft sind", ist eindeutig falsch. 121.243.106.222 hat whois info, es ist Tata (der größte ISP in Indien). Da es in Asien ist, müssen Sie APNIC whois Server abfragen, nicht RIPE. (Oder fragen Sie ARIN, das Sie umleitet.) Ja, Whois ist kompliziert. – bortzmeyer

+0

Es ist nicht notwendig, "unix whois tools" zu verwenden, das Whois-Protokoll ist so einfach, dass es zwei Zeilen benötigt, um es in einer Sprache zu implementieren, die aktueller ist als C. – bortzmeyer

Antwort

0

Sie können auf der Website https://ws.arin.net/whois eine Whois Lookup und die Informationen die Sie suchen parsen.

+0

Leider liefert es nicht die Informationen, nach denen ich suche – Brann

+0

So wird diese Art von Informationen wahrscheinlich bestimmt, indem man herausfindet, wer die Blöcke von IPs besitzt (die aus der ARIN-Datenbank stammen). Es kann aufeinanderfolgende Whois-Abfragen geben. – Joe

2

können Sie installieren die whois Kommandozeilen-Tool für Windows von Microsoft

edit: dann, welche Informationen suchen Sie?

>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

Leider liefert es nicht die Informationen, nach denen ich suche. – Brann

+0

Können Sie Details wie eine Beispiel-IP-Adresse angeben? Neben DNS und Whois gibt es keine * automatische * Möglichkeit, Informationen von einer IP-Adresse zu erhalten. – bortzmeyer

0

Meistens sende ich die "whois" Antworten. Damals besaßen Unternehmen ganze Adressblöcke, so dass es früher ziemlich einfach für die Leute war, ihre eigenen "Whois" zu schreiben, aber da IP (v4) -Adressen knapper wurden, hörte es auf, einfach zu sein. Ich würde nicht einmal daran denken, es jetzt zu versuchen. Benutze einen echten Whois.

0

Wie bei vielen programatic Bedenken, was Sie fordern nicht so einfach ist, wie man erwarten könnte.

Frage (n) zuerst ... was ist die Quelle der IP-Adresse, die Sie lösen möchten - eine Website "Besucher", ein Webserver oder eine unbekannte Quelle? Für den Zweck dieser Antwort werde ich annehmen, dass Sie einen Website-Besucher "konvertieren" möchten, da dies der häufigste/wertvollste Grund ist, IP-> Company zu lösen.

Problem 1 ... Mit WHOIS können Sie den "Besitzer" des Netblocks (IP-Adressbereich), der mit einer fraglichen IP-Adresse verknüpft ist, auflösen. Der "Eigentümer" des Netblocks ist (normalerweise) der ISP, der das Unternehmen bedient, das Sie identifizieren möchten - nicht das Unternehmen, das die IP-Adresse verwendet.

Problem Zwei ... DNS ist keine zuverlässige Quelle für alles außer IP-> domain.tld oder domain.tld-> IP-Typ-Auflösung. Darüber hinaus ist es nicht (nicht wirklich) durchgesetzt und nicht absolut zuverlässig.

Ausgabe 3 ... Dies ist möglicherweise kein Problem für Sie. Abhängig von der NIC (ARIN, RIPE, etc.), die Ihre WHOIS-Abfrage gelöst hat, werden Sie feststellen, dass das resultierende Format nicht immer leicht zu lesen ist - lesbar ... ja, parsierbar ... nein.

Verwandte Themen