Condividi tramite


Configurazione del registro di sistema per le assegnazioni di porte e l'associazione selettiva

A partire da Windows 2000, è consigliabile usare un'utilità in Windows Resource Kit denominata Rpccfg.exe per impostare le associazioni. Per altre informazioni, vedere Windows Resource Kit per la versione appropriata del sistema operativo.

Per le versioni di Windows precedenti a Windows 2000, le chiavi del Registro di sistema nella tabella seguente specificano le impostazioni predefinite di sistema per l'allocazione dinamica delle porte e per l'associazione alle schede di interfaccia di rete nei computer multihomed. È prima necessario creare queste chiavi e quindi specificare le impostazioni appropriate.

L'uso della funzioneRpcServerUseProtseqExinfluisce su queste impostazioni. Gli sviluppatori devono avere familiarità con le impostazioni del Registro di sistema descritte in questa sezione e la funzione RpcServerUseProtseqEx quando si gestiscono le allocazioni delle porte. Un esempio con tre applicazioni ipotetiche segue la tabella sottostante e illustra come queste impostazioni e la funzione RpcServerUseProtseqEx interagiscono.

Se manca una chiave o se contiene un valore non valido, l'intera configurazione viene contrassegnata come non valida e tutte le RpcServerUseProtseq* chiamate su ncacn_ip_tcp o ncadg_ip_udp avranno esito negativo.

Nota

Le porte allocate a un processo sono rimaste allocate fino a quando tale processo non termina. Se tutte le porte disponibili sono in uso, la funzione restituisce RPC_S_OUT_OF_RESOURCES.

 

Chiave porta Tipo di dati Descrizione
HKEY_LOCAL_MACHINE   Software      Microsoft         Rpc            Internet               Ports
REG_MULTI_SZ Specifica un set di intervalli di porte IP costituiti da tutte le porte disponibili da Internet o da tutte le porte non disponibili da Internet. Ogni stringa rappresenta una singola porta o un set inclusivo di porte (ad esempio, 1000-1050, 1984). Se le voci non rientrano nell'intervallo compreso tra 0 e 65535 o se una stringa non può essere interpretata, il tempo di esecuzione RPC considererà l'intera configurazione come non valida.
HKEY_LOCAL_MACHINE   Software      Microsoft         Rpc            Internet               PortsInternetAvailable
REG_SZ Y o N (senza distinzione tra maiuscole e minuscole). Se Y, le porte elencate nella chiave Porte sono tutte le porte disponibili su Internet nel computer. Se N, le porte elencate nella chiave Porte sono tutte quelle porte che non sono disponibili su Internet.
HKEY_LOCAL_MACHINE   Software      Microsoft         Rpc            Internet               UseInternetPorts
REG_SZ Y o N (senza distinzione tra maiuscole e minuscole). Specifica i criteri predefiniti del sistema. Se Y, ai processi che usano il valore predefinito verranno assegnate porte dal set di porte disponibili per Internet, come definito in precedenza. Se N, ai processi che usano il valore predefinito verranno assegnate porte dal set di porte solo Intranet.
HKEY_LOCAL_MACHINE   System      CurrentControlSet         Services            Rpc               Linkage                  Bind
REG_MULTI_SZ Elenca i nomi dei dispositivi di tutte le schede di interfaccia di rete in cui eseguire l'associazione per impostazione predefinita, ad esempio \Device\AMDPCN1. Se la chiave non esiste, il server verrà associato a tutte le schede di interfaccia di rete. Se la chiave esiste, il server verrà associato alle schede di interfaccia di rete specificate nella chiave, a meno che il campo NICFlags non sia impostato su RPC_C_BIND_TO_ALL_NICS. Se la chiave ha un valore null (""), la configurazione verrà contrassegnata come non valida e tutte le chiamate a RpcServerUseProtseq* su ncacn_ip_tcp o ncadg_ip_udp avranno esito negativo.

 

Nella tabella seguente viene illustrato il modo in cui tre applicazioni di esempio sono interessate dalle impostazioni definite nella tabella precedente e come vengono interessate anche le impostazioni applicate usando la funzionerpcServerUseProtseqEx.

In questo esempio vengono considerate tre applicazioni ipotetiche:

  • InternetApp: Questa applicazione è destinata all'esposizione a Internet e ha specificato RPC_C_USE_INTERNET_PORT nel membro EndpointFlags della struttura RPC_POLICY passata alla funzione RpcServerUseProtseqEx.
  • LocalApp: questa applicazione non è destinata all'esposizione a Internet e ha specificato RPC_C_USE_INTRANET_PORT nel EndpointFlags membro della struttura di RPC_POLICY passata alla funzione RpcServerUseProtseqEx.
  • DefaultApp: Questa applicazione specifica zero nel membro EndpointFlags della struttura RPC_POLICY passata alla funzione RpcServerUseProtseqEx.

La tabella seguente illustra l'impatto di queste impostazioni in base ai valori specificati nelle voci del Registro di sistema illustrate nella tabella precedente. Per considerazioni sulla formattazione, vengono assegnati i codici seguenti:

PIA = PortsInternetAvailable Key value

UIP = Valore chiave UseInternetPorts

Per questo esempio, il valore della chiave Ports è 5000-5100 per ogni voce.

Applicazione PIA UIP Risultato
ApplicazioneInternet Y Y Usa porte comprese tra 5000 e 5100
LocalApp Y Y Utilizza una porta al di fuori dell'intervallo 5000-5100
DefaultApp Y Y Usa porte comprese tra 5000 e 5100
InternetApp Y N Usa porte comprese tra 5000 e 5100
LocalApp Y N Usa una porta al di fuori dell'intervallo 5000-5100
DefaultApp Y N Usa una porta al di fuori dell'intervallo 5000-5100
InternetApp N Y Usa una porta al di fuori dell'intervallo di porte 5000-5100
LocalApp N Y Usa porte comprese tra 5000 e 5100
App predefinita N Y Usa una porta esterna all'intervallo 5000-5100
InternetApp N N Usa una porta al di fuori dell'intervallo 5000-5100
LocalApp N N Usa porte comprese tra 5000 e 5100
App predefinita N N Usa porte comprese tra 5000 e 5100

 

RPC_POLICY

RpcServerUseAllProtseqsEx

RpcServerUseAllProtseqsIfEx

RpcServerUseProtseqEx

RpcServerUseProtseqEpEx

RpcServerUseProtseqIfEx

ncacn_ip_tcp

ncadg_ip_udp