MPR_INTERFACE_3 構造体 (mprapi.h)
MPR_INTERFACE_3構造体には、ルーターのデマンド ダイヤル インターフェイスのデータが含まれています。
構文
typedef struct _MPR_INTERFACE_3 {
WCHAR wszInterfaceName[MAX_INTERFACE_NAME_LEN + 1];
HANDLE hInterface;
BOOL fEnabled;
ROUTER_INTERFACE_TYPE dwIfType;
ROUTER_CONNECTION_STATE dwConnectionState;
DWORD fUnReachabilityReasons;
DWORD dwLastError;
DWORD dwfOptions;
WCHAR szLocalPhoneNumber[RAS_MaxPhoneNumber + 1];
PWCHAR szAlternates;
DWORD ipaddr;
DWORD ipaddrDns;
DWORD ipaddrDnsAlt;
DWORD ipaddrWins;
DWORD ipaddrWinsAlt;
DWORD dwfNetProtocols;
WCHAR szDeviceType[MPR_MaxDeviceType + 1];
WCHAR szDeviceName[MPR_MaxDeviceName + 1];
WCHAR szX25PadType[MPR_MaxPadType + 1];
WCHAR szX25Address[MPR_MaxX25Address + 1];
WCHAR szX25Facilities[MPR_MaxFacilities + 1];
WCHAR szX25UserData[MPR_MaxUserData + 1];
DWORD dwChannels;
DWORD dwSubEntries;
DWORD dwDialMode;
DWORD dwDialExtraPercent;
DWORD dwDialExtraSampleSeconds;
DWORD dwHangUpExtraPercent;
DWORD dwHangUpExtraSampleSeconds;
DWORD dwIdleDisconnectSeconds;
DWORD dwType;
DWORD dwEncryptionType;
DWORD dwCustomAuthKey;
DWORD dwCustomAuthDataSize;
LPBYTE lpbCustomAuthData;
GUID guidId;
DWORD dwVpnStrategy;
ULONG AddressCount;
IN6_ADDR ipv6addrDns;
IN6_ADDR ipv6addrDnsAlt;
IN6_ADDR *ipv6addr;
} MPR_INTERFACE_3, *PMPR_INTERFACE_3;
メンバー
wszInterfaceName[MAX_INTERFACE_NAME_LEN + 1]
インターフェイスの名前を含む Unicode 文字列へのポインター。
hInterface
インターフェイスへのハンドル。
fEnabled
インターフェイスが有効かどうかを示す 値です。 インターフェイスが有効になっている場合、この値は TRUE 、インターフェイスが管理上無効になっている場合は FALSE です。
dwIfType
インターフェイスの種類を識別する 値。
dwConnectionState
接続済み、切断済み、到達不能など、インターフェイスの現在の状態を表す 値。 詳細と考えられる状態の一覧については、「 ROUTER_CONNECTION_STATE」を参照してください。
fUnReachabilityReasons
インターフェイスに到達できない理由を示す 値。 詳細と使用可能な値の一覧については、「 到達不能の理由」を参照してください。
dwLastError
インターフェイスの接続に失敗した場合に 0 以外の値を含む 値。
dwfOptions
接続オプションの設定に使用されるビット フラグを指定する 値。 次の表に示すフラグのいずれかを設定できます。
フラグ | 説明 |
---|---|
|
このフラグが設定されている場合、RRAS は ipaddr で指定された IP アドレスをダイヤルアップ接続の IP アドレスとして使用しようとします。 このフラグが設定されていない場合、 ipaddr メンバーの値は無視されます。
MPRIO_SpecificIpAddr フラグの設定は、[TCP/IP 設定] ダイアログ ボックスの [IP アドレスの指定] 設定を選択することに対応します。 MPRIO_SpecificIpAddr フラグのクリアは、[TCP/IP 設定] ダイアログ ボックスで [サーバー割り当て IP アドレス] 設定を選択することに対応します。 現在、電話帳のエントリ プロパティで設定された IP アドレスまたはサーバーから取得された IP アドレスは、ネットワーク コントロール パネルで設定された IP アドレスをオーバーライドします。 |
|
このフラグが設定されている場合、RRAS は ipaddrDns、 ipaddrDnsAlt、 ipaddrWins、および ipaddrWinsAlt メンバーを使用して、ダイヤルアップ接続のネーム サーバー アドレスを指定します。 このフラグが設定されていない場合、RRAS はこれらのメンバーを無視します。
MPRIO_SpecificNameServers フラグの設定は、[TCP/IP 設定] ダイアログ ボックスの [ ネーム サーバー アドレスの指定 ] 設定の選択に対応します。 MPRIO_SpecificNameServers フラグのクリアは、[TCP/IP 設定] ダイアログ ボックスの [サーバー割り当てネーム サーバー アドレス] 設定を選択することに対応します。 |
|
このフラグが設定されている場合、RRAS は PPP 接続で IP ヘッダー圧縮を使用するようにネゴシエートします。 IP ヘッダーの圧縮により、パフォーマンスが大幅に向上します。
このフラグが設定されていない場合、IP ヘッダーの圧縮はネゴシエートされません。 このフラグは、[TCP/IP 設定] ダイアログ ボックスの [IP ヘッダー圧縮チェックを使用する] ボックスに対応します。 フラグは、IP ヘッダーの圧縮を正しくネゴシエートしないサーバーに接続する場合にのみクリアする必要があります。 |
|
このフラグが設定されている場合、IP パケットの既定のルートは、接続がアクティブなときにダイヤルアップ アダプターを経由します。 このフラグをクリアすると、既定のルートは変更されません。
このフラグは、[TCP/IP 設定] ダイアログ ボックスの [リモート ネットワークで既定のゲートウェイを使用する] チェック ボックスに対応します。 |
|
このフラグが設定されている場合、RRAS は RFC 1570 で定義されている PPP LCP 拡張機能を無効にします。 PPP LCP 拡張機能を無効にすることは、特定の古い PPP 実装に接続するために必要な場合がありますが、サーバー コールバックなどの機能に干渉します。 このフラグは、特に必要でない限り設定しないでください。 |
|
このフラグを設定すると、リンク上でソフトウェア圧縮がネゴシエートされます。 このフラグを設定すると、PPP ドライバーは圧縮制御プロトコル (CCP) をサーバーとネゴシエートしようとします。 このフラグは既定で設定する必要がありますが、サーバーが互換性のある圧縮プロトコルをサポートしていない場合、このフラグをクリアするとネゴシエーション期間が短縮される可能性があります。 |
|
このフラグが設定されている場合は、セキュリティで保護されたパスワード スキームのみを使用して、サーバーでクライアントを認証できます。 これにより、PPP ドライバーが PAP プレーンテキスト認証プロトコルを使用してクライアントを認証できなくなります。 ただし、MS-CHAP、MD5-CHAP、SPAP 認証プロトコルはサポートされています。 セキュリティを強化するために、このフラグを設定します。 相互運用性を向上するには、このフラグをクリアします。
このフラグは、[セキュリティ] ダイアログ ボックスの [暗号化されたパスワードのチェックが必要] ボックスに対応します。 詳細については、「 MPRIO_RequireMsEncryptedPw」を参照してください。 |
|
このフラグが設定されている場合は、Microsoft のセキュリティで保護されたパスワード スキームのみを使用して、サーバーでクライアントを認証できます。 これにより、PPP ドライバーが PAP プレーンテキスト認証プロトコル、MD5-CHAP、または SPAP を使用できなくなります。 セキュリティを強化するために、このフラグを設定します。 相互運用性を向上するには、このフラグをクリアします。 このフラグは 、MPRIO_RequireEncryptedPwよりも優先されます。
このフラグは、[セキュリティ] ダイアログ ボックスの [Microsoft Encrypted Password チェックが必要] ボックスに対応しています。 詳細については、「 MPRIO_RequireDataEncryption」を参照してください。 |
|
このフラグが設定されている場合は、データ暗号化を正常にネゴシエートするか、接続を削除する必要があります。 MPRIO_RequireMsEncryptedPwも設定されていない限り、このフラグは無視されます。
このフラグは、[セキュリティ] ダイアログ ボックスの [データ暗号化チェックが必要] ボックスに対応します。 |
|
このフラグは将来利用するために予約されています。 |
|
このフラグが設定されている場合、RRAS は、このエントリをダイヤルするときに、現在ログオンしているユーザーのユーザー名、パスワード、およびドメインを使用します。 MPRIO_RequireMsEncryptedPwも設定されていない限り、このフラグは無視されます。
この設定は RasDial 関数では無視され、RASDIALPARAMS 構造体の szUserName メンバーと szPassword メンバーに空の文字列を指定すると、同じ結果が得られます。 このフラグは、[セキュリティ] ダイアログ ボックスの [現在のユーザー名とパスワードの使用] チェック ボックスに対応します。 |
|
このフラグは、代替電話番号が szAlternates メンバーによって定義されている場合に有効です。 このフラグが設定されている場合、接続に成功した代替電話番号がプライマリ電話番号になり、現在のプライマリ電話番号が代替リストに移動されます。
このフラグは、[代替番号] ダイアログ ボックスの [チェック] ボックスに対応します。 |
|
このフラグが設定されている場合、RRAS は、この項目との接続を確立する前に、既存のリモート・ファイル・システムおよびリモート・プリンター・バインディングを検査します。 通常、パブリック ネットワークの電話帳エントリにこのフラグを設定して、パブリック ネットワークに接続する前にプライベート ネットワークへの接続を切断するようにユーザーに通知します。 |
|
このフラグが設定されている場合は、拡張認証プロトコル (EAP) が認証でサポートされている必要があります。 |
|
このフラグが設定されている場合は、認証でパスワード認証プロトコルがサポートされている必要があります。 |
|
このフラグが設定されている場合は、認証のために Shiva のパスワード認証プロトコル (SPAP) がサポートされている必要があります。 |
|
このフラグが設定されている場合、電話番号は共有されます。 |
|
このフラグが設定されている場合は、認証でチャレンジ ハンドシェイク認証プロトコルがサポートされている必要があります。 |
|
このフラグが設定されている場合は、認証のために Microsoft チャレンジ ハンドシェイク認証プロトコルがサポートされている必要があります。 |
|
このフラグが設定されている場合は、Microsoft チャレンジ ハンドシェイク認証プロトコルのバージョン 2 が認証でサポートされている必要があります。 |
szLocalPhoneNumber[RAS_MaxPhoneNumber + 1]
電話番号または IPv6 アドレスを含む null で終わる文字列を指定する 値。
szAlternates
Null で終わる連続する Unicode 文字列のリストへのポインター。 最後の文字列は、2 つの連続する null 文字で終了します。 これらの文字列は、プライマリ番号の接続に失敗した場合に、ルーターがダイヤルする代替電話番号です。 詳細については、「 szLocalPhoneNumber」を参照してください。
ipaddr
この接続がアクティブな間に使用される IP アドレスを示す 値です。 このメンバーは、 dwfOptions が MPRIO_SpecificIpAddr フラグを指定しない限り無視されます。
ipaddrDns
この接続がアクティブな間に使用される DNS サーバーの IP アドレスを示す 値です。 このメンバーは、 dwfOptions が MPRIO_SpecificNameServers フラグを指定しない限り無視されます。
ipaddrDnsAlt
この接続がアクティブな間に使用されるセカンダリまたはバックアップの DNS サーバーの IP アドレスを指定する 値です。 このメンバーは、 dwfOptions が MPRIO_SpecificNameServers フラグを指定しない限り無視されます。
ipaddrWins
この接続がアクティブな間に使用する WINS サーバーの IP アドレスを示す 値です。 このメンバーは、 dwfOptions が MPRIO_SpecificNameServers フラグを指定しない限り無視されます。
ipaddrWinsAlt
この接続がアクティブな間に使用するセカンダリ WINS サーバーの IP アドレスを示す 値です。 このメンバーは、 dwfOptions が MPRIO_SpecificNameServers フラグを指定しない限り無視されます。
dwfNetProtocols
ネゴシエートするネットワーク プロトコルを指定する 値。 このメンバーには、次のフラグを組み合わせて使用できます。
フラグ | 説明 |
---|---|
|
IPX プロトコルをネゴシエートします。 |
|
TCP/IP プロトコルをネゴシエートします。 |
64 ビット Windows: MPRNP_Ipx フラグはサポートされていません
szDeviceType[MPR_MaxDeviceType + 1]
szDeviceName によって参照される RRAS デバイスの種類を示す null で終わる文字列を指定する 値。 このメンバーには、次のいずれかの文字列定数を指定できます。
szDeviceName[MPR_MaxDeviceName + 1]
"Fabrikam Inc 28800 External" など、この電話帳エントリで使用する TAPI デバイスの名前を含む null で終わる文字列が含まれます。 使用可能なすべての RAS 対応デバイスを列挙するには、 RasEnumDevices 関数を 使用します。
szX25PadType[MPR_MaxPadType + 1]
X.25 PAD 型を識別する null で終わる文字列を含むデータ型。 エントリが X.25 PAD を使用してダイヤルする必要がある場合を除き、このメンバーを空の文字列 ("") に設定します。
Windows 2000 と Windows NT: szX25PadType 文字列は、PAD.INF のセクション名にマップされます。
szX25Address[MPR_MaxX25Address + 1]
接続する X.25 アドレスを識別する null で終わる文字列が含まれます。 エントリが X.25 PAD またはネイティブ X.25 デバイスを使用してダイヤルする必要がある場合を除き、このメンバーを空の文字列 ("") に設定します。
szX25Facilities[MPR_MaxFacilities + 1]
接続時に X.25 ホストから要求する機能を指定する null で終わる文字列が含まれます。 szX25Address が空の文字列 ("") の場合、このメンバーは無視されます。
szX25UserData[MPR_MaxUserData + 1]
接続時に X.25 ホストに提供される追加の接続データを指定する null で終わる文字列が含まれます。 szX25Address が空の文字列 ("") の場合、このメンバーは無視されます。
dwChannels
将来利用するために予約されています。
dwSubEntries
このエントリに関連付けられているマルチリンク サブエントリの数を示す 値です。 RasSetEntryProperties を呼び出すときは、このメンバーを 0 に設定します。 電話帳エントリにサブエントリを追加するには、 RasSetSubEntryProperties 関数を 使用します。
dwDialMode
エントリが最初に接続されたときに、RRAS がこのエントリのすべてのマルチリンク サブエントリをダイヤルする必要があるかどうかを示します。 このメンバーには、次のいずれかの値を指定できます。
dwDialExtraPercent
現在接続されているサブエントリから使用可能な合計帯域幅の割合を示す 値。 使用される帯域幅の合計が、少なくとも dwDialExtraSampleSeconds 秒の使用可能な帯域幅の dwDialExtraPercent% を超えると、RRAS は追加のサブエントリをダイヤルします。
dwDialMode メンバーがMPRDM_DialAsNeeded フラグを指定しない限り、このメンバーは無視されます。
dwDialExtraSampleSeconds
RRAS が追加のサブエントリをダイヤルする前に、現在の帯域幅使用量が dwDialExtraPercent で指定されたしきい値を超える必要がある時間を秒単位で指定する値。
dwDialMode メンバーがMPRDM_DialAsNeeded フラグを指定しない限り、このメンバーは無視されます。
dwHangUpExtraPercent
現在接続されているサブエントリから使用可能な合計帯域幅の割合を示す 値。 使用される帯域幅の合計が、少なくとも dwHangUpExtraSampleSeconds 秒の使用可能な帯域幅の dwHangUpExtraPercent% 未満の場合、RRAS は既存のサブエントリ接続を終了 (ハングアップ) します。
dwDialMode メンバーがMPRDM_DialAsNeeded フラグを指定しない限り、このメンバーは無視されます。
dwHangUpExtraSampleSeconds
RRAS が既存のサブエントリ接続を終了する前に dwHangUpExtraPercent で指定されたしきい値より小さい現在の帯域幅の使用量を秒単位で指定する値。
dwDialMode メンバーがMPRDM_DialAsNeeded フラグを指定しない限り、このメンバーは無視されます。
dwIdleDisconnectSeconds
非アクティブな接続が終了する時間を秒単位で指定する 値。 アイドル タイムアウトが無効になっていない限り、指定した間隔で接続がアイドル状態の場合、接続全体が終了します。 このメンバーは、タイムアウト値、または次のいずれかの値を指定できます。
値 | 説明 |
---|---|
|
この接続のアイドル タイムアウトはありません。 |
|
ユーザー設定の値を既定値として使用します。 |
dwType
電話帳エントリの種類を示す 値です。 このメンバーには、次のいずれかの型を指定できます。
Type | 説明 |
---|---|
|
モデム、ISDN、X.25 などの電話回線。 |
|
仮想プライベート ネットワーク。 |
|
直接シリアル接続または並列接続。 |
dwEncryptionType
接続で Microsoft Point-to-Point Encryption (MPPE) に使用する暗号化の種類を指定する 値です。 このメンバーには、次のいずれかの値を指定できます。
値 | 説明 |
---|---|
|
暗号化は使用しないでください。 |
|
暗号化を使用する。 |
|
最大強度の暗号化を使用します。 |
|
可能であれば、暗号化を使用します。 |
dwEncryptionType の値は、パスワードの暗号化方法には影響しません。 パスワードが暗号化されているかどうかとパスワードの暗号化方法は、認証プロトコル (PAP、MS-CHAP、EAP など) によって決まります。
dwCustomAuthKey
拡張認証プロトコル (EAP) ベンダーに提供される認証キーを指定する 値。
dwCustomAuthDataSize
lpbCustomAuthData メンバーが指すデータのサイズを示す 値です。
lpbCustomAuthData
EAP で使用する認証データへのポインター。
guidId
この電話帳エントリを表すグローバル一意識別子 (GUID)。 このメンバーは読み取り専用です。
dwVpnStrategy
VPN 接続をダイヤルするときに使用する VPN 戦略。 このメンバーには、次のいずれかの値を指定できます。
AddressCount
使用されていません。
ipv6addrDns
この接続がアクティブな間に使用される DNS サーバーの IP アドレスを示す 値です。
ipv6addrDnsAlt
この接続がアクティブな間に使用されるセカンダリまたはバックアップの DNS サーバーの IP アドレスを指定する 値です。
ipv6addr
使用しません。
解説
MPR_INTERFACE_3構造体には、RASENTRY 構造体のメンバーに似た多数のメンバーがあります。
RASENTRY 構造体の次のメンバーは、MPR_INTERFACE_3に対応するものがありません。
- dwCountryID
- dwCountryCode
- szAreaCode
- dwFramingProtocol
要件
サポートされている最小のクライアント | サポートなし |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
Header | mprapi.h |