IPInterfaceProperties Class
Provides information about network interfaces that support Internet Protocol version 4 (IPv4) or Internet Protocol version 6 (IPv6).
Namespace: System.Net.NetworkInformation
Assembly: System (in System.dll)
The IPInterfaceProperties type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | IPInterfaceProperties | Initializes a new instance of the IPInterfaceProperties class. |
| Name | Description | |
|---|---|---|
![]() | AnycastAddresses | Gets the anycast IP addresses assigned to this interface. |
![]() | DhcpServerAddresses | Gets the addresses of Dynamic Host Configuration Protocol (DHCP) servers for this interface. |
![]() | DnsAddresses | Gets the addresses of Domain Name System (DNS) servers for this interface. |
![]() | DnsSuffix | Gets the Domain Name System (DNS) suffix associated with this interface. |
![]() | GatewayAddresses | Gets the IPv4 network gateway addresses for this interface. |
![]() | IsDnsEnabled | Gets a Boolean value that indicates whether NetBt is configured to use DNS name resolution on this interface. |
![]() | IsDynamicDnsEnabled | Gets a Boolean value that indicates whether this interface is configured to automatically register its IP address information with the Domain Name System (DNS). |
![]() | MulticastAddresses | Gets the multicast addresses assigned to this interface. |
![]() | UnicastAddresses | Gets the unicast addresses assigned to this interface. |
![]() | WinsServersAddresses | Gets the addresses of Windows Internet Name Service (WINS) servers. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Determines whether the specified object is equal to the current object. (Inherited from Object.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetIPv4Properties | Provides Internet Protocol version 4 (IPv4) configuration data for this network interface. |
![]() | GetIPv6Properties | Provides Internet Protocol version 6 (IPv6) configuration data for this network interface. |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
This class provides access to configuration and address information for network interfaces that support IPv4 or IPv6. You do not create instances of this class; they are returned by the GetIPProperties method.
To access IPv4-specific properties, use the object returned by the GetIPv4Properties method. To access IPv6-specific properties, use the object returned by the GetIPv6Properties method.
The following code example displays address information.
public static void ShowIPAddresses(IPInterfaceProperties adapterProperties) { IPAddressCollection dnsServers = adapterProperties.DnsAddresses; if (dnsServers != null) { foreach (IPAddress dns in dnsServers) { Console.WriteLine(" DNS Servers ............................. : {0}", dns.ToString() ); } } IPAddressInformationCollection anyCast = adapterProperties.AnycastAddresses; if (anyCast != null) { foreach (IPAddressInformation any in anyCast) { Console.WriteLine(" Anycast Address .......................... : {0} {1} {2}", any.Address, any.IsTransient ? "Transient" : "", any.IsDnsEligible ? "DNS Eligible" : "" ); } Console.WriteLine(); } MulticastIPAddressInformationCollection multiCast = adapterProperties.MulticastAddresses; if (multiCast != null) { foreach (IPAddressInformation multi in multiCast) { Console.WriteLine(" Multicast Address ....................... : {0} {1} {2}", multi.Address, multi.IsTransient ? "Transient" : "", multi.IsDnsEligible ? "DNS Eligible" : "" ); } Console.WriteLine(); } UnicastIPAddressInformationCollection uniCast = adapterProperties.UnicastAddresses; if (uniCast != null) { string lifeTimeFormat = "dddd, MMMM dd, yyyy hh:mm:ss tt"; foreach (UnicastIPAddressInformation uni in uniCast) { DateTime when; Console.WriteLine(" Unicast Address ......................... : {0}", uni.Address); Console.WriteLine(" Prefix Origin ........................ : {0}", uni.PrefixOrigin); Console.WriteLine(" Suffix Origin ........................ : {0}", uni.SuffixOrigin); Console.WriteLine(" Duplicate Address Detection .......... : {0}", uni.DuplicateAddressDetectionState); // Format the lifetimes as Sunday, February 16, 2003 11:33:44 PM // if en-us is the current culture. // Calculate the date and time at the end of the lifetimes. when = DateTime.UtcNow + TimeSpan.FromSeconds(uni.AddressValidLifetime); when = when.ToLocalTime(); Console.WriteLine(" Valid Life Time ...................... : {0}", when.ToString(lifeTimeFormat,System.Globalization.CultureInfo.CurrentCulture) ); when = DateTime.UtcNow + TimeSpan.FromSeconds(uni.AddressPreferredLifetime); when = when.ToLocalTime(); Console.WriteLine(" Preferred life time .................. : {0}", when.ToString(lifeTimeFormat,System.Globalization.CultureInfo.CurrentCulture) ); when = DateTime.UtcNow + TimeSpan.FromSeconds(uni.DhcpLeaseLifetime); when = when.ToLocalTime(); Console.WriteLine(" DHCP Leased Life Time ................ : {0}", when.ToString(lifeTimeFormat,System.Globalization.CultureInfo.CurrentCulture) ); } Console.WriteLine(); } }
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.


