다음을 통해 공유


RASPPP_PROJECTION_INFO 구조체(ras.h)

RASPPP_PROJECTION_INFO 구조에는 인터넷 프로토콜 버전 4(IPv4) 및 IPv6 프로젝션 작업의 PPP(지점 간) 협상과 PPP LCP(링크 제어 프로토콜)/멀티링크 및 CCP(압축 제어 프로토콜) 협상 중에 얻은 정보가 포함됩니다.

구문

typedef struct _RASPPP_PROJECTION_INFO {
  DWORD       dwIPv4NegotiationError;
  RASIPV4ADDR ipv4Address;
  RASIPV4ADDR ipv4ServerAddress;
  DWORD       dwIPv4Options;
  DWORD       dwIPv4ServerOptions;
  DWORD       dwIPv6NegotiationError;
  BYTE        bInterfaceIdentifier[8];
  BYTE        bServerInterfaceIdentifier[8];
  BOOL        fBundled;
  BOOL        fMultilink;
  DWORD       dwAuthenticationProtocol;
  DWORD       dwAuthenticationData;
  DWORD       dwServerAuthenticationProtocol;
  DWORD       dwServerAuthenticationData;
  DWORD       dwEapTypeId;
  DWORD       dwServerEapTypeId;
  DWORD       dwLcpOptions;
  DWORD       dwLcpServerOptions;
  DWORD       dwCcpError;
  DWORD       dwCcpCompressionAlgorithm;
  DWORD       dwCcpServerCompressionAlgorithm;
  DWORD       dwCcpOptions;
  DWORD       dwCcpServerOptions;
} RASPPP_PROJECTION_INFO, *PRASPPP_PROJECTION_INFO;

멤버

dwIPv4NegotiationError

PPP IPv4 네트워크 제어 프로토콜 협상 결과를 지정하는 값입니다. 값이 0이면 Ipv4가 성공적으로 협상되었음을 나타냅니다. 0이 아닌 값은 실패를 나타내며 제어 프로토콜 협상 중에 발생한 치명적인 오류입니다.

ipv4Address

로컬 클라이언트의 IPv4 주소를 지정하는 null로 종료된 유니코드 문자열을 포함하는 RASIPV4ADDR . 이 문자열에는 "a.b.c.d" 형식이 있습니다. ipv4AddressdwIPv4NegotiationError 가 0인 경우에만 유효합니다.

ipv4ServerAddress

원격 서버의 IPv4 주소를 지정하는 유니코드 문자열을 포함하는 RASIPV4ADDR 구조체입니다. 이 문자열에는 "a.b.c.d" 형식이 있습니다. ipv4ServerAddressdwIPv4NegotiationError 가 0인 경우에만 유효합니다. 주소를 사용할 수 없는 경우 이 멤버는 빈 문자열입니다.

dwIPv4Options

로컬 클라이언트에 대한 IPCP(인터넷 프로토콜 제어 프로토콜) 옵션을 지정하는 값입니다.

의미
RASIPO_VJ
로컬 클라이언트에서 보낸 IP 데이터그램이 Van Jacobson 압축을 사용하여 압축됨을 나타냅니다.

dwIPv4ServerOptions

원격 서버에 대한 IPCP 옵션을 지정하는 값입니다.

의미
RASIPO_VJ
원격 서버에서 보낸 IP 데이터그램(즉, 로컬 컴퓨터에서 수신)이 Van Jacobson 압축을 사용하여 압축됨을 나타냅니다.

dwIPv6NegotiationError

PPP IPv6 네트워크 제어 프로토콜 협상 결과를 지정하는 값입니다. 값이 0이면 Ipv6이 성공적으로 협상되었음을 나타냅니다. 0이 아닌 값은 실패를 나타내며 제어 프로토콜 협상 중에 발생한 치명적인 오류입니다.

bInterfaceIdentifier[8]

클라이언트의 64비트 IPv6 인터페이스 식별자를 지정하는 배열입니다. 128비트 IPv6 인터넷 주소의 마지막 64비트 는 이전 64비트에서 강력한 수준의 고유성을 제공하는 "인터페이스 식별자"로 간주됩니다. bInterfaceIdentifier 는 0이 아니어야 하며 dwIPv6NegotiationError 가 0인 경우에만 유효합니다.

bServerInterfaceIdentifier[8]

서버의 64비트 IPv6 인터페이스 식별자를 지정하는 배열입니다. 128비트 IPv6 인터넷 주소의 마지막 64비트 는 이전 64비트에서 강력한 수준의 고유성을 제공하는 "인터페이스 식별자"로 간주됩니다. bServerInterfaceIdentifier 는 0이 아니어야 하며 dwIPv6NegotiationError 가 0인 경우에만 유효합니다.

fBundled

연결이 여러 링크로 구성된 경우 TRUE이고 그렇지 않으면 FALSEBOOL입니다.

fMultilink

연결이 여러 링크를 지원하는 경우 TRUE이고 그렇지 않으면 FALSEBOOL입니다.

dwAuthenticationProtocol

로컬 클라이언트를 인증하는 데 사용되는 인증 프로토콜을 지정하는 값입니다. 이 멤버는 다음 값 중 하나일 수 있습니다.

의미
RASLCPAP_PAP
암호 인증 프로토콜.
RASLCPAP_SPAP
Shiva 암호 인증 프로토콜.
RASLCPAP_CHAP
핸드셰이크 인증 프로토콜에 도전합니다.
RASLCPAP_EAP
확장 가능한 인증 프로토콜입니다.

dwAuthenticationData

dwAuthenticationProtocol에서 지정한 인증 프로토콜에 대한 추가 정보를 지정하는 값입니다. dwAuthenticationDatadwServerAuthenticationData 클라이언트 및 서버의 다른 인증 프로토콜인 경우 이 멤버는 다음 값 중 하나일 수 있습니다.

의미
RASLCPAD_CHAP_MD5
MD5 CHAP.
RASLCPAD_CHAP_MS
Microsoft CHAP.
RASLCPAD_CHAP_MSV2
Microsoft CHAP 버전 2.

dwServerAuthenticationProtocol

원격 서버를 인증하는 데 사용되는 인증 프로토콜을 지정하는 값입니다. 이 멤버는 다음 값 중 하나일 수 있습니다.

의미
RASLCPAP_PAP
암호 인증 프로토콜.
RASLCPAP_SPAP
Shiva 암호 인증 프로토콜.
RASLCPAP_CHAP
핸드셰이크 인증 프로토콜에 도전합니다.
RASLCPAP_EAP
확장 가능한 인증 프로토콜입니다.

dwServerAuthenticationData

dwServerAuthenticationProtocol에서 지정한 인증 프로토콜에 대한 추가 정보를 지정하는 값입니다. dwAuthenticationDatadwServerAuthenticationData 클라이언트 및 서버의 다른 인증 프로토콜인 경우 이 멤버는 다음 값 중 하나일 수 있습니다.

의미
RASLCPAD_CHAP_MD5
MD5 CHAP.
RASLCPAD_CHAP_MS
Microsoft CHAP.
RASLCPAD_CHAP_MSV2
Microsoft CHAP 버전 2.

dwEapTypeId

로컬 클라이언트를 인증하는 데 사용되는 EAP(확장 가능 인증 프로토콜)의 형식 식별자를 지정하는 값입니다. 이 멤버의 값은 dwAuthenticationProtocolRASLCPAPP_EAP 경우에만 유효합니다.

dwServerEapTypeId

원격 서버를 인증하는 데 사용되는 EAP(확장 가능 인증 프로토콜)의 형식 식별자를 지정하는 값입니다. 이 멤버의 값은 dwRemoteAuthenticationProtocolRASLCPAPP_EAP 경우에만 유효합니다.

dwLcpOptions

로컬 클라이언트에서 사용 중인 LCP 옵션에 대한 정보를 지정하는 값입니다. 이 멤버는 다음 플래그의 조합입니다.

의미
RASLCPO_PFC
연결은 프로토콜 필드 압축(RFC 1172)을 사용합니다.
RASLCPO_ACFC
연결은 주소 및 제어 필드 압축(RFC 1172)을 사용합니다.
RASLCPO_SSHF
연결에서 짧은 시퀀스 번호 헤더 형식을 사용하고 있습니다(RFC 1990 참조).
RASLCPO_DES_56
연결에서 DES 56비트 암호화를 사용하고 있습니다.
RASLCPO_3_DES
연결에서 Triple DES Encryption을 사용하고 있습니다.

dwLcpServerOptions

원격 서버에서 사용 중인 LCP 옵션에 대한 정보를 지정하는 값입니다. 이 멤버는 다음 플래그의 조합입니다.

의미
RASLCPO_PFC
연결에서 프로토콜 필드 압축(RFC 1172)을 사용하고 있습니다.
RASLCPO_ACFC
연결에서 주소 및 제어 필드 압축(RFC 1172)을 사용합니다.
RASLCPO_SSHF
연결에서 짧은 시퀀스 번호 헤더 형식을 사용합니다(RFC 1990 참조).
RASLCPO_DES_56
연결에서 DES 56비트 암호화를 사용하고 있습니다.
RASLCPO_3_DES
연결에서 Triple DES Encryption을 사용하고 있습니다.

dwCcpError

dwCcpCompressionAlgorithm

로컬 클라이언트에서 사용하는 압축 알고리즘을 지정하는 값입니다. 다음 표에서는 이 멤버에 대해 가능한 값을 보여 있습니다.

의미
RASCCPCA_MPPC
MICROSOFT MPPC(지점 간 압축) 프로토콜(RFC 2118).
RASCCPCA_STAC
STAC 옵션 4(RFC 1974).

dwCcpServerCompressionAlgorithm

원격 서버에서 사용하는 압축 알고리즘을 지정하는 값입니다. 지원되는 알고리즘은 다음과 같습니다.

의미
RASCCPCA_MPPC
MPPC(Microsoft 지점 간 압축) 프로토콜( RFC 2118).
RASCCPCA_STAC
STAC 옵션 4( RFC 1974).

dwCcpOptions

로컬 클라이언트에서 사용할 수 있는 압축 유형을 지정하는 값입니다. 다음과 같은 형식이 지원됩니다.

의미
RASCCPO_COMPRESSION
암호화 없이 압축.
RASCCPO_HISTORYLESS
상태 비정상 모드의 MPPE(Microsoft Point-to-Point Encryption). 세션 키는 모든 패킷 후에 변경됩니다. 이 모드는 대기 시간이 긴 네트워크 또는 상당한 패킷 손실을 경험하는 네트워크에서 성능을 향상시킵니다.
RASCCPO_ENCRYPTION40BITOLD
40비트 키를 사용한 MPPE 압축.
RASCCPO_ENCRYPTION40BIT
40비트 키를 사용한 MPPE 압축.
RASCCPO_ENCRYPTION56BIT
56비트 키를 사용한 MPPE 압축.
RASCCPO_ENCRYPTION128BIT
128비트 키를 사용한 MPPE 압축.

dwCcpServerOptions

원격 서버에서 사용할 수 있는 압축 유형을 지정하는 값입니다. 다음과 같은 형식이 지원됩니다.

의미
RASCCPO_COMPRESSION
암호화 없이 압축.
RASCCPO_HISTORYLESS
상태 비정상 모드의 MPPE(Microsoft Point-to-Point Encryption). 세션 키는 모든 패킷 후에 변경됩니다. 이 모드는 대기 시간이 긴 네트워크 또는 상당한 패킷 손실을 경험하는 네트워크에서 성능을 향상시킵니다.
RASCCPO_ENCRYPTION40BITOLD
40비트 키를 사용한 MPPE 압축.
RASCCPO_ENCRYPTION40BIT
40비트 키를 사용한 MPPE 압축.
RASCCPO_ENCRYPTION56BIT
56비트 키를 사용한 MPPE 압축.
RASCCPO_ENCRYPTION128BIT
128비트 키를 사용한 MPPE 압축.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
머리글 ras.h

추가 정보

RasGetProjectionInfoEx

RAS(원격 액세스 서비스) 개요

원격 액세스 서비스 구조