Configuration du Registre pour les allocations de ports et la liaison sélective
À compter de Windows 2000, un utilitaire du Kit de ressources Windows appelé Rpccfg.exe doit être utilisé pour définir des liaisons. Pour plus d’informations, consultez le Kit de ressources Windows pour connaître la version appropriée du système d’exploitation.
Pour les versions de Windows antérieures à Windows 2000, les clés de Registre du tableau suivant spécifient les valeurs système par défaut pour l’allocation de ports dynamiques et la liaison aux cartes réseau sur les ordinateurs multirésaisonnés. Vous devez d’abord créer ces clés, puis spécifier les paramètres appropriés.
L’utilisation de la fonction RpcServerUseProtseqEx affecte ces paramètres. Les développeurs doivent connaître les paramètres de Registre expliqués dans cette section et la fonction RpcServerUseProtseqEx lors de la gestion des allocations de ports. Un exemple avec trois applications hypothétiques suit le tableau ci-dessous et illustre comment ces paramètres et la fonction RpcServerUseProtseqEx interagissent.
Si une clé est manquante ou si elle contient une valeur non valide, toute la configuration est marquée comme non valide et tous les appels RpcServerUseProtseq* sur ncacn_ip_tcp ou ncadg_ip_udp échouent.
Notes
Les ports alloués à un processus restent alloués jusqu’à ce que ce processus soit arrêté. Si tous les ports disponibles sont utilisés, la fonction retourne RPC_S_OUT_OF_RESOURCES.
Clé de port | Type de données | Description |
---|---|---|
|
REG_MULTI_SZ | Spécifie un ensemble de plages de ports IP comprenant tous les ports disponibles à partir d’Internet ou tous les ports non disponibles à partir d’Internet. Chaque chaîne représente un port unique ou un ensemble inclusif de ports (par exemple, 1000-1050, 1984). Si des entrées se trouvent en dehors de la plage 0 à 65535, ou si une chaîne ne peut pas être interprétée, l’exécution de RPC traitera l’ensemble de la configuration comme non valide. |
|
REG_SZ | Y ou N (ne respectant pas la casse). Si la valeur est Y, les ports répertoriés dans la clé Ports sont tous les ports disponibles sur Internet sur cet ordinateur. Si la valeur est N, les ports répertoriés dans la clé Ports sont tous les ports qui ne sont pas disponibles sur Internet. |
|
REG_SZ | Y ou N (ne respectant pas la casse). Spécifie la stratégie par défaut du système. Si la valeur est Y, les processus qui utilisent la valeur par défaut se voient attribuer des ports à partir de l’ensemble de ports disponibles sur Internet, comme défini ci-dessus. Si N, les processus utilisant la valeur par défaut se voient attribuer des ports à partir de l’ensemble de ports intranet uniquement. |
|
REG_MULTI_SZ | Répertorie les noms d’appareils de toutes les cartes réseau sur lesquelles la liaison doit être effectuée par défaut (par exemple, \Device\AMDPCN1). Si la clé n’existe pas, le serveur est lié à toutes les cartes réseau. Si la clé existe, le serveur est lié aux cartes réseau spécifiées dans la clé, sauf si le champ NICFlags est défini sur RPC_C_BIND_TO_ALL_NICS. Si la clé a une valeur null (« »), la configuration est marquée comme non valide et tous les appels à RpcServerUseProtseq* sur ncacn_ip_tcp ou ncadg_ip_udp échouent. |
Le tableau suivant montre comment trois exemples d’applications sont affectés par les paramètres définis dans le tableau précédent et comment les paramètres appliqués à l’aide de la fonction RpcServerUseProtseqEx sont également affectés.
Dans cet exemple, trois applications hypothétiques sont prises en compte :
- InternetApp : cette application est destinée à être exposée à Internet et a spécifié RPC_C_USE_INTERNET_PORT dans le membre EndpointFlags de la structure RPC_POLICY passée à la fonction RpcServerUseProtseqEx .
- LocalApp : cette application n’est pas destinée à être exposée à Internet et a spécifié RPC_C_USE_INTRANET_PORT dans le membre EndpointFlags de la structure RPC_POLICY passée à la fonction RpcServerUseProtseqEx .
- DefaultApp : cette application spécifie zéro dans le membre EndpointFlags de la structure RPC_POLICY passée à la fonction RpcServerUseProtseqEx .
Le tableau suivant explique l’impact de ces paramètres en fonction des valeurs spécifiées dans les entrées de Registre expliquées dans le tableau précédent. Pour les considérations relatives à la mise en forme, les codes suivants sont attribués :
PIA = Valeur de clé PortsInternetAvailable
UIP = Valeur de clé UseInternetPorts
La valeur de la clé ports, pour l’utilisation de cet exemple, est de 5 000 à 5100 pour chaque entrée.
Application | PIA | UIP | Résultats |
---|---|---|---|
InternetApp | O | O | Utilise des ports compris entre 5000 et 5100 |
LocalApp | O | O | Utilise un port en dehors de la plage 5000-5100 |
DefaultApp | O | O | Utilise des ports compris entre 5000 et 5100 |
InternetApp | O | N | Utilise des ports compris entre 5000 et 5100 |
LocalApp | O | N | Utilise un port en dehors de la plage 5000-5100 |
DefaultApp | O | N | Utilise un port en dehors de la plage 5000-5100 |
InternetApp | N | O | Utilise un port en dehors de la plage 5000-5100 |
LocalApp | N | O | Utilise des ports compris entre 5000 et 5100 |
DefaultApp | N | O | Utilise un port en dehors de la plage 5000-5100 |
InternetApp | N | N | Utilise un port en dehors de la plage 5000-5100 |
LocalApp | N | N | Utilise des ports compris entre 5000 et 5100 |
DefaultApp | N | N | Utilise des ports compris entre 5000 et 5100 |
Rubriques connexes