次の方法で共有


Windows ソケット 1.1 API での TCP/IP の互換性のある名前解決

注意

名前解決用のすべての Windows ソケット 1.1 関数は、IPv4 TCP/IP ネットワークに固有です。 アプリケーション開発者は、IPv4 のみをサポートするこれらのトランスポート固有の機能を引き続き使用することを強くお勧めします。

 

アプリケーション開発者は、プロトコルに依存せず、IPv6 と IPv4 の両方の名前解決をサポートする次の関数を使用する必要があります。

Windows Sockets 1.1 では、TCP/IP (IP バージョン 4) ネットワークでの名前解決に使用されるルーチンの数が定義されています。 これらは getXbyY 関数と呼ばれる場合があり、次のものが含まれます。

gethostname
gethostbyaddr
gethostbyname
getprotobyname
getprotobynumber
getservbyname
getservbyport

これらの関数の非同期バージョンも定義されました。

WSAAsyncGetHostByAddr
WSAAsyncGetHostByName
WSAAsyncGetProtoByName
WSAAsyncGetProtoByNumber
WSAAsyncGetServByName
WSAAsyncGetServByPort

また、Winsock2.dllで実装される 2 つの関数もあり、それぞれ、ドット付き Ipv4 アドレス表記を文字列表現とバイナリ表現との間で変換するために使用されます。

inet_addr
inet_ntoa

Windows Sockets 1.1 との厳密な下位互換性を維持するために、AF_INET アドレス ファミリをサポートする少なくとも 1 つの名前空間プロバイダーが存在する限り、すべての古い IPv4 専用関数が引き続きサポートされます (これらの関数は、AF_INET6で示される IP バージョン 6 には関係ありません)。

Ws2_32.dllでは、 WSALookupServiceBegin/Next/End 関数呼び出しの適切なシーケンスを使用して、プロトコルに依存しない新しい名前解決機能の観点から、これらの互換性関数を実装します。 getXbyY 関数を名前解決関数にマップする方法の詳細を以下に示します。 WSs2_32.dllは 、getXbyY 関数の非同期バージョンと同期バージョンの違いを処理するため、同期 getXbyY 関数の実装についてのみ説明します。

このセクションでは、Windows ソケット 1.1 API での TCP/IP の互換性のある名前解決について説明します。 次の一覧では、このセクションのトピックについて説明します。

プロトコルに依存しない名前解決

登録と名前解決