PPP_PROJECTION_INFO2-Struktur (mprapi.h)

Enthält Informationen, die während der PPP-Aushandlung (Point-to-Point) für secure Socket Tunneling Protocol (SSTP), Point-to-Point Tunneling Protocol (PPTP) und Layer 2 Tunneling Protocol (L2TP) abgerufen wurden.

Syntax

typedef struct _PPP_PROJECTION_INFO2 {
  DWORD   dwIPv4NegotiationError;
  WCHAR   wszAddress[IPADDRESSLEN + 1];
  WCHAR   wszRemoteAddress[IPADDRESSLEN + 1];
  DWORD   dwIPv4Options;
  DWORD   dwIPv4RemoteOptions;
  ULONG64 IPv4SubInterfaceIndex;
  DWORD   dwIPv6NegotiationError;
  BYTE    bInterfaceIdentifier[8];
  BYTE    bRemoteInterfaceIdentifier[8];
  BYTE    bPrefix[8];
  DWORD   dwPrefixLength;
  ULONG64 IPv6SubInterfaceIndex;
  DWORD   dwLcpError;
  DWORD   dwAuthenticationProtocol;
  DWORD   dwAuthenticationData;
  DWORD   dwRemoteAuthenticationProtocol;
  DWORD   dwRemoteAuthenticationData;
  DWORD   dwLcpTerminateReason;
  DWORD   dwLcpRemoteTerminateReason;
  DWORD   dwLcpOptions;
  DWORD   dwLcpRemoteOptions;
  DWORD   dwEapTypeId;
  DWORD   dwEmbeddedEAPTypeId;
  DWORD   dwRemoteEapTypeId;
  DWORD   dwCcpError;
  DWORD   dwCompressionAlgorithm;
  DWORD   dwCcpOptions;
  DWORD   dwRemoteCompressionAlgorithm;
  DWORD   dwCcpRemoteOptions;
} PPP_PROJECTION_INFO2, *PPPP_PROJECTION_INFO2;

Members

dwIPv4NegotiationError

Ein Wert, der das Ergebnis der PPP-IPv4-Netzwerksteuerungsprotokollaushandlung angibt. Der Wert 0 gibt an, dass IPv4 erfolgreich ausgehandelt wurde. Ein nichtzero-Wert gibt einen Fehler an und stellt auch den schwerwiegenden Fehler dar, der während der Aushandlung des Kontrollprotokolls aufgetreten ist.

wszAddress[IPADDRESSLEN + 1]

Eine mit Null beendete Unicode-Zeichenfolge, die die IPv4-Adresse des lokalen Clients angibt. Diese Zeichenfolge hat das Format "a.b.c.d". Der wszAddress-Member ist nur gültig, wenn dwIPv4NegotiationError 0 ist.

wszRemoteAddress[IPADDRESSLEN + 1]

Ein Array, das eine Unicode-Zeichenfolge enthält, die die IPv4-Adresse des Remoteservers angibt. Diese Zeichenfolge hat das Format "a.b.c.d". Der wszRemoteAddress-Member ist nur gültig, wenn das dwIPv4NegotiationError-Element 0 ist. Wenn die Adresse nicht verfügbar ist, ist dieses Element eine leere Zeichenfolge.

dwIPv4Options

Ein Wert, der IPCP-Optionen für den lokalen Client angibt.

Wert Bedeutung
PPP_IPCP_VJ
Gibt an, dass IP-Datagramme, die vom lokalen Client gesendet werden, mithilfe der Van Jacobson-Komprimierung komprimiert werden.

dwIPv4RemoteOptions

Ein Wert, der IPCP-Optionen für den Remoteserver angibt.

Wert Bedeutung
PPP_IPCP_VJ
Gibt an, dass vom Remoteserver gesendete IP-Datagramme (d. h. vom lokalen Computer empfangen) mithilfe der Van Jacobson-Komprimierung komprimiert werden.

IPv4SubInterfaceIndex

Ein Wert, der den Index der IPv4-Unteroberfläche angibt, der der Verbindung auf dem Server entspricht.

dwIPv6NegotiationError

Ein Wert, der das Ergebnis der PPP-IPv6-Netzwerksteuerungsprotokollaushandlung angibt. Der Wert 0 gibt an, dass Ipv6 erfolgreich ausgehandelt wurde. Ein wert nonzero gibt einen Fehler an und ist der schwerwiegende Fehler, der während der Aushandlung des Kontrollprotokolls aufgetreten ist.

bInterfaceIdentifier[8]

Ein Array, das den 64-Bit-IPv6-Schnittstellenbezeichner des Clients angibt. Die letzten 64 Bit einer 128-Bit-IPv6-Internetadresse werden als Schnittstellenbezeichner betrachtet, was eine starke Eindeutigkeit für die vorherigen 64 Bits bietet. Der bInterfaceIdentifier-Member darf nicht 0 sein und ist nur gültig, wenn der dwIPv6NegotiationError-Member 0 ist.

bRemoteInterfaceIdentifier[8]

Ein Array, das den 64-Bit-IPv6-Schnittstellenbezeichner des Servers angibt. Die letzten 64 Bit einer 128-Bit-IPv6-Internetadresse werden als Schnittstellenbezeichner betrachtet, was eine starke Eindeutigkeit für die vorherigen 64 Bits bietet. Der bInterfaceIdentifier-Member darf nicht 0 sein und ist nur gültig, wenn der dwIPv6NegotiationError-Member 0 ist.

bPrefix[8]

Ein Wert, der das IPv6-Adresspräfix der Clientschnittstelle angibt.

dwPrefixLength

Ein Wert, der die Länge des bPrefix-Elements in Bits angibt.

IPv6SubInterfaceIndex

Ein Wert, der den Index der IPv6-Unteroberfläche angibt, der der Verbindung auf dem Server entspricht.

dwLcpError

Ein Wert, der das Ergebnis der PPP-LCP-Aushandlung angibt. Der Wert 0 gibt an, dass LCP erfolgreich ausgehandelt wurde. Ein wert nonzero gibt einen Fehler an und stellt den schwerwiegenden Fehler dar, der während der Aushandlung des Kontrollprotokolls aufgetreten ist.

dwAuthenticationProtocol

Ein Wert, der das Authentifizierungsprotokoll angibt, das zum Authentifizieren des lokalen Clients verwendet wird. Dieser Member kann einer der folgenden Werte sein.

Wert Bedeutung
PPP_LCP_PAP
Kennwortauthentifizierungsprotokoll (PAP)
PPP_LCP_CHAP
Challenge Handshake Authentication Protocol
PPP_LCP_EAP
Extensible Authentication-Protokoll

dwAuthenticationData

Ein Wert, der zusätzliche Informationen zum Authentifizierungsprotokoll angibt, das vom dwAuthenticationProtocol-Element angegeben wird. Dieser Member kann einer der folgenden Werte sein.

Wert Bedeutung
PPP_LCP_CHAP_MD5
MD5 CHAP
PPP_LCP_CHAP_MS
Microsoft CHAP
PPP_LCP_CHAP_MSV2
Microsoft CHAP, Version 2

dwRemoteAuthenticationProtocol

Ein Wert, der das Authentifizierungsprotokoll angibt, das zum Authentifizieren des Remoteservers verwendet wird. Der dwAuthenticationProtocol-Member und der dwRemoteAuthenticationProtocol-Member unterscheiden sich, wenn die Bedarfswahl verschiedene Authentifizierungsprotokolle auf dem Client und Server verwendet. Dieser Member kann einer der folgenden Werte sein.

Wert Bedeutung
PPP_LCP_PAP
Kennwortauthentifizierungsprotokoll (PAP)
PPP_LCP_CHAP
Challenge Handshake Authentication Protocol
PPP_LCP_EAP
Extensible Authentication-Protokoll

dwRemoteAuthenticationData

Ein Wert, der zusätzliche Informationen zum Authentifizierungsprotokoll angibt, das vom dwRemoteAuthenticationProtocol-Element angegeben wird. Das dwAuthenticationData-Member und das dwRemoteAuthenticationData-Element unterscheiden sich, wenn die Bedarfswahl unterschiedliche Authentifizierungsprotokolle auf dem Client und Server verwendet. Dieser Member kann einer der folgenden Werte sein.

Wert Bedeutung
PPP_LCP_CHAP_MD5
MD5 CHAP
PPP_LCP_CHAP_MS
Microsoft CHAP
PPP_LCP_CHAP_MSV2
Microsoft CHAP, Version 2

dwLcpTerminateReason

Nicht implementiert. Muss den Wert 0 (null) haben.

dwLcpRemoteTerminateReason

Nicht implementiert. Muss den Wert 0 (null) haben.

dwLcpOptions

Ein Wert, der Informationen zu LCP-Optionen angibt, die vom lokalen Client verwendet werden. Dieses Element ist eine Kombination der folgenden Flags.

Wert Bedeutung
PPP_LCP_MULTILINK_FRAMING
Die Verbindung verwendet Multilink.
PPP_LCP_PFC
Die Verbindung verwendet die Protokollfeldkomprimierung.
PPP_LCP_ACFC
Die Verbindung verwendet Die Adress- und Steuerfeldkomprimierung.
PPP_LCP_SSHF
Die Verbindung verwendet das Headerformat für kurze Sequenznummern.
PPP_LCP_DES_56
Die Verbindung verwendet die DES-56-Bit-Verschlüsselung.
PPP_LCP_3_DES
Die Verbindung verwendet triple DES Encryption.
PPP_LCP_AES_128
Die Verbindung verwendet die 128-Bit-AES-Verschlüsselung.
PPP_LCP_AES_256
Die Verbindung verwendet die 256-Bit-AES-Verschlüsselung.

dwLcpRemoteOptions

Ein Wert, der Informationen zu LCP-Optionen angibt, die vom Remoteserver verwendet werden. Dieses Element ist eine Kombination der folgenden Flags.

Wert Bedeutung
PPP_LCP_MULTILINK_FRAMING
Die Verbindung verwendet Multilink.
PPP_LCP_PFC
Die Verbindung verwendet die Protokollfeldkomprimierung.
PPP_LCP_ACFC
Die Verbindung verwendet Die Adress- und Steuerfeldkomprimierung.
PPP_LCP_SSHF
Die Verbindung verwendet das Headerformat für kurze Sequenznummern.
PPP_LCP_DES_56
Die Verbindung verwendet die DES-56-Bit-Verschlüsselung.
PPP_LCP_3_DES
Die Verbindung verwendet triple DES Encryption.
PPP_LCP_AES_128
Die Verbindung verwendet die 128-Bit-AES-Verschlüsselung.
PPP_LCP_AES_256
Die Verbindung verwendet die 256-Bit-AES-Verschlüsselung.

dwEapTypeId

Ein Wert, der den Typbezeichner des Extensible Authentication Protocol (EAP) angibt, das zum Authentifizieren des lokalen Clients verwendet wird. Der Wert dieses Members ist nur gültig, wenn das dwAuthenticationProtocol-ElementPPP_LCP_EAP ist.

dwEmbeddedEAPTypeId

Ein Wert, der den Typbezeichner der inneren EAP-Methode angibt, die in der EAP-Authentifizierung verwendet wird. Der Wert dieses Members ist nur gültig, wenn das dwEapTypeId-Element auf PEAP festgelegt ist, das in IANA-EAP definiert ist.

dwRemoteEapTypeId

Ein Wert, der den Typbezeichner des Extensible Authentication Protocol (EAP) angibt, das zum Authentifizieren des Remoteservers verwendet wird. Der Wert dieses Members ist nur gültig, wenn das dwRemoteAuthenticationProtocol-ElementPPP_LCP_EAP ist.

dwCcpError

Ein Wert, der das Ergebnis der PPP CCP-Aushandlung angibt. Der Wert 0 gibt an, dass CCP erfolgreich ausgehandelt wurde. Ein wert nonzero gibt einen Fehler an und stellt den schwerwiegenden Fehler dar, der während der Aushandlung des Kontrollprotokolls aufgetreten ist.

dwCompressionAlgorithm

Ein Wert, der den vom lokalen Client verwendeten Komprimierungsalgorithmus angibt. In der folgenden Tabelle sind die möglichen Werte für dieses Element aufgeführt.

Wert Bedeutung
RASCCPCA_MPPC
MpPC-Protokoll (Point-to-Point Compression) von Microsoft.
RASCCPCA_STAC
STAC-Option 4.

dwCcpOptions

Ein Wert, der die auf dem lokalen Client verfügbaren Komprimierungstypen angibt. Die folgenden Typen werden unterstützt:

Wert Bedeutung
PPP_CCP_COMPRESSION
Komprimierung ohne Verschlüsselung.
PPP_CCP_HISTORYLESS
Microsoft Point-to-Point-Verschlüsselung (MPPE) im zustandslosen Modus. Der Sitzungsschlüssel wird nach jedem Paket geändert. Dieser Modus verbessert die Leistung in Netzwerken mit hoher Latenz oder in Netzwerken, in denen ein erheblicher Paketverlust auftritt.
PPP_CCP_ENCRYPTION40BITOLD
MPPE-Komprimierung mit 40-Bit-Schlüsseln.
PPP_CCP_ENCRYPTION40BIT
MPPE-Komprimierung mit 40-Bit-Schlüsseln.
PPP_CCP_ENCRYPTION56BIT
MPPE-Komprimierung mit 56-Bit-Schlüsseln.
PPP_CCP_ENCRYPTION128BIT
MPPE-Komprimierung mit 128-Bit-Schlüsseln.
 

Die letzten drei Optionen werden verwendet, wenn eine Verbindung über Layer 2 Tunneling Protocol (L2TP) hergestellt wird und die Verbindung IPSec-Verschlüsselung verwendet.

dwRemoteCompressionAlgorithm

Ein Wert, der den vom Remoteserver verwendeten Komprimierungsalgorithmus angibt. Die folgenden Algorithmen werden unterstützt.

Wert Bedeutung
RASCCPCA_MPPC
MpPC-Protokoll (Point-to-Point Compression) von Microsoft.
RASCCPCA_STAC
STAC-Option 4.

dwCcpRemoteOptions

Ein Wert, der die auf dem Remoteserver verfügbaren Komprimierungstypen angibt. Die folgenden Typen werden unterstützt:

Wert Bedeutung
PPP_CCP_COMPRESSION
Komprimierung ohne Verschlüsselung.
PPP_CCP_HISTORYLESS
Microsoft Point-to-Point-Verschlüsselung (MPPE) im zustandslosen Modus. Der Sitzungsschlüssel wird nach jedem Paket geändert. Dieser Modus verbessert die Leistung in Netzwerken mit hoher Latenz oder in Netzwerken, in denen ein erheblicher Paketverlust auftritt.
PPP_CCP_ENCRYPTION40BITOLD
MPPE-Komprimierung mit 40-Bit-Schlüsseln.
PPP_CCP_ENCRYPTION40BIT
MPPE-Komprimierung mit 40-Bit-Schlüsseln.
PPP_CCP_ENCRYPTION56BIT
MPPE-Komprimierung mit 56-Bit-Schlüsseln.
PPP_CCP_ENCRYPTION128BIT
MPPE-Komprimierung mit 128-Bit-Schlüsseln.
ERROR_PPP_NOT_CONVERGING
Der Remotecomputer und RRAS konnten bei der Adressaushandlung nicht konvergieren.
 

Die letzten drei Optionen werden verwendet, wenn eine Verbindung über Layer 2 Tunneling Protocol (L2TP) hergestellt wird und die Verbindung IPSec-Verschlüsselung verwendet.

Anforderungen

   
Unterstützte Mindestversion (Client) Nicht unterstützt
Unterstützte Mindestversion (Server) Windows Server 2012 [nur Desktop-Apps]
Kopfzeile mprapi.h