다음을 통해 공유


포트 할당 및 선택적 바인딩에 대한 레지스트리 구성

Windows 2000부터 Rpccfg.exe라는 Windows 리소스 키트의 유틸리티를 사용하여 바인딩을 설정해야 합니다. 자세한 내용은 적절한 운영 체제 버전에 대한 Windows 리소스 키트를 참조하세요.

Windows 2000 이전 버전의 경우 다음 표의 레지스트리 키는 동적 포트 할당 및 다중 호스트 컴퓨터의 NIC에 바인딩에 대한 시스템 기본값을 지정합니다. 먼저 이러한 키를 만든 다음 적절한 설정을 지정해야 합니다.

RpcServerUseProtseqEx 함수를 사용하면 이러한 설정에 영향을 줍니다. 개발자는 포트 할당을 관리할 때 이 섹션에 설명된 레지스트리 설정과 RpcServerUseProtseqEx 함수에 대해 잘 알고 있어야 합니다. 3개의 가상 애플리케이션이 있는 예제는 아래 표를 따르며 이러한 설정과 RpcServerUseProtseqEx 함수가 상호 운용되는 방법을 보여 줍니다.

키가 없거나 잘못된 값이 포함된 경우 전체 구성이 잘못된 것으로 표시되고 ncacn_ip_tcp 또는 ncadg_ip_udp 대한 모든 RpcServerUseProtseq* 호출이 실패합니다.

참고

프로세스에 할당된 포트는 해당 프로세스가 죽을 때까지 할당된 상태로 유지됩니다. 사용 가능한 모든 포트가 사용 중인 경우 함수는 RPC_S_OUT_OF_RESOURCES 반환합니다.

 

포트 키 데이터 형식 Description
HKEY_LOCAL_MACHINE   Software      Microsoft         Rpc            Internet               Ports
REG_MULTI_SZ 인터넷에서 사용할 수 있는 모든 포트 또는 인터넷에서 사용할 수 없는 모든 포트로 구성된 IP 포트 범위 집합을 지정합니다. 각 문자열은 단일 포트 또는 포괄 포트 집합(예: 1000-1050, 1984)을 나타냅니다. 항목이 0에서 65535 범위 밖에 있거나 문자열을 해석할 수 없는 경우 RPC 런타임은 전체 구성을 잘못된 것으로 처리합니다.
HKEY_LOCAL_MACHINE   Software      Microsoft         Rpc            Internet               PortsInternetAvailable
REG_SZ Y 또는 N(대/소문자를 구분하지 않음). Y이면 포트 키에 나열된 포트는 모두 해당 컴퓨터에서 인터넷에서 사용할 수 있는 포트입니다. N이면 포트 키에 나열된 포트는 모두 인터넷을 사용할 수 없는 포트입니다.
HKEY_LOCAL_MACHINE   Software      Microsoft         Rpc            Internet               UseInternetPorts
REG_SZ Y 또는 N(대/소문자를 구분하지 않음). 시스템 기본 정책을 지정합니다. Y이면 위에서 정의한 대로 기본값을 사용하는 프로세스에 인터넷 사용 가능한 포트 집합의 포트가 할당됩니다. N이면 기본값을 사용하는 프로세스에 인트라넷 전용 포트 집합의 포트가 할당됩니다.
HKEY_LOCAL_MACHINE   System      CurrentControlSet         Services            Rpc               Linkage                  Bind
REG_MULTI_SZ 기본적으로 바인딩할 모든 NIC의 디바이스 이름을 나열합니다(예: \Device\AMDPCN1). 키가 없으면 서버는 모든 NIC에 바인딩됩니다. 키가 있는 경우 NICFlags 필드가 RPC_C_BIND_TO_ALL_NICS 설정되지 않는 한 서버는 키에 지정된 NIC에 바인딩됩니다. 키에 null("") 값이 있는 경우 구성이 잘못된 것으로 표시되고 ncacn_ip_tcp 또는 ncadg_ip_udpRpcServerUseProtseq*에 대한 모든 호출이 실패합니다.

 

다음 표에서는 이전 표에 정의된 설정에 의해 세 개의 샘플 애플리케이션이 어떻게 영향을 받는지, 그리고 RpcServerUseProtseqEx 함수를 사용하여 적용된 설정도 어떻게 영향을 받는지 보여 줍니다.

이 예제에서는 다음과 같은 세 가지 가상 애플리케이션을 고려합니다.

다음 표에서는 이전 표에 설명된 레지스트리 항목에 지정된 값을 기반으로 이러한 설정이 미치는 영향에 대해 설명합니다. 서식 고려 사항의 경우 다음 코드가 할당됩니다.

PIA = PortsInternetAvailable 키 값

UIP = UseInternetPorts 키 값

이 예제를 위해 포트 키의 값은 각 항목에 대해 5000-5100입니다.

애플리케이션 PIA UIP 결과
InternetApp Y Y 5000에서 5100 사이의 포트 사용
LocalApp Y Y 5000-5100 범위 외부의 포트 사용
DefaultApp Y Y 5000에서 5100 사이의 포트 사용
InternetApp Y N 5000에서 5100 사이의 포트 사용
LocalApp Y N 5000-5100 범위 외부의 포트 사용
DefaultApp Y N 5000-5100 범위 외부의 포트 사용
InternetApp N Y 5000-5100 범위 외부의 포트 사용
LocalApp N Y 5000에서 5100 사이의 포트 사용
DefaultApp N Y 5000-5100 범위 외부의 포트 사용
InternetApp N N 5000-5100 범위 외부의 포트 사용
LocalApp N N 5000에서 5100 사이의 포트 사용
DefaultApp N N 5000에서 5100 사이의 포트 사용

 

RPC_POLICY

RpcServerUseAllProtseqsEx

RpcServerUseAllProtseqsIfEx

RpcServerUseProtseqEx

RpcServerUseProtseqEpEx

RpcServerUseProtseqIfEx

ncacn_ip_tcp

ncadg_ip_udp