MPR_INTERFACE_2結構 (mprapi.h)

MPR_INTERFACE_2結構包含路由器需求撥號介面的資料。

語法

typedef struct _MPR_INTERFACE_2 {
  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;
} MPR_INTERFACE_2, *PMPR_INTERFACE_2;

成員

wszInterfaceName[MAX_INTERFACE_NAME_LEN + 1]

Unicode 字串的指標,其中包含介面的名稱。

hInterface

介面的控制碼。

fEnabled

值,指定介面是否已啟用。 如果介面已啟用,則此值為 TRUE ;如果介面已系統管理停用,則為 FALSE

dwIfType

識別 介面型別的 值。

dwConnectionState

值,描述介面的目前狀態,例如已連接、中斷連線或無法連線。 如需詳細資訊和可能狀態的清單,請參閱 ROUTER_CONNECTION_STATE

fUnReachabilityReasons

值,描述介面無法連線的原因。 如需詳細資訊和可能值的清單,請參閱 無法連線的原因

dwLastError

如果介面無法連線,則包含非零值的值。

dwfOptions

值,指定用來設定連接選項的位旗標。 您可以設定下表所列的其中一個旗標。

旗標 意義
MPRIO_SpecificIpAddr
如果設定此旗標,RRAS 會嘗試使用 ipaddr 指定的 IP 位址作為撥號連線的 IP 位址。 如果未設定此旗標, 則會忽略 ipaddr 成員的值。

設定 MPRIO_SpecificIpAddr 旗標會對應至選取 [TCP/IP 設定] 對話方塊中的 [ 指定 IP 位址 ] 設定。 清除MPRIO_SpecificIpAddr旗標會對應至在 [TCP/IP 設定] 對話方塊中選取 [伺服器指派的 IP 位址] 設定。

目前,在電話簿專案屬性中設定或從伺服器擷取的 IP 位址會覆寫網路控制台中的 IP 位址集。

MPRIO_SpecificNameServers
如果設定此旗標,RRAS 會使用 ipaddrDnsipaddrDnsAltipaddrWinsipaddrWinsAlt 成員來指定撥號連線的名稱伺服器位址。 如果未設定此旗標,RRAS 會忽略這些成員。

設定MPRIO_SpecificNameServers旗標會對應至選取 [TCP/IP 設定] 對話方塊中的 [ 指定名稱伺服器位址 ] 設定。 清除MPRIO_SpecificNameServers旗標會對應至選取 [TCP/IP 設定] 對話方塊中的 [伺服器指派名稱伺服器位址] 設定。

MPRIO_IpHeaderCompression
如果設定此旗標,RRAS 會交涉以在 PPP 連線上使用 IP 標頭壓縮。 IP 標頭壓縮可大幅改善效能。

如果未設定此旗標,則不會交涉 IP 標頭壓縮。

此旗標會對應至 [TCP/IP 設定] 對話方塊中的 [使用 IP 標頭壓縮] 核取方塊。 只有在連線到未正確交涉 IP 標頭壓縮的伺服器時,才應該清除旗標。

MPRIO_RemoteDefaultGateway
如果設定此旗標,IP 封包的預設路由是在連線作用中時透過撥號配接器。 如果清除此旗標,則不會修改預設路由。

此旗標會對應至 [TCP/IP 設定] 對話方塊中的 [在遠端網路上使用預設閘道] 核取方塊。

MPRIO_DisableLcpExtensions
如果設定此旗標,RRAS 會停用 RFC 1570中定義的 PPP LCP 延伸模組。 停用 PPP LCP 擴充功能可能需要連線到某些較舊的 PPP 實作,但會干擾伺服器回呼等功能。 除非特別需要,否則請勿設定此旗標。
MPRIO_SwCompression
如果設定此旗標,則會在連結上交涉軟體壓縮。 設定此旗標會導致 PPP 驅動程式嘗試與伺服器交涉壓縮控制通訊協定 (CCP) 。 此旗標預設應該設定,但如果伺服器不支援相容的壓縮通訊協定,清除它可能會減少交涉期間。
MPRIO_RequireEncryptedPw
如果設定此旗標,則只能使用安全密碼配置向伺服器驗證用戶端。 這可防止 PPP 驅動程式使用 PAP 純文字驗證通訊協定來驗證用戶端。 不過,支援 MS-CHAP、MD5-CHAP 和 SPAP 驗證通訊協定。 若要提高安全性,請設定此旗標。 若要提高互通性,請清除此旗標。

此旗標會對應至 [安全性] 對話方塊中的 [需要加密密碼] 核取方塊。 如需詳細資訊,請參閱 MPRIO_RequireMsEncryptedPw

MPRIO_RequireMsEncryptedPw
如果設定此旗標,則只能使用 Microsoft 安全密碼配置向伺服器驗證用戶端。 這可防止 PPP 驅動程式使用 PAP 純文字驗證通訊協定、MD5-CHAP 或 SPAP。 若要提高安全性,請設定此旗標。 若要提高互通性,請清除此旗標。 此旗標的優先順序高於 MPRIO_RequireEncryptedPw

此旗標會對應至 [安全性] 對話方塊中的 [需要 Microsoft 加密密碼] 核取方塊。 如需詳細資訊,請參閱 MPRIO_RequireDataEncryption

MPRIO_RequireDataEncryption
如果設定此旗標,則必須成功交涉資料加密,否則應該卸載連線。 除非同時設定 MPRIO_RequireMsEncryptedPw, 否則會忽略此旗標。

此旗標會對應至 [安全性] 對話方塊中的 [需要資料加密] 核取方塊。

MPRIO_NetworkLogon
此旗標保留供日後使用。
MPRIO_UseLogonCredentials
如果設定此旗標,RRAS 會在撥號此專案時,使用目前登入使用者的使用者名稱、密碼和網域。 除非同時設定 MPRIO_RequireMsEncryptedPw, 否則會忽略此旗標。

RasDial函式會忽略此設定,其中為RASDIALPARAMS結構的szUserNameszPassword成員指定空字串會提供相同的結果。

此旗標對應于 [安全性] 對話方塊中的 [使用目前使用者名稱和密碼] 核取方塊。

MPRIO_PromoteAlternates
szAlternates 成員定義替代電話號碼時,此旗標會生效。 如果設定此旗標,成功連線的替代電話號碼會變成主要電話號碼,而目前的主要電話號碼會移至替代清單。

此旗標會對應至 [ 替代數位 ] 對話方塊中的核取方塊。

MPRIO_SecureLocalFiles
如果設定此旗標,RRAS 會先檢查現有的遠端檔案系統和遠端印表機系結,再與這個專案建立連線。 一般而言,您會在公用網路的電話簿專案上設定此旗標,以提醒使用者在連線到公用網路之前中斷其私人網路的連線。
MPRIO_RequireEAP
如果設定此旗標,則必須支援可延伸驗證通訊協定 (EAP) 。
MPRIO_RequirePAP
如果設定此旗標,則必須支援密碼驗證通訊協定以進行驗證。
MPRIO_RequireSPAP
如果設定此旗標,則必須支援 Shiva 的密碼驗證通訊協定 (SPAP) 以進行驗證。
MPRIO_SharedPhoneNumbers
如果設定此旗標,則會共用電話號碼。
MPRIO_RequireCHAP
如果設定此旗標,則必須支援挑戰交握驗證通訊協定來進行驗證。
MPRIO_RequireMsCHAP
如果設定此旗標,則必須支援 Microsoft Challenge Handshake 驗證通訊協定來進行驗證。
MPRIO_RequireMsCHAP2
如果設定此旗標,則必須支援第 2 版的 Microsoft Challenge Handshake 驗證通訊協定來進行驗證。
MPRIO_IpSecPreSharedKey
如果此旗標是針對 MPR_INTERFACE_2 結構中的 dwfOptions 設定 並在 MprAdminInterfaceSetInfo中使用,它會設定需求撥號介面以使用預先共用的金鑰。
MPRIO_RequireMachineCertificates
Windows 8 或更新版本:如果已設定此旗標,則會使用電腦憑證進行 IKEv2 驗證。
MPRIO_UsePreSharedKeyForIkev2Initiator
Windows 8 或更新版本:如果已設定此旗標,IKEv2 連線的啟動器會使用預先共用金鑰進行驗證。
MPRIO_UsePreSharedKeyForIkev2Responder
Windows 8 或更新版本:如果設定此旗標,IKEv2 連線的回應程式會使用預先共用金鑰進行驗證。

szLocalPhoneNumber[RAS_MaxPhoneNumber + 1]

值,指定包含電話號碼的 Null 終止字串。

szAlternates

連續 Null 終止 Unicode 字串清單的指標。 最後一個字串會以兩個連續的 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

值,指定要交涉的網路通訊協定。 這個成員可以是下列旗標的組合。

旗標 意義
MPRNP_Ipx
交涉 IPX 通訊協定。
MPRNP_Ip
交涉 TCP/IP 通訊協定。
 

64 位 Windows: 不支援 MPRNP_Ipx 旗標

szDeviceType[MPR_MaxDeviceType + 1]

值,指定以 Null 結尾的字串,指出 szDeviceName所參考的 RRAS 裝置類型。 這個成員可以是下列其中一個字串常數。

String 意義
MPRDT_Modem
透過 COM 埠存取的數據機。
MPRDT_Isdn
已安裝對應 NDISWAN 驅動程式的 ISDN 配接器。
MPRDT_X25
已安裝對應 NDISWAN 驅動程式的 X.25 介面卡。
MPRDT_Vpn
虛擬私人網路 (VPN) 連線。
MPRDT_Pad
封包組合器/反組譯程式。
MPRDT_Generic
通用。
MPRDT_Serial
透過序列埠直接串列連線。
MPRDT_FrameRelay
框架轉寄。
MPRDT_Atm
非同步傳輸模式。
MPRDT_Sonet
Sonet。
MPRDT_SW56
已切換 56K 存取。
MPRDT_Irda
符合 IrDA) 規範裝置的基礎結構資料關聯 (。
MPRDT_Parallel
透過平行埠直接平行連線。

szDeviceName[MPR_MaxDeviceName + 1]

包含 Null 終止的字串,其中包含要與此電話簿專案搭配使用的 TAPI 裝置名稱,例如「Fabrikam Inc 28800 External」。 若要列舉所有可用的 RAS 裝置,請使用 RasEnumDevices 函式

szX25PadType[MPR_MaxPadType + 1]

資料類型,包含識別 X.25 PAD 類型的 Null 終止字串。 除非專案應該使用 X.25 PAD 撥號,否則將此成員設定為空字串 (「」「) 。

Windows 2000 和 Windows NT:szX25PadType字串會對應至 PAD.INF 中的區段名稱。

szX25Address[MPR_MaxX25Address + 1]

包含以 Null 結尾的字串,可識別要連接的 X.25 位址。 除非專案應該使用 X.25 PAD 或原生 X.25 裝置來撥號,否則請將此成員設定為空字串 (「」「) 。

szX25Facilities[MPR_MaxFacilities + 1]

包含 Null 終止的字串,指定要在連線時間從 X.25 主機要求的功能。 如果 szX25Address 是空字串 (「」) ,則會忽略這個成員。

szX25UserData[MPR_MaxUserData + 1]

包含 Null 終止的字串,指定在連線時間提供給 X.25 主機的其他連線資料。 如果 szX25Address 是空字串 (「」) ,則會忽略這個成員。

dwChannels

保留供未來使用。

dwSubEntries

值,指定與此專案相關聯的多連結子專案數目。 呼叫 RasSetEntryProperties時,請將這個成員設定為零。 若要將子輸入新增至電話簿專案,請使用 RasSetSubEntryProperties 函式。

dwDialMode

指出第一次連接專案時,RRAS 是否應該撥入這個專案的所有多重連結子專案。 這個成員可以是下列其中一個值。

意義
MPRDM_DialAll
一開始撥號所有子專案。
MPRDM_DialAsNeeded
視需要頻寬調整子專案數目。 RRAS 會使用 dwDialExtraPercentdwDialExtraSampleSecondsdwDialHangUpExtraPercentdwHangUpExtraSampleSeconds 成員來判斷何時要撥號或中斷子實體的連線。

dwDialExtraPercent

值,指定目前已連線子專案可用的總頻寬百分比。 當使用的頻寬總計超過 dwDialExtraPercent 百分比的可用頻寬時,至少 dwDialExtraSampleSeconds 秒,RRAS 會撥入額外的子專案。

除非 dwDialMode 成員指定 MPRDM_DialAsNeeded 旗標,否則會忽略這個成員。

dwDialExtraSampleSeconds

值,指定目前頻寬使用量必須超過 dwDialExtraPercent 在 RRAS 撥號其他子輸入之前所指定的臨界值。

除非 dwDialMode 成員指定 MPRDM_DialAsNeeded 旗標,否則會忽略這個成員。

dwHangUpExtraPercent

值,指定目前已連線子專案可用的總頻寬百分比。 當使用的頻寬總計小於 dwHangUpExtraPercent 百分比時,RRA (S 會在至少 dwHangUpExtraSampleSeconds 秒的可用頻寬百分比下終止) 停止回應。

除非 dwDialMode 成員指定 MPRDM_DialAsNeeded 旗標,否則會忽略這個成員。

dwHangUpExtraSampleSeconds

值,指定目前頻寬使用量必須小於 dwHangUpExtraPercent 在 RRAS 終止現有子連線之前所指定的臨界值。

除非 dwDialMode 成員指定 MPRDM_DialAsNeeded 旗標,否則會忽略這個成員。

dwIdleDisconnectSeconds

值,指定非使用中連線終止的時間,以秒為單位。 除非停用閒置逾時,否則如果連線在指定的間隔閒置,則會終止整個連線。 這個成員可以指定逾時值或下列其中一個值。

意義
MPRIDS_Disabled
此連線沒有閒置逾時。
MPRIDS_UseGlobalValue
使用使用者喜好設定值做為預設值。

dwType

值,指定電話簿專案的類型。 這個成員可以是下列其中一種類型。

類型 意義
MPRET_Phone
電話線路,例如數據機、ISDN 或 X.25。
MPRET_Vpn
虛擬私人網路。
MPRET_Direct
直接序列或平行連線。

dwEncryptionType

值,指定要用於與連線之 Microsoft 點對點加密 (MPPE) 的加密類型。 這個成員可以是下列其中一個值。

意義
MPR_ET_None
請勿使用加密。
MPR_ET_Require
使用加密。
MPR_ET_RequireMax
使用最大強度加密。
MPR_ET_Optional
可能的話,請使用加密。
 

dwEncryptionType的值不會影響密碼的加密方式。 密碼是否已加密,以及密碼加密的方式取決於驗證通訊協定,例如 PAP、MS-CHAP 或 EAP。

dwCustomAuthKey

值,指定要提供給 EAP) 廠商的可延伸驗證通訊協定 (驗證金鑰。

dwCustomAuthDataSize

值,指定 lpbCustomAuthData 成員所指向的資料大小。

lpbCustomAuthData

要與 EAP 搭配使用的驗證資料的指標。

guidId

代表此電話簿專案的全域唯一識別碼 (GUID) 。 這個成員是唯讀的。

dwVpnStrategy

撥號 VPN 連線時要使用的 VPN 策略。 這個成員可以有下列其中一個值。

意義
MPR_VS_Default
RRAS 會先撥號 PPTP。 如果 PPTP 失敗,則會嘗試 L2TP。 後續針對這個專案進行撥號時,會先嘗試成功的通訊協定。
MPR_VS_PptpOnly
RAS 撥號僅會使用 PPTP。
MPR_VS_PptpFirst
RAS 一律會先撥號 PPTP,L2TP 秒。
MPR_VS_L2tpOnly
RAS 撥號僅會 L2TP。
MPR_VS_L2tpFirst
RAS 會先撥號 L2TP,再撥動 PPTP 秒。

備註

MPR_INTERFACE_2結構有一些類似RASENTRY結構成員的成員。

RASENTRY結構的下列成員在MPR_INTERFACE_2中沒有對應專案:

  • dwCountryID
  • dwCountryCode
  • szAreaCode
  • dwFramingProtocol
64 位 Windows: 不支援 IPX 通訊協定。

需求

   
最低支援的用戶端 都不支援
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
標頭 mprapi.h

另請參閱

MPR_INTERFACE_0

MPR_INTERFACE_1

MprAdminInterfaceGetInfo

MprAdminInterfaceSetInfo