Share via


Using the Address Resolution Protocol (Windows CE 5.0)

Send Feedback

You can use IP Helper to perform Address Resolution Protocol (ARP) operations for the local computer. Use the following functions to retrieve and modify the ARP table.

The GetIpNetTable retrieves the ARP table. The ARP table contains the mapping of IP addresses to physical addresses. Physical addresses are sometimes referred to as Media Access Controller (MAC) addresses. Changes to this table can be made with SetIpNetEntry.

Use the CreateIpNetEntry and DeleteIpNetEntry functions to add or remove particular ARP entries to or from the table. The FlushIpNetTable function deletes all entries from the table.

To create or delete proxy ARP entries, use the CreateProxyArpEntry and DeleteProxyArpEntry functions.

The SendARP function sends an ARP request to the local network.

The following table describes each GetIpNetTable variable.

Value Description
pIpNetTable Pointer to a buffer that, on successful return, contains the IP-to-physical address mapping table as a MIB_IPNETTABLE structure.
pdwSize Specifies the size of the buffer pointed to by the pIpNetTable 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_IPNETTABLE dwNumEntries
Specifies the number of ARP entries in the table.

table[ANY_SIZE]

Pointer to a table of ARP entries implemented as an array of MIB_IPNETROW structures.
MIB_IPNETROW

(All fields are read-write, and can be changed by the API user with the SetIpNetEntry function)

dwIndex
Specifies the index of the adapter.

dwPhysAddrLen

Specifies the length of the physical address.

bPhysAddr[MAXLEN_PHYSADDR]

Specifies the physical address.

dwAddr

Specifies the IP address.

dwType

The following table describes each CreateIpNetEntry variable.

Value Description
pArpEntry Pointer to a MIB_IPNETROW structure that specifies information for the new entry. The caller must specify values for all members of this structure. (See GetIpNetTable table, above).

The following table describes each DeleteIpNetEntry variable.

Value Description
pArpEntry Pointer to a MIB_IPNETROW structure. The information in this structure identifies the entry to delete. The caller must specify values for at least the dwIndex and dwAddr members of this structure. (See GetIpNetTable table, above).

The following table describes each FlushIpNetTable variable.

Value Description
dwIfIndex Specifies the index of the interface for which to delete all ARP entries.

The following table describes each CreateProxyArpEntry variable.

Value Description
dwAddress Specifies the IP address for which this computer acts as a proxy.
dwMask Specifies the subnet mask for the IP address specified by the dwAddress parameter.
dwIfIndex Specifies the index of the interface on which to proxy ARP for the IP address specified by the dwAddress parameter. In other words, when an ARP request for dwAddress is received on this interface, the local computer responds with the physical address of this interface. If this interface is of a type that does not support ARP, such as PPP, then the call fails.

The following table describes each DeleteProxyArpEntry variable.

Value Description
dwAddress Specifies the IP address for which this computer is acting as a proxy.
dwMask Specifies the subnet mask for the IP address specified by the dwAddress parameter.
dwInIndex Specifies the index of the interface on which this computer is supporting proxy ARP for the IP address specified by dwAddress.

The following table describes each SendARP variable.

Value Description
DestIp Specifies the destination IP address. The ARP request attempts to obtain the physical address that corresponds to this IP address.
SrcIP Specifies the IP address of the sender. This parameter is optional. The caller may specify zero for the parameter.
pMacAddr Pointer to a ULONG variable. On successful return, this variable contains the physical address that corresponds to the IP address specified by the DestIP parameter.
PhyAddrLen Pointer to a ULONG variable. On successful return, this variable contains the length of the physical address pointed to by the pMacAddr parameter.

See Also

Internet Protocol Helper APIs

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.