MIB_IPNET_ROW2结构存储有关邻居 IP 地址的信息。
Syntax
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;
Members
Address
类型: SOCKADDR_INET
邻居 IP 地址。 此成员可以是 IPv6 地址或 IPv4 地址。
InterfaceIndex
类型: NET_IFINDEX
与此 IP 地址关联的网络接口的本地索引值。 当禁用和启用网络适配器时,或者在其他情况下,此索引值可能会更改,不应被视为持久性。
InterfaceLuid
类型: NET_LUID
与此 IP 地址关联的网络接口的本地唯一标识符(LUID)。
PhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH]
类型: UCHAR[IF_MAX_PHYS_ADDRESS_LENGTH]
与此 IP 地址关联的网络接口的适配器的物理硬件地址。
PhysicalAddressLength
类型: ULONG
PhysicalAddress 成员指定的物理硬件地址的长度(以字节为单位)。 支持的最大值为 32 字节。
State
类型: NL_NEIGHBOR_STATE
RFC 2461 第 7.3.2 节中定义的网络邻居 IP 地址的状态。 有关详细信息,请参阅 http://www.ietf.org/rfc/rfc2461.txt。 此成员可以是 Nldef.h 头文件中定义的NL_NEIGHBOR_STATE枚举类型中的值之一。
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,这包括使用 RFC 2461 中指定的 IPv6 的邻居发现 (ND) 协议确定的地址。 有关详细信息,请参阅 http://www.ietf.org/rfc/rfc2461.txt。
GetIpNetEntry2 函数检索单个邻居 IP 地址,并在MIB_IPNET_ROW2结构中返回此信息。
请注意, Netioapi.h 头文件自动包含在 Iphlpapi.h 头文件中。 不应直接使用 Netioapi.h 头文件。
要求
| Requirement | 价值 |
|---|---|
| 最低支持的客户端 | Windows Vista [仅限桌面应用] |
| 支持的最低服务器 | Windows Server 2008 [仅限桌面应用] |
| Header | netioapi.h (包括 Iphlpapi.h) |