Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Помощник по протоколу Internet Protocol (IP Helper) позволяет драйверам получать сведения о конфигурации сети локального компьютера и изменять ее. IP Helper также предоставляет системы уведомлений, чтобы драйвер уведомлялся при изменении конфигурации сети локального компьютера. Вспомогательный IP-адрес доступен в Windows Vista и более поздних версиях операционных систем Microsoft Windows.
Многие функции IP Helper передают параметры структур, представляющие типы данных, связанные с технологией MIB (База управления информацией). Вспомогательные функции IP-адресов используют эти структуры MIB для представления различных сетевых сведений.
В документации по IP-помощнику используются термины адаптера и интерфейса. Адаптер является устаревшим термином, который является сокращенной формой сетевого адаптера, который первоначально ссылался на некоторое сетевое оборудование. Адаптер — это абстракция уровня связи данных.
Интерфейс описан в документах RFC IETF как абстрактная концепция, представляющее присоединение узла к ссылке. Интерфейс — это абстракция уровня IP.
Драйвер может использовать следующие функции режима ядра, структуры MIB и перечисления MIB и сетевого уровня (NL) для получения и изменения параметров конфигурации для транспортировки данных по протоколам TCP/IP (Протокол управления передачей/Протокол интернета) на локальном компьютере.
Заметка
При разработке кода драйвера следуйте инструкциям по включению файлов заголовков.
Функции преобразования интерфейса
| Функция | Описание |
|---|---|
| ConvertInterfaceAliasToLuid | Преобразует локальный уникальный идентификатор (LUID) для сетевого интерфейса в имя интерфейса Юникода. |
| ConvertInterfaceGuidToLuid | Преобразует глобальный уникальный идентификатор (GUID) сетевого интерфейса в LUID этого интерфейса. |
| ConvertInterfaceIndexToLuid | Преобразует локальный индекс сетевого интерфейса в LUID для интерфейса. |
| ConvertInterfaceLuidToAlias | Преобразует LUID для сетевого интерфейса в псевдоним интерфейса. |
| ConvertInterfaceLuidToGuid | Преобразует LUID для сетевого интерфейса в GUID для интерфейса. |
| ConvertInterfaceLuidToIndex | Преобразует LUID для сетевого интерфейса в локальный индекс интерфейса. |
| ConvertInterfaceLuidToNameA | Преобразует LUID для сетевого интерфейса в имя интерфейса ANSI. |
| ConvertInterfaceLuidToNameW | Преобразует LUID для сетевого интерфейса в имя интерфейса Юникода. |
| ConvertInterfaceNameToLuidA | Преобразует имя сетевого интерфейса ANSI в LUID этого интерфейса. |
| ConvertInterfaceNameToLuidW | Преобразует имя сетевого интерфейса Unicode в LUID для интерфейса. |
| if_indextoname | Преобразует локальный индекс сетевого интерфейса в имя интерфейса ANSI. |
| if_nametoindex | Преобразует имя интерфейса ANSI для сетевого интерфейса в локальный индекс интерфейса. |
Функции управления интерфейсами
| Функция | Описание |
|---|---|
| GetIfEntry2 | Извлекает сведения для указанного интерфейса на локальном компьютере. |
| GetIfStackTable | Извлекает таблицу записей строк стека сетевого интерфейса, которые указывают связь сетевых интерфейсов в стеке интерфейсов. |
| GetIfTable2 | Извлекает таблицу интерфейса MIB-II. |
| GetIfTable2Ex | Извлекает таблицу интерфейса MIB-II, заданную уровнем информации об интерфейсе. |
| GetInvertedIfStackTable | Извлекает таблицу инвертированных записей строк стека сетевых интерфейсов, которые указывают связь сетевых интерфейсов в стеке интерфейсов. |
| GetIpInterfaceEntry | Извлекает сведения о IP-адресах указанного интерфейса на локальном компьютере. |
| GetIpInterfaceTable | Получает записи интерфейса IP на локальном компьютере. |
| InitializeIpInterfaceEntry | Инициализирует элементы записи структуры MIB_IPINTERFACE_ROW со значениями по умолчанию. |
| SetIpInterfaceEntry | Задает свойства IP-интерфейса на локальном компьютере. |
Функции управления IP-адресами
| Функция | Описание |
|---|---|
| СоздатьЗаписьАдресаAnycast | Добавляет новую запись адреса anycast IP на локальном компьютере. |
| СоздатьУпорядоченныеПарыАдресов | Объединяет указанный список адресов назначения вместе с локальными IP-адресами хост-компьютера и сортирует пары в соответствии с предпочитаемым порядком связи. |
| CreateUnicastIpAddressEntry | Добавляет новую запись одноадресного IP-адреса на локальном компьютере. |
| DeleteAnycastIpAddressEntry | Удаляет существующую запись аникаст IP-адреса с локального компьютера. |
| DeleteUnicastIpAddressEntry | Удаляет имеющуюся запись одноадресного IP-адреса с локального компьютера. |
| GetAnycastIpAddressEntry | Извлекает информацию для существующей записи IP-адреса anycast на локальном компьютере. |
| ПолучитьТаблицуАдресовAnycastIp | Извлекает таблицу эникаст IP-адресов на локальном компьютере. |
| GetMulticastIpAddressEntry | Извлекает сведения о существующей записи многоадресного IP-адреса на локальном компьютере. |
| GetMulticastIpAddressTable | Извлекает таблицу IP-адресов многоадресной рассылки на локальном компьютере. |
| GetUnicastIpAddressEntry | Извлекает сведения для существующей записи уникастного IP-адреса на локальном компьютере. |
| GetUnicastIpAddressTable | Извлекает таблицу одноадресных IP-адресов на локальном компьютере. |
| InitializeUnicastIpAddressEntry | Инициализирует структуру MIB_UNICASTIPADDRESS_ROW со значениями по умолчанию для записи одноадресного IP-адреса на локальном компьютере. |
| УведомитьСтабильнаяЮникастнаяТаблицаАйпиАдресов | Извлекает стабильную таблицу одиночных IP-адресов на локальном компьютере. |
| SetUnicastIpAddressEntry | Задает параметры записи одноадресного IP-адреса на локальном компьютере. |
Функции управления IP-адресами соседей
| Функция | Описание |
|---|---|
| CreateIpNetEntry2 | Создает новую запись IP-адреса соседа на локальном компьютере. |
| DeleteIpNetEntry2 | Удаляет запись соседнего IP-адреса с локального компьютера. |
| FlushIpNetTable2 | Очищает таблицу соседей IP-адресов на локальном компьютере. |
| GetIpNetEntry2 | Извлекает информацию о записи соседнего IP-адреса на локальном компьютере. |
| GetIpNetTable2 | Извлекает таблицу соседей IP-адресов на локальном компьютере. |
| ResolveIpNetEntry2 | Определяет физический адрес для записи соседнего IP-адреса на локальном компьютере. |
| SetIpNetEntry2 | Задает физический адрес существующей записи IP-адреса соседа на локальном компьютере. |
Функции управления IP-путями
| Функция | Описание |
|---|---|
| FlushIpPathTable | Очищает таблицу IP-путей на локальном компьютере. |
| GetIpPathEntry | Извлекает информацию о записи IP-пути на локальном компьютере. |
| GetIpPathTable | Извлекает сведения для таблицы IP-путей на локальном компьютере. |
Функции управления IP-маршрутами
| Функция | Описание |
|---|---|
| CreateIpForwardEntry2 | Создает запись нового маршрута IP на локальном компьютере. |
| DeleteIpForwardEntry2 | Удаляет запись маршрута IP на локальном компьютере. |
| GetBestRoute2 | Извлекает запись IP-маршрута на локальном компьютере для оптимального маршрута к указанному IP-адресу назначения. |
| GetIpForwardEntry2 | Извлекает информацию для записи маршрута IP на локальном компьютере. |
| GetIpForwardTable2 | Извлекает записи IP-маршрута на локальном компьютере. |
| InitializeIpForwardEntry | Инициализирует структуру MIB_IPFORWARD_ROW2, задавая значения по умолчанию для записи маршрута IP на локальном компьютере. |
| SetIpForwardEntry2 | Задает свойства записи IP-маршрута на локальном компьютере. |
Функции управления памятью IP-таблиц
| Функция | Описание |
|---|---|
| FreeMibTable | Освобождает буфер, выделенный функциями, возвращающими таблицы сетевых интерфейсов, адресов и маршрутов (например, GetIfTable2 и GetAnycastIpAddressTable). |
Функции уведомлений
| Функция | Описание |
|---|---|
| CancelMibChangeNotify2 | Отменяет регистрацию драйвера для уведомлений об изменениях IP-интерфейса, изменений IP-адреса, изменений IP-маршрута и запросов на получение таблицы стабильных одноадресных IP-адресов. |
| NotifyIpInterfaceChange | Регистрирует драйвер для уведомления об изменениях всех IP-интерфейсов, интерфейсов IPv4 или IPv6 на локальном компьютере. |
| NotifyRouteChange2 | Регистрирует уведомления об изменениях записей IP-маршрутов на локальном компьютере. |
| NotifyUnicastIpAddressChange | Регистрировать, чтобы получать уведомления об изменениях всех одноадресных IP-интерфейсов, одноадресных IPv4-адресов или одноадресных IPv6-адресов на локальном компьютере. |
Функции управления клиентами Teredo IPv6
| Функция | Описание |
|---|---|
| GetTeredoPort | Извлекает динамический номер порта UDP, используемый клиентом Teredo на локальном компьютере. |
| NotifyTeredoPortChange | Регистрирует уведомления о изменениях номера UDP-порта, который клиент Teredo использует в качестве порта службы Teredo на локальном компьютере. |
| УведомитьСтабильнаяЮникастнаяТаблицаАйпиАдресов | Извлекает стабильную таблицу одиночных IP-адресов на локальном компьютере. |
Структуры MIB
| Структура | Описание |
|---|---|
| IP_ADDRESS_PREFIX | Сохраняет префикс IP-адреса. |
| MIB_ANYCASTIPADDRESS_ROW | Хранит сведения о аникаст IP-адресе. |
| MIB_ANYCASTIPADDRESS_TABLE | Содержит таблицу записей IP-адресов anycast. |
| MIB_IF_ROW2 | Хранит сведения о конкретном интерфейсе. |
| MIB_IF_TABLE2 | Содержит таблицу записей логического и физического интерфейса. |
| MIB_IFSTACK_ROW | Представляет связь между двумя сетевыми интерфейсами. |
| MIB_IFSTACK_TABLE | Содержит таблицу записей строк в стеке сетевых интерфейсов. Эта таблица указывает связь сетевых интерфейсов в стеке интерфейсов. |
| MIB_INVERTEDIFSTACK_ROW | Представляет связь между двумя сетевыми интерфейсами. |
| MIB_INVERTEDIFSTACK_TABLE | Содержит таблицу инвертированных записей строк стека сетевых интерфейсов. Эта таблица указывает связь сетевых интерфейсов в стеке интерфейсов в обратном порядке. |
| MIB_IPFORWARD_ROW2 | Хранит сведения о записи IP-маршрута. |
| MIB_IPFORWARD_TABLE2 | Содержит таблицу записей IP-маршрутов. |
| MIB_IPINTERFACE_ROW | Хранит сведения об управлении интерфейсом для определенного семейства IP-адресов в сетевом интерфейсе. |
| Таблица интерфейса IP MIB | Содержит таблицу записей IP-интерфейса. |
| MIB_IPNET_ROW2 | Хранит сведения о соседнем IP-адресе. |
| MIB_IPNET_TABLE2 | Содержит таблицу соседних записей IP-адресов. |
| MIB_IPPATH_ROW | Хранит сведения о записи IP-маршрута. |
| MIB_IPPATH_TABLE | Содержит таблицу записей IP маршрутов. |
| MIB_MULTICASTIPADDRESS_ROW | Хранит сведения об IP-адресе многоадресной рассылки. |
| MIB_MULTICASTIPADDRESS_TABLE | Содержит таблицу записей IP-адресов многоадресной рассылки. |
| MIB_UNICASTIPADDRESS_ROW | Хранит сведения об одноадресном IP-адресе. |
| MIB_UNICASTIPADDRESS_TABLE | Содержит таблицу записей ункастовых IP-адресов. |
Перечисления МИБ
| Перечисление | Описание |
|---|---|
| MIB_IF_TABLE_LEVEL | Определяет уровень информации об интерфейсе, которую нужно получить. |
| MIB_NOTIFICATION_TYPE | Определяет тип уведомления, передаваемый функции обратного вызова при возникновении уведомления. |
Перечисления NL
| Перечисление | Описание |
|---|---|
| NL_ADDRESS_TYPE | Указывает тип IP-адреса сетевого слоя. |
| NL_DAD_STATE | Определяет состояние обнаружения повторяющихся адресов (DAD). |
| NL_LINK_LOCAL_ADDRESS_BEHAVIOR | Определяет поведение локального адреса ссылки. |
| NL_NEIGHBOR_STATE | Определяет состояние соседнего IP-адреса сетевого слоя, как описано в RFC 2461, разделе 7.3.2. |
| NL_PREFIX_ORIGIN | Определяет источник префикса или сетевой части IP-адреса. |
| NL_ROUTE_ORIGIN | Определяет источник IP-маршрута. |
| NL_ROUTE_PROTOCOL | Определяет механизм маршрутизации, с которым был добавлен IP-маршрут, как описано в RFC 4292. |
| NL_ROUTER_DISCOVERY_BEHAVIOR | Определяет поведение обнаружения маршрутизатора, как описано в RFC 2461. |
| NL_SUFFIX_ORIGIN | Определяет источник суффикса или части узла IP-адреса. |