Managing IP Addresses (Windows CE 5.0)

Send Feedback

IP Helper can assist you in managing IP addresses that are associated with interfaces on the local computer. Use the functions described following for IP address management.

The GetIpAddrTable function retrieves a table that contains the mapping of IP addresses to interfaces. More than one IP address may be associated with the same interface.

Use the AddIPAddress function to add an IP address to a particular interface. To remove IP addresses that were previously added using AddIPAddress, use the DeleteIPAddress function. IP addresses added using the AddIPAddress function will not remain after reboot. Typically a valid interface already has an IP Address assigned to it. This function is used when an application needs to add an IP address or needs to add multiple IP addresses. For example, this function can be used to map IP addresses to devices that do not support IP, but are using Windows CE as a front end to access the network. When AddIPAddress is called, an ARP packet is sent to ensure that the address is not in use.

The IpReleaseAddress and IpRenewAddress functions require the local computer to be using Dynamic Host Configuration Protocol (DHCP). The IpReleaseAddress function releases an IP address that was previously obtained from DHCP. The IpRenewAddress function renews (or acquires) a DHCP lease on a particular IP address.

The following table describes each GetIpAddrTable variable.

Value Description
pIpAddrTable Pointer to a buffer that, on successful return, contains the interface–to–IP address mapping table as a MIB_IPADDRTABLE structure.
pdwSize Specifies the size of the buffer pointed to by the pIpAddrTable parameter. If the buffer is not large enough to hold the returned mapping table, the function sets this parameter equal to the required buffer size.
bOrder Specifies whether the returned mapping table should be sorted in ascending order by IP address. If this parameter is TRUE, the table is sorted.
MIB_IPADDRTABLE

(The table is read-only, but addresses can be added and removed using AddIPAddress and DeleteIPAddress)

dwNumEntries
Specifies the number of IP address entries in the table.

table[ANY_SIZE]

Pointer to a table of IP address entries implemented as an array of MIB_ADDRROW structures.

The following table describes each AddIPAddress variable.

Value Description
Address Specifies the IP address to add to the adapter.
IpMask Specifies the subnet mask for the IP address.
IfIndex Specifies the adapter to which to add the address.
NTEXontext Pointer to a ULONG variable that, on successful return, points to the Net Table Entry (NTE) context for this IP address. The caller can later use this context in a call to DeleteIPAddress.
NTEInstance Pointer to a ULONG variable that, on successful return, points to the NTE instance for this IP address.

The following table describes each DeleteIPAddress variable.

Value Description
NTEContext Specifies the Net Table Entry (NTE) context for the IP address. This context was returned by the previous call to AddIPAddress.

The following table describes each IpReleaseAddress variable and IP_ADAPTER_INDEX_MAP member.

Value Description
AdapterInfo Pointer to an IP_ADAPTER_INDEX_MAP structure that identifies the adapter associated with the IP address to release.
IP_ADAPTER_INDEX_MAP Index
Specifies the index of the adapter.

Name[MAX_ADAPTER_NAME]

Pointer to a Unicode string that contains the name of the adapter.

The following table describes each IpRenewAddress variable.

Value Description
AdapterInfo Pointer to an IP_ADAPTER_INDEX_MAP structure that identifies the adapter associated with the IP address to release. See IpReleaseAddress above for a description of IP_ADAPTER_INDEX_MAP members.

See Also

Internet Protocol Helper APIs

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.