IPGlobalProperties.GetUnicastAddressesAsync Method ()

.NET Framework (current version)

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Retrieves the stable unicast IP address table on the local computer as an asynchronous operation.

Namespace:   System.Net.NetworkInformation
Assembly:  System (in System.dll)

[HostProtectionAttribute(SecurityAction.LinkDemand, ExternalThreading = true)]
public virtual Task<UnicastIPAddressInformationCollection> GetUnicastAddressesAsync()

Return Value

Type: System.Threading.Tasks.Task<UnicastIPAddressInformationCollection>

Returns Task<TResult>.

The task object representing the asynchronous operation.

Exception Condition

The call to the native GetAdaptersAddresses function failed.


The caller does not have necessary Read permission.


The call to the native NotifyStableUnicastIpAddressTable function failed.

In order to support outbound connections or to accept incoming connections on a Teredo interface, applications need to ensure that the Teredo interface is up and ready for use. This is because Teredo can go into a dormant state when not used for some period of time.

The GetUnicastAddressesAsync method will allow an application to retrieve the list of stable unicast IP addresses as asynchronous operation. The IPAddress.IsIPv6Teredo property can be used to determine if an IP address is an IPv6 Teredo address with the prefix of 2001::/32.

The GetUnicastAddresses method also returns non-Teredo addresses and provides a more convenient way to obtain the unicast IP addresses for a system than enumerating all the System.Net.NetworkInformation.NetworkInterface objects on a local computer and querying the associated IP addresses.

.NET Framework
Available since 4.5
Return to top