Auflösung von Hostnamen mit .NET

Die .NET Framework-Klassenbibliothek stellt in Namespaces System.Net und System.Net.Sockets Funktionen zur Netzwerkprogrammierung bereit. Mit diesen Klassen ist es einfach Netzwerkfunktionalität in eine Anwendung zu integrieren.

Network-Namespace

Hier ein Auszug der Klassen im Namespace System.Net:

  • ~IPAddress: Gibt die IP-Adresse (im Format xxx.xxx.xxx.xxx) eines Computers in einem IP Netzwerk zurück.
  • DNS: Stellt einfache Funktionen für die Auflösung von Domänennamen bereit. Wenn in der DNS-Tabelle mehrere Einträge vorhanden sind, werden mehrere Instanzen zurückgegeben.
  • IPHostEntry: Die Microsoft-Hilfe definiert die Klasse IPHostEntry als Container für Adressinformationen für Internethosts. Sie ordnet einem DNS-Hostnamen ein Array von Aliasen und ein Array entsprechender IP-Adressen zu. Sie wird als Hilfsklasse für die DNS-Klasse verwendet.

Namensauflösung

Bei der DNS-Klasse handelt es sich um eine statische Klasse, mit der man auf einfache Weise Informationen über einen bestimmten Host aus der DNS abrufen kann. Sie benötigt einen Internetzugang, um richtig funktionieren zu können. Die Hostinformationen aus der DNS-Anfrage werden als IPHostEntry-Objekt zurückgegeben. Wenn in der DNS-Datenbank mehrere Einträge für den angegebenen Host vorhanden sind, enthält IPHostEntry mehrere IP-Adressen und Aliase. Mit einer FOR-Schleife kann auf die gesamte Adresse zugegriffen werden.

Hier drei Methoden, die für die Abfrage von Hostinformationen geeignet sind:

  • GetHostByName: Hostinformationen werden über den Namen abgerufen, der an die Methode übergeben wurde.
  • GetHostByAddress: Hostinformationen werden über die Adresse abgerufen, die an die Methode übergeben wurden.
  • GetHostName: Ruft den Namen ab, der einem Host zugewiesen ist.

Ein Aufruf jeder dieser DNS-Methoden gibt eine Instanz der IPHostEntry-Klasse zurück. Mit dem nachstehenden Code wird eine Instanz der IPHostEntry-Klasse unter Verwendung des angegebenen ZDNet-Hostnamens erstellt:

beziehungsweise seine Entsprechung in VB.NET:

Nachdem das IPHostEntry-Objekt nun mit IP-Adressen aufgefüllt ist, können diese als IPAddress-Objekte verwendet werden.

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Black Friday: Vorsicht vor schädlichen QR-Codes

Bösartige QR-Codes, die per E-Mail versendet werden, eignen sich sehr gut, um Spam-Filter zu umgehen.

2 Tagen ago

Black Friday: Zahl der ominösen Shopping-Websites steigt

Unsichere Websites und Phishing-Mails in Verbindung mit Black Friday können kauffreudigen Konsumenten zum Verhängnis werden.

2 Tagen ago

SmokeBuster bekämpft SmokeLoader

Malware SmokeLoader wird weiterhin von Bedrohungsakteuren genutzt, um Payloads über neue C2-Infrastrukturen zu verbreiten.

2 Tagen ago

Taugen Kryptowährungen als Unterstützer der Energiewende?

Bankhaus Metzler und Telekom-Tochter MMS testen, inwieweit Bitcoin-Miner das deutsche Stromnetz stabilisieren könnten.

3 Tagen ago

Supercomputer-Ranking: El Capitan überholt Frontier und Aurora

Mit 1,7 Exaflops ist El Capitan nun der dritte Exascale-Supercomputer weltweit. Deutschland stellt erneut den…

3 Tagen ago

Ionos führt neue AMD-Prozessoren ein

Der deutsche Hyperscaler erweitert sein Server-Portfolio um vier Angebote mit den neuen AMD EPYC 4004…

3 Tagen ago