C#: DNSLookup eines Servers oder einer Website
An dieser Stelle folgt ein weiteres Tutorial aus der Reihe “Ping, Traceroute und DNSLookup“. Ein DNSLookup beschreibt dabei nur die aufgelöste IP-Adresse, also den dort im Domain Name System eingetragenden Namen für die jeweilige IP-Adresse. Dieser DNS Lookup macht besonders viel Sinn, wenn man gleichzeitig einen Traceroute laufen lässt, der einem die durchlaufenden Zwischenstationen zu einem gewissen Server zurückgibt.
Hier also nun das Tutorial im gewohnten Stil, also der Code mit entsprechenden Kommentaren an den wichtigen Stellen:
// Einbinden der USINGs
using System.Net ;
///
/// Gibt zu einer IP-Adresse oder einer Domain die entsprechenden DNS Daten zurück
///
///
IP-Adresse oder Domain
/// DNS Eintrag
public static string DNSLookup(string domain)
{
string dns = "";
try
{
// Host Eintrag über den DNS füllen
IPHostEntry he = Dns.GetHostEntry(domain);
// Host-Namen aus dem IPHostEntry holen
dns = he.HostName.ToString() ;
}
catch
{
// Fehler auswerfen
dns = "Kein DNS Eintrag vorhanden";
}
// Rückgabe des DNS an den Aufrufer
return dns;
}
Wie Ihr also sehen könnt, ist der DNSLookup einer der simpelsten Implementierungen im .NET Framework. Im kommenden Tutorial über Traceroutes werde ich noch eine Stelle beschreiben, in der Ihr den DNSLookup aufrufen könnt. So bekommt Ihr anschließend eine Ausgabe, die nahezu exakt der Ausgabe der tracert.exe von Windows entspricht, allerdings wesentlich schneller Ergebnisse an die Konsole zurückliefert.