RASPPP_PROJECTION_INFO 结构 (ras.h)

RASPPP_PROJECTION_INFO结构包含在 Internet 协议版本 4 (IPv4) 和 IPv6 投影操作的点到点 (PPP) 协商期间获取的信息,以及 PPP 链路控制协议 (LCP) /multilink 以及压缩控制协议 (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 网络控制协议协商的结果。 值为零表示已成功协商 Ipv4。 非零值指示失败,是控制协议协商期间发生的致命错误。

ipv4Address

包含以 null 结尾的 Unicode 字符串的 RASIPV4ADDR ,该字符串指定本地客户端的 IPv4 地址。 此字符串的格式为“a.b.c.d”。 仅当 dwIPv4NegotiationError 为零时,ipv4Address 才有效。

ipv4ServerAddress

包含 Unicode 字符串的 RASIPV4ADDR 结构,该字符串指定远程服务器的 IPv4 地址。 此字符串的格式为“a.b.c.d”。 仅当 dwIPv4NegotiationError 为零时,ipv4ServerAddress 才有效。 如果地址不可用,则此成员为空字符串。

dwIPv4Options

一个 值,该值指定本地客户端 (IPCP) 选项的 Internet 协议控制协议。

含义
RASIPO_VJ
指示本地客户端发送的 IP 数据报使用 Van Jacobson 压缩进行压缩。

dwIPv4ServerOptions

一个 值,该值指定远程服务器的 IPCP 选项。

含义
RASIPO_VJ
指示远程服务器发送的 IP 数据报 (即本地计算机) 接收的 IP 数据报使用 Van Jacobson 压缩进行压缩。

dwIPv6NegotiationError

一个 值,该值指定 PPP IPv6 网络控制协议协商的结果。 值为零表示已成功协商 Ipv6。 非零值指示失败,是控制协议协商期间发生的致命错误。

bInterfaceIdentifier[8]

一个数组,指定客户端的 64 位 IPv6 接口标识符。 128 位 IPv6 Internet 地址的最后 64 位被视为“接口标识符”,它为前面的 64 位提供了很强的唯一性级别。 bInterfaceIdentifier 不得为零,并且仅在 dwIPv6NegotiationError 为零时有效。

bServerInterfaceIdentifier[8]

一个数组,指定服务器的 64 位 IPv6 接口标识符。 128 位 IPv6 Internet 地址的最后 64 位被视为“接口标识符”,它为前面的 64 位提供了很强的唯一性级别。 bServerInterfaceIdentifier 不得为零,并且仅在 dwIPv6NegotiationError 为零时有效。

fBundled

如果连接由多个链接组成,则为 TRUEBOOL,否则为 FALSE

fMultilink

如果连接支持多个链接,则为 TRUEBOOL,否则为 FALSE

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
连接使用三重 DES 加密。

dwLcpServerOptions

一个 值,该值指定远程服务器正在使用的 LCP 选项的相关信息。 此成员是以下标志的组合:

含义
RASLCPO_PFC
该连接使用协议字段压缩 (RFC 1172) 。
RASLCPO_ACFC
该连接使用地址和控制字段压缩 (RFC 1172) 。
RASLCPO_SSHF
连接使用短序列号标头格式 (请参阅 RFC 1990) 。
RASLCPO_DES_56
连接使用 DES 56 位加密。
RASLCPO_3_DES
连接使用三重 DES 加密。

dwCcpError

dwCcpCompressionAlgorithm

一个 值,该值指定本地客户端使用的压缩算法。 下表显示了此成员的可能值。

含义
RASCCPCA_MPPC
Microsoft 点对点压缩 (MPPC) 协议 (RFC 2118) 。
RASCCPCA_STAC
STAC 选项 4 (RFC 1974) 。

dwCcpServerCompressionAlgorithm

一个 值,该值指定远程服务器使用的压缩算法。 支持以下算法:

含义
RASCCPCA_MPPC
Microsoft 点对点压缩 (MPPC) 协议 ( RFC 2118) 。
RASCCPCA_STAC
STAC 选项 4 ( RFC 1974) 。

dwCcpOptions

一个 值,该值指定本地客户端上可用的压缩类型。 支持以下类型:

含义
RASCCPO_COMPRESSION
不加密的压缩。
RASCCPO_HISTORYLESS
Microsoft 点到点加密 (MPPE) 处于无状态模式。 会话密钥在每次数据包后都会更改。 此模式可提高高延迟网络或遇到重大数据包丢失的网络的性能。
RASCCPO_ENCRYPTION40BITOLD
使用 40 位密钥的 MPPE 压缩。
RASCCPO_ENCRYPTION40BIT
使用 40 位密钥的 MPPE 压缩。
RASCCPO_ENCRYPTION56BIT
使用 56 位密钥的 MPPE 压缩。
RASCCPO_ENCRYPTION128BIT
使用 128 位密钥的 MPPE 压缩。

dwCcpServerOptions

一个 值,该值指定远程服务器上可用的压缩类型。 支持以下类型:

含义
RASCCPO_COMPRESSION
不加密的压缩。
RASCCPO_HISTORYLESS
Microsoft 点到点加密 (MPPE) 处于无状态模式。 会话密钥在每次数据包后都会更改。 此模式可提高高延迟网络或遇到重大数据包丢失的网络的性能。
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) 概述

远程访问服务结构