структура MIB_IPNET_ROW2 (netioapi.h)
В структуре MIB_IPNET_ROW2 хранятся сведения о соседнем IP-адресе.
Синтаксис
typedef struct _MIB_IPNET_ROW2 {
SOCKADDR_INET Address;
NET_IFINDEX InterfaceIndex;
NET_LUID InterfaceLuid;
UCHAR PhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH];
ULONG PhysicalAddressLength;
NL_NEIGHBOR_STATE State;
union {
struct {
BOOLEAN IsRouter : 1;
BOOLEAN IsUnreachable : 1;
};
UCHAR Flags;
};
union {
ULONG LastReachable;
ULONG LastUnreachable;
} ReachabilityTime;
} MIB_IPNET_ROW2, *PMIB_IPNET_ROW2;
Члены
Address
Тип: SOCKADDR_INET
Соседний IP-адрес. Это может быть IPv6-адрес или IPv4-адрес.
InterfaceIndex
Тип: NET_IFINDEX
Значение локального индекса для сетевого интерфейса, связанного с этим IP-адресом. Это значение индекса может изменяться при отключении сетевого адаптера и его включении или при других обстоятельствах и не должно считаться постоянным.
InterfaceLuid
Тип: NET_LUID
Локальный уникальный идентификатор (LUID) для сетевого интерфейса, связанного с этим IP-адресом.
PhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH]
Тип: UCHAR[IF_MAX_PHYS_ADDRESS_LENGTH]
Физический аппаратный адрес адаптера для сетевого интерфейса, связанного с этим IP-адресом.
PhysicalAddressLength
Тип: ULONG
Длина (в байтах) физического аппаратного адреса, указанного элементом PhysicalAddress . Максимальное поддерживаемое значение — 32 байта.
State
Тип: NL_NEIGHBOR_STATE
Состояние IP-адреса соседа по сети, как определено в rfc 2461, раздел 7.3.2. Для получения дополнительной информации см. http://www.ietf.org/rfc/rfc2461.txt. Этот член может быть одним из значений из типа перечисления NL_NEIGHBOR_STATE , определенного в файле заголовка Nldef.h .
IsRouter
Тип: BOOLEAN
Значение типа , указывающее, является ли этот IP-адрес маршрутизатором.
IsUnreachable
Тип: BOOLEAN
Значение типа , указывающее, недоступен ли этот IP-адрес.
Flags
Тип: UCHAR
Набор флагов, указывающих, является ли IP-адрес маршрутизатором и является ли IP-адрес недоступным.
ReachabilityTime
ReachabilityTime.LastReachable
Тип: ULONG Время (в миллисекундах), в течение которых узел предполагает, что сосед доступен после получения подтверждения доступности.
ReachabilityTime.LastUnreachable
Тип: ULONG Время (в миллисекундах), когда узел предполагает, что сосед недоступен после того, как не получил подтверждение доступности.
Комментарии
Структура MIB_IPNET_ROW2 определяется в Windows Vista и более поздних версиях.
Функция GetIpNetTable2 перечисляет соседние IP-адреса в локальной системе и возвращает эти сведения в MIB_IPNET_TABLE2 структуре.
Для IPv4 сюда входят адреса, определенные с помощью протокола ARP. Для IPv6 сюда входят адреса, определенные с помощью протокола обнаружения соседей (ND) для IPv6, как указано в RFC 2461. Для получения дополнительной информации см. http://www.ietf.org/rfc/rfc2461.txt.
Функция GetIpNetEntry2 извлекает один соседний IP-адрес и возвращает эти сведения в MIB_IPNET_ROW2 структуре.
Обратите внимание, что файл заголовка Netioapi.h автоматически включается в файл заголовка Iphlpapi.h . Файл заголовка Netioapi.h никогда не следует использовать напрямую.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Верхняя часть | netioapi.h (включая Iphlpapi.h) |