Поделиться через


структура 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]

Указатель на строку Юникода, содержащую имя интерфейса.

hInterface

Дескриптор интерфейса.

fEnabled

Значение типа , указывающее, включен ли интерфейс. Это значение равно TRUE , если интерфейс включен, false , если интерфейс отключен административно.

dwIfType

Значение типа , определяющее тип интерфейса.

dwConnectionState

Значение типа , описывающее текущее состояние интерфейса, например подключенный, отключенный или недоступный. Дополнительные сведения и список возможных состояний см. в разделе ROUTER_CONNECTION_STATE.

fUnReachabilityReasons

Значение типа , описывающее причину недоступности интерфейса. Дополнительные сведения и список возможных значений см. в разделе Причины недоступности.

dwLastError

Значение типа , содержащее ненулевое значение, если интерфейсу не удается подключиться.

dwfOptions

Значение типа , указывающее битовые флаги, используемые для задания параметров подключения. Можно задать один из флагов, перечисленных в следующей таблице.

Flag Значение
MPRIO_SpecificIpAddr
Если этот флаг установлен, RRAS пытается использовать IP-адрес, указанный ipaddr , в качестве IP-адреса для коммутируемого подключения. Если этот флаг не установлен, значение элемента ipaddr игнорируется.

Установка флага MPRIO_SpecificIpAddr соответствует выбору параметра Указать IP-адрес в диалоговом окне Параметры TCP/IP. Снятие флага MPRIO_SpecificIpAddr соответствует выбору параметра Назначенный сервером IP-адрес в диалоговом окне Параметры TCP/IP .

В настоящее время IP-адрес, заданный в свойствах записи телефонной книги или полученный с сервера, переопределяет IP-адрес, заданный на панели управления сетью.

MPRIO_SpecificNameServers
Если этот флаг установлен, RRAS использует элементы ipaddrDns, ipaddrDnsAlt, ipaddrWins и ipaddrWinsAlt , чтобы указать адреса серверов имен для коммутируемого подключения. Если этот флаг не установлен, RRAS игнорирует эти элементы.

Установка флага MPRIO_SpecificNameServers соответствует выбору параметра Указать адреса сервера имен в диалоговом окне Параметры TCP/IP. Снятие флага MPRIO_SpecificNameServers соответствует выбору параметра Адреса сервера имен, назначаемых сервером , в диалоговом окне Параметры TCP/IP .

MPRIO_IpHeaderCompression
Если этот флаг установлен, RRAS согласовывает использование сжатия ip-заголовков для PPP-подключений. Сжатие заголовков IP-адресов может значительно повысить производительность.

Если этот флаг не установлен, сжатие заголовков IP-адресов не согласовывается.

Этот флаг соответствует проверка параметру Использование сжатия заголовков IP-адресов в диалоговом окне Параметры TCP/IP. Флаг должен быть снят только при подключении к серверу, который неправильно согласовывает сжатие ip-заголовков.

MPRIO_RemoteDefaultGateway
Если этот флаг установлен, маршрут по умолчанию для IP-пакетов осуществляется через адаптер удаленного доступа, когда подключение активно. Если этот флаг снят, маршрут по умолчанию не изменяется.

Этот флаг соответствует проверка поля Использовать шлюз по умолчанию в удаленной сети в диалоговом окне Параметры TCP/IP.

MPRIO_DisableLcpExtensions
Если этот флаг установлен, RRAS отключает расширения PPP LCP, определенные в RFC 1570. Отключение расширений PPP LCP может потребоваться для подключения к некоторым старым реализациям PPP, но это мешает таким функциям, как обратный вызов сервера. Не устанавливайте этот флаг, если он не требуется.
MPRIO_SwCompression
Если этот флаг установлен, сжатие программного обеспечения согласовывается по ссылке. Установка этого флага приводит к тому, что драйвер PPP попытается согласовать протокол управления сжатием (CCP) с сервером. Этот флаг должен быть установлен по умолчанию, но его удаление может сократить период согласования, если сервер не поддерживает совместимый протокол сжатия.
MPRIO_RequireEncryptedPw
Если этот флаг установлен, для проверки подлинности клиента на сервере можно использовать только безопасные схемы паролей. Это не позволяет драйверу PPP использовать протокол проверки подлинности в виде обычного текста PAP для проверки подлинности клиента. Однако поддерживаются протоколы проверки подлинности MS-CHAP, MD5-CHAP и SPAP. Для повышения безопасности установите этот флаг. Для повышения совместимости снимите этот флаг.

Этот флаг соответствует проверка поле Требовать зашифрованный пароль в диалоговом окне Безопасность. Дополнительные сведения см. в разделе MPRIO_RequireMsEncryptedPw.

MPRIO_RequireMsEncryptedPw
Если этот флаг установлен, для проверки подлинности клиента на сервере можно использовать только схемы безопасных паролей Майкрософт. Это не позволяет драйверу PPP использовать протокол проверки подлинности в виде обычного текста PAP, MD5-CHAP или SPAP. Для повышения безопасности установите этот флаг. Для повышения совместимости снимите этот флаг. Этот флаг имеет приоритет над MPRIO_RequireEncryptedPw.

Этот флаг соответствует проверка Требовать зашифрованный пароль Майкрософт в диалоговом окне Безопасность. Дополнительные сведения см. в разделе MPRIO_RequireDataEncryption.

MPRIO_RequireDataEncryption
Если этот флаг установлен, шифрование данных должно быть успешно согласовано или подключение должно быть удалено. Этот флаг игнорируется, если не задано MPRIO_RequireMsEncryptedPw .

Этот флаг соответствует проверка требовать шифрование данных в диалоговом окне Безопасность.

MPRIO_NetworkLogon
Этот флаг зарезервирован для использования в будущем.
MPRIO_UseLogonCredentials
Если этот флаг установлен, RRAS использует имя пользователя, пароль и домен текущего пользователя, выполнившего вход, при наборе этой записи. Этот флаг игнорируется, если не задано MPRIO_RequireMsEncryptedPw .

Этот параметр игнорируется функцией RasDial , где указание пустых строк для элементов szUserName и szPassword структуры RASDIALPARAMS дает одинаковый результат.

Этот флаг соответствует проверка использовать текущее имя пользователя и пароль в диалоговом окне Безопасность.

MPRIO_PromoteAlternates
Этот флаг действует, когда альтернативные номера телефонов определяются членом szAlternates . Если этот флаг установлен, альтернативный номер телефона, который успешно подключается, становится основным номером телефона, а текущий основной номер телефона перемещается в альтернативный список.

Этот флаг соответствует проверка в диалоговом окне Альтернативные числа.

MPRIO_SecureLocalFiles
Если этот флаг установлен, RRAS проверяет наличие существующей удаленной файловой системы и привязок удаленных принтеров, прежде чем устанавливать соединение с этой записью. Как правило, этот флаг устанавливается для записей телефонной книги для общедоступных сетей, чтобы напоминать пользователям о необходимости разрыва подключений к частной сети перед подключением к общедоступной сети.
MPRIO_RequireEAP
Если этот флаг установлен, для проверки подлинности должен поддерживаться протокол EAP.
MPRIO_RequirePAP
Если этот флаг установлен, для проверки подлинности должен поддерживаться протокол проверки подлинности паролей.
MPRIO_RequireSPAP
Если этот флаг установлен, для проверки подлинности должен поддерживаться протокол проверки подлинности паролей Шивы (SPAP).
MPRIO_SharedPhoneNumbers
Если этот флаг установлен, номера телефонов будут общими.
MPRIO_RequireCHAP
Если этот флаг установлен, для проверки подлинности должен поддерживаться протокол проверки подлинности подтверждения запроса.
MPRIO_RequireMsCHAP
Если этот флаг установлен, для проверки подлинности должен поддерживаться протокол проверки подлинности с подтверждением вызова Майкрософт.
MPRIO_RequireMsCHAP2
Если этот флаг установлен, для проверки подлинности должна поддерживаться версия 2 протокола проверки подлинности microsoft Challenge Handshake Authentication.
MPRIO_IpSecPreSharedKey
Если этот флаг задан для dwfOptions в структуре MPR_INTERFACE_2 и используется в MprAdminInterfaceSetInfo, он настраивает интерфейс вызова по запросу для использования ключа предварительного доступа.
MPRIO_RequireMachineCertificates
Windows 8 или более поздней версии. Если этот флаг установлен, для проверки подлинности IKEv2 используются сертификаты компьютера.
MPRIO_UsePreSharedKeyForIkev2Initiator
Windows 8 или более поздней версии. Если этот флаг установлен, инициатором подключения IKEv2 для проверки подлинности используется общий ключ.
MPRIO_UsePreSharedKeyForIkev2Responder
Windows 8 или более поздней версии. Если этот флаг установлен, ответчик подключения IKEv2 использует общий ключ для проверки подлинности.

szLocalPhoneNumber[RAS_MaxPhoneNumber + 1]

Значение типа , указывающее строку, завершающуюся нулевым значением, которая содержит номер телефона.

szAlternates

Указатель на список последовательных строк Юникода, завершаемых значением NULL. Последняя строка завершается двумя последовательными символами NULL. Строки — это альтернативные номера телефонов, набираемые маршрутизатором в указанном порядке, если основной номер не удается подключиться. Дополнительные сведения см. в разделе szLocalPhoneNumber.

ipaddr

Значение типа , указывающее IP-адрес, который будет использоваться при активном подключении. Этот элемент игнорируется, если параметр dwfOptions не указывает флаг MPRIO_SpecificIpAddr .

ipaddrDns

Значение типа , указывающее IP-адрес DNS-сервера, который будет использоваться при активном подключении. Этот элемент игнорируется, если параметр dwfOptions не указывает флаг MPRIO_SpecificNameServers .

ipaddrDnsAlt

Значение типа , указывающее IP-адрес дополнительного или резервного DNS-сервера, который будет использоваться при активном подключении. Этот элемент игнорируется, если параметр dwfOptions не указывает флаг MPRIO_SpecificNameServers .

ipaddrWins

Значение типа , указывающее IP-адрес WINS-сервера, который будет использоваться при активном подключении. Этот элемент игнорируется, если параметр dwfOptions не указывает флаг MPRIO_SpecificNameServers .

ipaddrWinsAlt

Значение типа , указывающее IP-адрес вторичного WINS-сервера, который будет использоваться при активном подключении. Этот элемент игнорируется, если параметр dwfOptions не указывает флаг MPRIO_SpecificNameServers .

dwfNetProtocols

Значение типа , указывающее сетевые протоколы для согласования. Этот элемент может быть сочетанием следующих флагов.

Flag Значение
MPRNP_Ipx
Согласование протокола IPX.
MPRNP_Ip
Согласование протокола TCP/IP.
 

64-разрядная версия Windows: Флаг MPRNP_Ipx не поддерживается

szDeviceType[MPR_MaxDeviceType + 1]

Значение типа , указывающее строку, завершающуюся null, которая указывает тип устройства RRAS, на который ссылается szDeviceName. Этот элемент может быть одной из следующих строковых констант.

Строка Значение
MPRDT_Modem
Модем, доступ к которому осуществляется через COM-порт.
MPRDT_Isdn
Адаптер ISDN с установленным драйвером NDISWAN.
MPRDT_X25
Адаптер X.25 с установленным драйвером NDISWAN.
MPRDT_Vpn
Подключение к виртуальной частной сети (VPN).
MPRDT_Pad
Сборщик пакетов или дизассемблер.
MPRDT_Generic
Универсальный.
MPRDT_Serial
Прямое последовательное подключение через последовательный порт.
MPRDT_FrameRelay
Ретранслятор кадров.
MPRDT_Atm
Режим асинхронной передачи.
MPRDT_Sonet
Sonet.
MPRDT_SW56
Переключение доступа на 56 КБ.
MPRDT_Irda
Устройство, совместимое с инфракрасной ассоциацией данных (IrDA).
MPRDT_Parallel
Прямое параллельное подключение через параллельный порт.

szDeviceName[MPR_MaxDeviceName + 1]

Содержит строку, завершающуюся значением NULL, которая содержит имя устройства TAPI для использования с этой записью в телефонной книге, например "Fabrikam Inc 28800 External". Чтобы перечислить все доступные устройства с поддержкой RAS, используйте функцию RasEnumDevices .

szX25PadType[MPR_MaxPadType + 1]

Тип данных, содержащий строку, завершающуюся null, идентифицирующее тип X.25 PAD. Присвойте этому элементу пустую строку (""), если только запись не должна набираться с помощью pad X.25.

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 установите для этого элемента значение 0. Чтобы добавить вложенные входы в запись телефонной книги, используйте функцию RasSetSubEntryProperties .

dwDialMode

Указывает, должен ли RRAS набирать все вложенные вложенности этой записи при первом подключении записи. Этот элемент может иметь одно из следующих значений.

Значение Значение
MPRDM_DialAll
Сначала наберите все вложенные вентенты.
MPRDM_DialAsNeeded
Настройте количество вложенных вентентов по мере необходимости пропускной способности. RRAS использует члены dwDialExtraPercent, dwDialExtraSampleSeconds, dwDialHangUpExtraPercent и dwHangUpExtraSampleSeconds , чтобы определить, когда следует звонить или отключать вложенный объект.

dwDialExtraPercent

Значение типа , указывающее процент от общей пропускной способности, доступной из подключенных в данный момент вложенных узлов. RRAS набирает дополнительный вложенный элемент, если общая используемая пропускная способность превышает dwDialExtraPercent от доступной пропускной способности в течение по крайней мере dwDialExtraSampleSeconds в секундах .

Этот элемент игнорируется, если только в элементе dwDialMode не указан флаг MPRDM_DialAsNeeded .

dwDialExtraSampleSeconds

Значение типа , указывающее время в секундах, в течение которого текущее использование пропускной способности должно превышать пороговое значение, заданное dwDialExtraPercent , прежде чем RRAS наберет дополнительный вложенный объект.

Этот элемент игнорируется, если только в элементе dwDialMode не указан флаг MPRDM_DialAsNeeded .

dwHangUpExtraPercent

Значение типа , указывающее процент от общей пропускной способности, доступной из подключенных в данный момент вложенных узлов. RRAS завершает (зависает) существующее подключение вложенного объекта, если общая используемая пропускная способность меньше, чем dwHangUpExtraPercent от доступной пропускной способности в течение по крайней мере 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

Значение типа , указывающее тип шифрования, используемого для шифрования "точка — точка" (Майкрософт) с подключением. Этот элемент может быть одним из следующих значений.

Значение Значение
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 first, L2TP second.
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