Utilisation de RPC avec le proxy Winsock

La version de Microsoft Internet Access Server incluait le proxy Winsock, une version améliorée de l’API Windows Sockets version 1.1. Le proxy Winsock permet à une application Windows Sockets, exécutée sur un client réseau privé, de se comporter comme si elle était directement connectée à une application serveur Internet distante. Le serveur proxy Microsoft fait office d’hôte pour cette connexion. Cela signifie que toutes les communications au niveau de l’application sont canalées par le biais d’un seul ordinateur sécurisé, l’ordinateur de passerelle exécutant Microsoft Proxy Server.

En règle générale, pour les transferts de paquets de datagrammes, la DLL de transport RPC contourne les fonctions sendto et recvfrom fournies dans Wsock32.dll, et communique directement avec le pilote de périphérique sous-jacent. Cela améliore la vitesse des transferts de paquets, mais rend les fonctionnalités de proxy Winsock indisponibles pour l’application.

Chaque fournisseur de protocole réseau auquel un GUID est associé. La bibliothèque d’exécution RPC compare les GUID UDP et IPX aux identificateurs Microsoft connus. Si elles ne correspondent pas, RPC utilise automatiquement Winsock.

Une autre fonctionnalité du proxy Winsock est sa capacité à émuler le protocole de transport TCP sur le transport Novell SPX lorsque le protocole TCP n’est pas installé sur l’ordinateur client SPX. Pour utiliser cette fonctionnalité avec les applications RPC, modifiez le registre système sur chaque ordinateur client pour ajouter cette entrée :

HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\ClientProtocols
   ncacn_ip_tcp = "rpcltccm.dll"<dl>
<dt>

   Data type
</dt>
<dd>   REG_SZ</dd>
</dl>
   ncadg_ip_udp = "rpcltccm.dll"<dl>
<dt>

   Data type
</dt>
<dd>   REG_SZ</dd>
</dl>

Modifiez le Registre sur chaque ordinateur serveur pour ajouter cette entrée :

HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\ServerProtocols
   ncacn_ip_tcp = "rpcltscm.dll"<dl>
<dt>

   Data type
</dt>
<dd>   REG_SZ</dd>
</dl>
   ncadg_ip_udp = "rpcltscm.dll"<dl>
<dt>

   Data type
</dt>
<dd>   REG_SZ</dd>
</dl>

Pour plus d’informations sur les protocoles de transport RPC, consultez Spécification de séquences de protocoles. Pour plus d’informations sur le proxy Winsock, consultez la documentation du produit pour Microsoft Internet Access Server.

Windows 2000 n’implémente pas les entrées de Registre ClientProtocols et ServerProtocols . Microsoft fournit tous les transports connus dans le cadre de la bibliothèque d’exécution. Par conséquent, ces entrées ne sont pas nécessaires.