Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This structure is the "header node" for a linked list of addresses for a particular adapter. This structure can simultaneously be used as part of a linked list of IP_ADAPTER_ADDRESSESstructures.

Syntax

typedef struct _IP_ADAPTER_ADDRESSES {
  union {
	ULONGLONG 
Alignment;
	struct {
	ULONG 
Length;
	DWORD 
IfIndex;
};
  };
  struct _IP_ADAPTER_ADDRESSES* 
Next;
  PCHAR 
AdapterName;
  PIP_ADAPTER_UNICAST_ADDRESS 
FirstUnicastAddress;
  PIP_ADAPTER_ANYCAST_ADDRESS 
FirstAnycastAddress;
  PIP_ADAPTER_MULTICAST_ADDRESS 
FirstMulticastAddress;
  PIP_ADAPTER_DNS_SERVER_ADDRESS 
FirstDnsServerAddress;
  PWCHAR 
DnsSuffix;
  PWCHAR 
Description;
  PWCHAR 
FriendlyName;
  BYTE 
PhysicalAddress[MAX_ADAPTER_ADDRESS_LENGTH];
  DWORD 
PhysicalAddressLength;
  DWORD 
Flags;
  DWORD 
Mtu;
  DWORD 
IfType;
  IF_OPER_STATUS 
OperStatus;
  DWORD 
Ipv6IfIndex;
  DWORD 
ZoneIndices[16];
  PIP_ADAPTER_PREFIX 
FirstPrefix;
} IP_ADAPTER_ADDRESSES, *PIP_ADAPTER_ADDRESSES;

Members

Alignment

Reserved. Used by the compiler to align the structure.

Length

The length of this structure.

IfIndex

The index of the interface with which these addresses are associated.

Next

Pointer to the next list of adapter addresses.

AdapterName

An array of characters that contains the name of the adapter with which these addresses are associated.

FirstUnicastAddress

Pointer to the first IP_ADAPTER_UNICAST_ADDRESSstructure in the list of addresses for the adapter specified by AdapterName.

FirstAnycastAddress

Pointer to the first IP_ADAPTER_ANYCAST_ADDRESSstructure in the list of addresses for the adapter specified by AdapterName.

FirstMulticastAddress

Pointer to the first IP_ADAPTER_MULTICAST_ADDRESSstructure in the list of addresses for the adapter specified by AdapterName.

FirstDnsServerAddress

Pointer to the first IP_ADAPTER_DNS_SERVER_ADDRESSstructure in the list of addresses for the adapter specified by AdapterName.

DnsSuffix

The DNS suffix associated with this adapter.

Description

A description for the adapter.

FriendlyName

A user-friendly name. This name appears in contexts such as the ipconfigcommand line program and the Connection folder.

PhysicalAddress

The Media Access Control (MAC) address for the adapter. For example, on an Ethernet network, this member will specify the Ethernet address.

PhysicalAddressLength

The length of the address specified in the PhysicalAddressmember. For interfaces that do not have a data-link layer, this value is zero.

Flags

A combination of adapter flags. The following table shows the possible flags.

Flag Description

IP_ADAPTER_DDNS_ENABLED

Dynamic DNS is enabled for the adapter.

IP_ADAPTER_REGISTER_ADAPTER_SUFFIX

Register the DNS suffix for the adapter.

IP_ADAPTER_DHCP_ENABLED

Dynamic Host Configuration Protocol (DHCP) is enabled on the adapter.

Mtu

The maximum transmission unit (MTU), in bytes.

IfType

The type of interface using the values defined by the Internet Assigned Numbers Authority (IANA). These values are listed in the header file Ipifcons.h.

OperStatus

The operational status of the interface using the values defined in RFC2863. These values are listed in the header file Iptypes.h.

Ipv6IfIndex

The interface index for the IPv6 IP address. Contains zero if IPv6 is not available on the interface.

ZoneIndices[16]

The array of Scope IDs for each scope level. Used for composing sockaddrstructures. The SCOPE_LEVELenumeration is used to index the array.

FirstPrefix

The pointer to the first adapter prefix in the IPv6IfIndexmember.

Remarks

An application can query the OperStatusmember to discover the current status of network connectivity. This status is not subject to media sense damping intervals. For example, when the connectivity status of an interface changes, OperStatusimmediately changes to reflect the current state. This change in connectivity status will have no effect on the TCP/IP stack until the damping interval expires.

Requirements

Header iptypes.h
Windows Embedded CE Windows Embedded CE 6.0 and later
Windows Mobile Windows Mobile Version 5.0 and later
Note IP Helper Structures

Members

Alignment

Reserved. Used by the compiler to align the structure.

Length

The length of this structure.

IfIndex

The index of the interface with which these addresses are associated.

Next

Pointer to the next list of adapter addresses.

AdapterName

An array of characters that contains the name of the adapter with which these addresses are associated.

FirstUnicastAddress

Pointer to the first IP_ADAPTER_UNICAST_ADDRESSstructure in the list of addresses for the adapter specified by AdapterName.

FirstAnycastAddress

Pointer to the first IP_ADAPTER_ANYCAST_ADDRESSstructure in the list of addresses for the adapter specified by AdapterName.

FirstMulticastAddress

Pointer to the first IP_ADAPTER_MULTICAST_ADDRESSstructure in the list of addresses for the adapter specified by AdapterName.

FirstDnsServerAddress

Pointer to the first IP_ADAPTER_DNS_SERVER_ADDRESSstructure in the list of addresses for the adapter specified by AdapterName.

DnsSuffix

The DNS suffix associated with this adapter.

Description

A description for the adapter.

FriendlyName

A user-friendly name. This name appears in contexts such as the ipconfigcommand line program and the Connection folder.

PhysicalAddress

The Media Access Control (MAC) address for the adapter. For example, on an Ethernet network, this member will specify the Ethernet address.

PhysicalAddressLength

The length of the address specified in the PhysicalAddressmember. For interfaces that do not have a data-link layer, this value is zero.

Flags

A combination of adapter flags. The following table shows the possible flags.

Flag Description

IP_ADAPTER_DDNS_ENABLED

Dynamic DNS is enabled for the adapter.

IP_ADAPTER_REGISTER_ADAPTER_SUFFIX

Register the DNS suffix for the adapter.

IP_ADAPTER_DHCP_ENABLED

Dynamic Host Configuration Protocol (DHCP) is enabled on the adapter.

IP_ADAPTER_RECEIVE_ONLY

The adapter is a receive-only adapter.

IP_ADAPTER_NO_MULTICAST

The adapter is not a multicast recipient.

IP_ADAPTER_IPV6_OTHER_STATEFUL_CONFIG

The adapter contains other IPv6-specific stateful configuration information.

DdnsEnabled

Dynamic DNS is enabled on the adapter.

RegisterAdapterSuffix

Register the DNS suffix for the adapter.

Dhcpv4Enabled

Dynamic Host Configuration Protocol (DHCP) is enabled for the adapter.

ReceiveOnly

The adapter is a receive-only adapter.

NoMulticast

The adapter is not a multicast recipient.

Ipv6OtherStatefulConfig

The adapter contains other IPv6-specific stateful configuration information.

NetbiosOverTcpipEnabled

NetBIOS over TCPIP is enabled for the adapter.

Ipv4Enabled

IPv4 is enabled for the adapter.

Ipv6Enabled

IPv4 is enabled for the adapter.

Mtu

The maximum transmission unit (MTU), in bytes.

IfType

The type of interface using the values defined by the Internet Assigned Numbers Authority (IANA). These values are listed in the header file Ipifcons.h.

OperStatus

The operational status of the interface using the values defined in RFC2863. These values are listed in the header file Iptypes.h.

Ipv6IfIndex

The interface index for the IPv6 IP address. Contains zero if IPv6 is not available on the interface.

ZoneIndices[16]

The array of Scope IDs for each scope level. Used for composing sockaddrstructures. The SCOPE_LEVELenumeration is used to index the array.

FirstPrefix

The pointer to the first adapter prefix in the IPv6IfIndexmember.

PhysicalMedium

The physical medium. Possible values are defined in NDIS_PHYSICAL_MEDIUM (see Ntddndis.h). The PhysicalMediummember is initialized to the OID_GEN_PHYSICAL_MEDIUM response from the 802.3 miniport driver.

Remarks

An application can query the OperStatusmember to discover the current status of network connectivity. This status is not subject to media sense damping intervals. For example, when the connectivity status of an interface changes, OperStatusimmediately changes to reflect the current state. This change in connectivity status will have no effect on the TCP/IP stack until the damping interval expires.

Requirements

Header iptypes.h
Windows Embedded CE Windows Embedded CE 6.0 and later
Windows Mobile Windows Mobile Version 5.0 and later
Note IP Helper Structures

See Also