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


структура IP_ADAPTER_UNICAST_ADDRESS_LH (iptypes.h)

Структура IP_ADAPTER_UNICAST_ADDRESS хранит один одноадресный IP-адрес в связанном списке IP-адресов для конкретного адаптера.

Синтаксис

typedef struct _IP_ADAPTER_UNICAST_ADDRESS_LH {
  union {
    ULONGLONG Alignment;
    struct {
      ULONG Length;
      DWORD Flags;
    };
  };
  struct _IP_ADAPTER_UNICAST_ADDRESS_LH *Next;
  SOCKET_ADDRESS                        Address;
  IP_PREFIX_ORIGIN                      PrefixOrigin;
  IP_SUFFIX_ORIGIN                      SuffixOrigin;
  IP_DAD_STATE                          DadState;
  ULONG                                 ValidLifetime;
  ULONG                                 PreferredLifetime;
  ULONG                                 LeaseLifetime;
  UINT8                                 OnLinkPrefixLength;
} IP_ADAPTER_UNICAST_ADDRESS_LH, *PIP_ADAPTER_UNICAST_ADDRESS_LH;

Члены

Alignment

Length

Тип: ULONG

Длина этой структуры в байтах.

Flags

Тип: DWORD

Набор флагов для этого IP-адреса.

В следующей таблице показаны возможные значения. Эти константы определяются в файле заголовка Iptypes.h .

Значение Значение
IP_ADAPTER_ADDRESS_DNS_ELIGIBLE
IP-адрес является допустимым для отображения в DNS.
IP_ADAPTER_ADDRESS_TRANSIENT
IP-адрес является адресом кластера и не должен использоваться большинством приложений.

Next

Тип: struct _IP_ADAPTER_UNICAST_ADDRESS*

Указатель на следующую структуру адресов IP-адаптера в списке.

Address

Тип: SOCKET_ADDRESS

IP-адрес для этой записи одноадресного IP-адреса. Это может быть IPv6-адрес или IPv4-адрес.

PrefixOrigin

Тип: IP_PREFIX_ORIGIN

Префикс или сетевая часть IP-адреса. Этот элемент может быть одним из значений из типа перечисления IP_PREFIX_ORIGIN , определенного в файле заголовка Iptypes.h .

SuffixOrigin

Тип: IP_SUFFIX_ORIGIN

Суффикс или часть узла IP-адреса. Этот элемент может быть одним из значений из типа перечисления IP_SUFFIX_ORIGIN , определенного в файле заголовка Iptypes.h .

DadState

Тип: IP_DAD_STATE

Состояние обнаружения повторяющихся адресов (DAD). Этот элемент может быть одним из значений из типа перечисления IP_DAD_STATE , определенного в файле заголовка Iptypes.h . Обнаружение повторяющихся адресов доступно для IPv4- и IPv6-адресов.

ValidLifetime

Тип: ULONG

Максимальное время существования допустимого IP-адреса в секундах. Значение 0xffffffff считается бесконечным.

PreferredLifetime

Тип: ULONG

Предпочтительное время существования (в секундах), когда IP-адрес является допустимым. Значение 0xffffffff считается бесконечным.

LeaseLifetime

Тип: ULONG

Срок действия аренды (в секундах), в течение срока действия IP-адреса.

OnLinkPrefixLength

Тип: UINT8

Длина (в битах) префикса или сетевой части IP-адреса. Для одноадресного IPv4-адреса любое значение больше 32 является недопустимым. Для одноадресного IPv6-адреса любое значение больше 128 является недопустимым. Значение 255 обычно используется для представления недопустимого значения.

Примечание Этот элемент структуры доступен только в Windows Vista и более поздних версиях.
 

Комментарии

Структура IP_ADAPTER_ADDRESSES извлекается функцией GetAdaptersAddresses . Элемент FirstUnicastAddress структуры IP_ADAPTER_ADDRESSES является указателем на связанный список IP_ADAPTER_UNICAST_ADDRESS структур.

Размер структуры IP_ADAPTER_UNICAST_ADDRESS изменился в Windows Vista и более поздних версиях. Элемент Length следует использовать для определения используемой версии структуры IP_ADAPTER_UNICAST_ADDRESS .

В версию структуры IP_ADAPTER_UNICAST_ADDRESS в Windows Vista и более поздних версий добавлен следующий новый член: OnLinkPrefixLength.

При использовании этой структуры с функцией GetAdaptersAddresses и аналогичными функциями управления отображаются все настроенные адреса, включая повторяющиеся адреса. Такие повторяющиеся записи адресов могут возникать, если адреса настроены статически. Такие отчеты упрощают устранение неполадок администратора. Участник DadState эффективно выявляет и устраняет такие ситуации.

В windows SDK версия структуры для использования в Windows Vista и более поздних версий определяется как IP_ADAPTER_UNICAST_ADDRESS_LH. В windows SDK версия этой структуры, которая будет использоваться в более ранних системах, включая Windows XP с пакетом обновления 1 (SP1) и более поздних версий, определяется как IP_ADAPTER_UNICAST_ADDRESS_XP. При компиляции приложения, если целевой платформой является Windows Vista и более поздних версий (NTDDI_VERSION >= NTDDI_VISTA, _WIN32_WINNT >= 0x0600или WINVER >= 0x0600), структура IP_ADAPTER_UNICAST_ADDRESS_LH определяется в IP_ADAPTER_UNICAST_ADDRESS структуре. При компиляции приложения, если целевой платформой не является Windows Vista и более поздних версий, структура IP_ADAPTER_UNICAST_ADDRESS_XP определяется в IP_ADAPTER_UNICAST_ADDRESS структуре.

Структура SOCKET_ADDRESS используется в структуре IP_ADAPTER_UNICAST_ADDRESS . В пакете SDK microsoft Windows, выпущенном для Windows Vista и более поздних версий, организация файлов заголовков изменилась, а структура SOCKET_ADDRESS определена в файле заголовка Ws2def.h , который автоматически включается в файл заголовка Winsock2.h . В пакете SDK платформы, выпущенном для Windows Server 2003 и Windows XP, структура SOCKET_ADDRESS объявляется в файле заголовка Winsock2.h . Чтобы использовать структуру IP_ADAPTER_UNICAST_ADDRESS , файл заголовка Winsock2.h должен быть включен перед файлом заголовка Iphlpapi.h .

Требования

   
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть iptypes.h (включая Iphlpapi.h)

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

GetAdaptersAddresses

Начальная страница вспомогательного ip-адреса

Вспомогательные структуры IP

IP_ADAPTER_ADDRESSES

IP_DAD_STATE

IP_PREFIX_ORIGIN

IP_SUFFIX_ORIGIN

SOCKET_ADDRESS