PPP_PROJECTION_INFO2 構造体 (mprapi.h)

Secure Socket Tunneling Protocol (SSTP)、ポイントツーポイント トンネリング プロトコル (PPTP)、およびレイヤー 2 トンネリング プロトコル (L2TP) のポイントツーポイント (PPP) ネゴシエーション中に取得された情報が含まれます。

構文

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;

メンバー

dwIPv4NegotiationError

PPP IPv4 ネットワーク制御プロトコル ネゴシエーションの結果を示す 値。 値 0 は、IPv4 が正常にネゴシエートされたことを示します。 0 以外の値は失敗を示し、制御プロトコル ネゴシエーション中に発生した致命的なエラーも表します。

wszAddress[IPADDRESSLEN + 1]

ローカル クライアントの IPv4 アドレスを指定する null で終わる Unicode 文字列。 この文字列の形式は "a.b.c.d" です。 wszAddress メンバーは、dwIPv4NegotiationError が 0 の場合にのみ有効です。

wszRemoteAddress[IPADDRESSLEN + 1]

リモート サーバーの IPv4 アドレスを指定する Unicode 文字列を含む配列。 この文字列の形式は "a.b.c.d" です。 wszRemoteAddress メンバーは、dwIPv4NegotiationError メンバーが 0 の場合にのみ有効です。 アドレスが使用できない場合、このメンバーは空の文字列です。

dwIPv4Options

ローカル クライアントの IPCP オプションを指定する 値。

説明
PPP_IPCP_VJ
ローカル クライアントによって送信される IP データグラムが Van Jacobson 圧縮を使用して圧縮されることを示します。

dwIPv4RemoteOptions

リモート サーバーの IPCP オプションを指定する 値。

説明
PPP_IPCP_VJ
リモート サーバーから送信された IP データグラム (つまり、ローカル コンピューターによって受信) が Van Jacobson 圧縮を使用して圧縮されることを示します。

IPv4SubInterfaceIndex

サーバー上の接続に対応する IPv4 サブインターフェイス インデックスを指定する 値。

dwIPv6NegotiationError

PPP IPv6 ネットワーク制御プロトコル ネゴシエーションの結果を示す 値。 値 0 は、Ipv6 が正常にネゴシエートされたことを示します。 0 以外の値は失敗を示し、コントロール プロトコル ネゴシエーション中に発生した致命的なエラーです。

bInterfaceIdentifier[8]

クライアントの 64 ビット IPv6 インターフェイス識別子を指定する配列。 128 ビット IPv6 インターネット アドレスの最後の 64 ビットはインターフェイス識別子と見なされ、前の 64 ビットに対して一意性が高いレベルを提供します。 bInterfaceIdentifier メンバーは 0 にすることはできません。これは、dwIPv6NegotiationError メンバーが 0 の場合にのみ有効です。

bRemoteInterfaceIdentifier[8]

サーバーの 64 ビット IPv6 インターフェイス識別子を指定する配列。 128 ビット IPv6 インターネット アドレスの最後の 64 ビットはインターフェイス識別子と見なされ、前の 64 ビットに対して一意性が高いレベルを提供します。 bInterfaceIdentifier メンバーは 0 にすることはできません。これは、dwIPv6NegotiationError メンバーが 0 の場合にのみ有効です。

bPrefix[8]

クライアント インターフェイスの IPv6 アドレス プレフィックスを示す 値です。

dwPrefixLength

bPrefix メンバーの長さをビット単位で指定する 値。

IPv6SubInterfaceIndex

サーバー上の接続に対応する IPv6 サブインターフェイス インデックスを指定する 値。

dwLcpError

PPP LCP ネゴシエーションの結果を示す 値。 値 0 は、LCP が正常にネゴシエートされたことを示します。 0 以外の値は失敗を示し、制御プロトコル ネゴシエーション中に発生した致命的なエラーを表します。

dwAuthenticationProtocol

ローカル クライアントの認証に使用される認証プロトコルを指定する 値。 このメンバーには、次のいずれかの値を指定できます。

説明
PPP_LCP_PAP
パスワード認証プロトコル
PPP_LCP_CHAP
チャレンジ ハンドシェイク認証プロトコル
PPP_LCP_EAP
拡張認証プロトコル

dwAuthenticationData

dwAuthenticationProtocol メンバーによって指定された認証プロトコルに関する追加情報を示す 値です。 このメンバーには、次のいずれかの値を指定できます。

説明
PPP_LCP_CHAP_MD5
MD5 CHAP
PPP_LCP_CHAP_MS
Microsoft CHAP
PPP_LCP_CHAP_MSV2
Microsoft CHAP バージョン 2

dwRemoteAuthenticationProtocol

リモート サーバーの認証に使用される認証プロトコルを示す 値です。 dwAuthenticationProtocol メンバーと dwRemoteAuthenticationProtocol メンバーは、要求ダイヤルがクライアントとサーバーで異なる認証プロトコルを使用する場合に異なります。 このメンバーには、次のいずれかの値を指定できます。

説明
PPP_LCP_PAP
パスワード認証プロトコル
PPP_LCP_CHAP
チャレンジ ハンドシェイク認証プロトコル
PPP_LCP_EAP
拡張認証プロトコル

dwRemoteAuthenticationData

dwRemoteAuthenticationProtocol メンバーによって指定された認証プロトコルに関する追加情報を指定する 値。 dwAuthenticationData メンバーと dwRemoteAuthenticationData メンバーは、要求ダイヤルがクライアントとサーバーで異なる認証プロトコルを使用する場合に異なります。 このメンバーには、次のいずれかの値を指定できます。

説明
PPP_LCP_CHAP_MD5
MD5 CHAP
PPP_LCP_CHAP_MS
Microsoft CHAP
PPP_LCP_CHAP_MSV2
Microsoft CHAP バージョン 2

dwLcpTerminateReason

実装されていません。 0 を指定する必要があります。

dwLcpRemoteTerminateReason

実装されていません。 0 を指定する必要があります。

dwLcpOptions

ローカル クライアントで使用されている LCP オプションに関する情報を示す 値です。 このメンバーは、次のフラグの組み合わせです。

説明
PPP_LCP_MULTILINK_FRAMING
接続でマルチリンクが使用されています。
PPP_LCP_PFC
接続でプロトコル フィールド圧縮が使用されています。
PPP_LCP_ACFC
接続では、アドレスとコントロール フィールドの圧縮が使用されています。
PPP_LCP_SSHF
接続では、短いシーケンス番号ヘッダー形式が使用されています。
PPP_LCP_DES_56
接続では DES 56 ビット暗号化が使用されています。
PPP_LCP_3_DES
接続では、Triple DES Encryption が使用されています。
PPP_LCP_AES_128
接続で 128 ビット AES 暗号化が使用されています。
PPP_LCP_AES_256
接続で 256 ビット AES 暗号化が使用されています。

dwLcpRemoteOptions

リモート サーバーで使用されている LCP オプションに関する情報を示す 値です。 このメンバーは、次のフラグの組み合わせです。

説明
PPP_LCP_MULTILINK_FRAMING
接続でマルチリンクが使用されています。
PPP_LCP_PFC
接続でプロトコル フィールド圧縮が使用されています。
PPP_LCP_ACFC
接続では、アドレスとコントロール フィールドの圧縮が使用されています。
PPP_LCP_SSHF
接続では、短いシーケンス番号ヘッダー形式が使用されています。
PPP_LCP_DES_56
接続では DES 56 ビット暗号化が使用されています。
PPP_LCP_3_DES
接続では、Triple DES Encryption が使用されています。
PPP_LCP_AES_128
接続で 128 ビット AES 暗号化が使用されています。
PPP_LCP_AES_256
接続で 256 ビット AES 暗号化が使用されています。

dwEapTypeId

ローカル クライアントの認証に使用される拡張認証プロトコル (EAP) の型識別子を指定する 値。 このメンバーの値は、 dwAuthenticationProtocol メンバーが PPP_LCP_EAPされている場合にのみ有効です。

dwEmbeddedEAPTypeId

EAP 認証で使用される内部 EAP メソッドの型識別子を指定する 値。 このメンバーの値は、 dwEapTypeId メンバーが IANA-EAP で定義されている PEAP に設定されている場合にのみ有効です。

dwRemoteEapTypeId

リモート サーバーの認証に使用される拡張認証プロトコル (EAP) の型識別子を指定する 値。 このメンバーの値は、 dwRemoteAuthenticationProtocol メンバーが PPP_LCP_EAPされている場合にのみ有効です。

dwCcpError

PPP CCP ネゴシエーションの結果を示す 値。 値 0 は、CCP が正常にネゴシエートされたことを示します。 0 以外の値は失敗を示し、制御プロトコル ネゴシエーション中に発生した致命的なエラーを表します。

dwCompressionAlgorithm

ローカル クライアントで使用される圧縮アルゴリズムを示す 値です。 次の表に、このメンバーに使用できる値を示します。

説明
RASCCPCA_MPPC
Microsoft ポイントツーポイント圧縮 (MPPC) プロトコル。
RASCCPCA_STAC
STAC オプション 4。

dwCcpOptions

ローカル クライアントで使用できる圧縮の種類を示す 値です。 次の種類がサポートされています。

説明
PPP_CCP_COMPRESSION
暗号化なしの圧縮。
PPP_CCP_HISTORYLESS
ステートレス モードの Microsoft Point-to-Point Encryption (MPPE)。 セッション キーは、パケットのたびに変更されます。 このモードでは、待ち時間の長いネットワーク、または大幅なパケット損失が発生するネットワークのパフォーマンスが向上します。
PPP_CCP_ENCRYPTION40BITOLD
40 ビット キーを使用した MPPE 圧縮。
PPP_CCP_ENCRYPTION40BIT
40 ビット キーを使用した MPPE 圧縮。
PPP_CCP_ENCRYPTION56BIT
56 ビット キーを使用した MPPE 圧縮。
PPP_CCP_ENCRYPTION128BIT
128 ビット キーを使用した MPPE 圧縮。
 

最後の 3 つのオプションは、レイヤー 2 トンネリング プロトコル (L2TP) 経由で接続が確立され、接続で IPSec 暗号化が使用される場合に使用されます。

dwRemoteCompressionAlgorithm

リモート サーバーで使用される圧縮アルゴリズムを示す 値です。 次のアルゴリズムがサポートされています。

説明
RASCCPCA_MPPC
Microsoft ポイントツーポイント圧縮 (MPPC) プロトコル。
RASCCPCA_STAC
STAC オプション 4。

dwCcpRemoteOptions

リモート サーバーで使用できる圧縮の種類を示す 値です。 次の種類がサポートされています。

説明
PPP_CCP_COMPRESSION
暗号化なしの圧縮。
PPP_CCP_HISTORYLESS
ステートレス モードの Microsoft Point-to-Point Encryption (MPPE)。 セッション キーは、パケットのたびに変更されます。 このモードでは、待ち時間の長いネットワーク、または大幅なパケット損失が発生するネットワークのパフォーマンスが向上します。
PPP_CCP_ENCRYPTION40BITOLD
40 ビット キーを使用した MPPE 圧縮。
PPP_CCP_ENCRYPTION40BIT
40 ビット キーを使用した MPPE 圧縮。
PPP_CCP_ENCRYPTION56BIT
56 ビット キーを使用した MPPE 圧縮。
PPP_CCP_ENCRYPTION128BIT
128 ビット キーを使用した MPPE 圧縮。
ERROR_PPP_NOT_CONVERGING
リモート コンピューターと RRAS は、アドレス ネゴシエーションで収束できませんでした。
 

最後の 3 つのオプションは、レイヤー 2 トンネリング プロトコル (L2TP) 経由で接続が確立され、接続で IPSec 暗号化が使用される場合に使用されます。

要件

   
サポートされている最小のクライアント サポートなし
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリのみ]
Header mprapi.h