Kompatible Namensauflösung für TCP/IP in der Windows Sockets 1.1-API
Hinweis
Alle Windows Sockets 1.1-Funktionen für die Namensauflösung sind spezifisch für IPv4-TCP/IP-Netzwerke. Anwendungsentwicklern wird dringend davon abgeraten, diese transportspezifischen Funktionen, die nur IPv4 unterstützen, weiterhin zu nutzen.
Anwendungsentwickler sollten die folgenden Funktionen verwenden, die protokollunabhängig sind und sowohl die IPv6- als auch die IPv4-Namensauflösung unterstützen.
Windows Sockets 1.1 definiert eine Reihe von Routinen, die für die Namensauflösung mit TCP/IP-Netzwerken (IP-Version 4) verwendet werden. Diese werden manchmal als getXbyY-Funktionen bezeichnet und umfassen Folgendes:
Asynchrone Versionen dieser Funktionen wurden ebenfalls definiert.
WSAAsyncGetHostByAddr
WSAAsyncGetHostByName
WSAAsyncGetProtoByName
WSAAsyncGetProtoByNumber
WSAAsyncGetServByName
WSAAsyncGetServByPort
Es gibt auch zwei Funktionen, die jetzt im Winsock2.dll implementiert sind, um gepunktete Ipv4-Adressnotation in und aus Zeichenfolgen- bzw. binärdarstellungen zu konvertieren.
Um die strikte Abwärtskompatibilität mit Windows Sockets 1.1 beizubehalten, werden alle älteren IPv4-only-Funktionen weiterhin unterstützt, solange mindestens ein Namespaceanbieter vorhanden ist, der die AF_INET Adressfamilie unterstützt (diese Funktionen sind für IP-Version 6 nicht relevant, bezeichnet durch AF_INET6).
Die Ws2_32.dll implementiert diese Kompatibilitätsfunktionen in Bezug auf die neuen protokollunabhängigen Namensauflösungsfunktionen mithilfe einer geeigneten Sequenz von WSALookupServiceBegin/Next/ End-Funktionsaufrufen. Die Details dazu, wie die getXbyY-Funktionen namensauflösungsfunktionen zugeordnet werden, finden Sie unten. Die WSs2_32.dll behandelt die Unterschiede zwischen den asynchronen und synchronen Versionen der getXbyY-Funktionen , sodass nur die Implementierung der synchronen getXbyY-Funktionen erläutert wird.
In diesem Abschnitt wird die kompatible Namensauflösung für TCP/IP in der Windows Sockets 1.1-API beschrieben. In der folgenden Liste werden die Themen in diesem Abschnitt beschrieben:
- Grundlegende Vorgehensweise für GetXbyY in der API
- getprotobyname und getprotobynumber Functions in der API
- getservbyname- und getservbyport-Funktionen in der API
- gethostbyname-Funktion in der API
- gethostbyaddr-Funktion in der API
- gethostname-Funktion in der API
Zugehörige Themen