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


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

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

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 протокола проверки подлинности подтверждения запроса Майкрософт.

szLocalPhoneNumber[RAS_MaxPhoneNumber + 1]

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

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
Переключение доступа 56K.
MPRDT_Irda
Устройство, совместимое с инфракрасной связью данных (IrDA).
MPRDT_Parallel
Прямое параллельное подключение через параллельный порт.

szDeviceName[MPR_MaxDeviceName + 1]

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

szX25PadType[MPR_MaxPadType + 1]

Тип данных, содержащий строку со значением NULL, которая идентифицирует тип PAD X.25. Присвойте этому элементу пустую строку (""), если только запись не должна набираться с помощью 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 установите для этого элемента значение 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 второй.

AddressCount

Не используется.

ipv6addrDns

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

ipv6addrDnsAlt

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

ipv6addr

Не используется.

Комментарии

Структура MPR_INTERFACE_3 имеет несколько элементов, аналогичных элементам структуры RASENTRY .

Следующие элементы из структуры RASENTRY не имеют аналогов в MPR_INTERFACE_3:

  • dwCountryID
  • dwCountryCode
  • szAreaCode
  • dwFramingProtocol
64-разрядная версия Windows: Не поддерживает протокол IPX.

Требования

   
Минимальная версия клиента Ни одна версия не поддерживается
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Верхняя часть mprapi.h

См. также раздел

MPR_INTERFACE_0

MPR_INTERFACE_1

MPR_INTERFACE_2

MprAdminInterfaceGetInfo

MprAdminInterfaceSetInfo