Expand Minimize

NetworkInterfaceComponent Enumeration

Specifies the Internet Protocol versions that are supported by a network interface.

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

public enum class NetworkInterfaceComponent

Member nameDescription
IPv4Internet Protocol version 4.
IPv6Internet Protocol version 6.

The values in this enumeration are used by the Supports method to specify the Internet Protocol version supported by a network interface.

The following code example checks whether a network interface supports IPv4.

void DisplayIPv4NetworkInterfaces()
{
   array<NetworkInterface^>^nics = NetworkInterface::GetAllNetworkInterfaces();
   IPGlobalProperties ^ properties = IPGlobalProperties::GetIPGlobalProperties();
   Console::WriteLine( "IPv4 interface information for {0}.{1}", properties->HostName, properties->DomainName );
   System::Collections::IEnumerator^ myEnum23 = nics->GetEnumerator();
   while ( myEnum23->MoveNext() )
   {
      NetworkInterface ^ adapter = safe_cast<NetworkInterface ^>(myEnum23->Current);

      // Only display informatin for interfaces that support IPv4. 
      if ( adapter->Supports( NetworkInterfaceComponent::IPv4 ) == false )
      {
         continue;
      }
      Console::WriteLine();
      Console::WriteLine( adapter->Description );

      // Underline the description.
      Console::WriteLine( String::Empty->PadLeft( adapter->Description->Length, '=' ) );
      IPInterfaceProperties ^ adapterProperties = adapter->GetIPProperties();

      // Try to get the IPv4 interface properties.
      IPv4InterfaceProperties ^ p = adapterProperties->GetIPv4Properties();
      if ( !p )
      {
         Console::WriteLine( "No IPv4 information is available for this interface." );
         continue;
      }

      // Display the IPv4 specific data.
      Console::WriteLine( "  Index ............................. : {0}", 
         p->Index );
      Console::WriteLine( "  MTU ............................... : {0}", 
         p->Mtu );
      Console::WriteLine( "  APIPA active....................... : {0}", 
         p->IsAutomaticPrivateAddressingActive );
      Console::WriteLine( "  APIPA enabled...................... : {0}", 
         p->IsAutomaticPrivateAddressingEnabled );
      Console::WriteLine( "  Forwarding enabled................. : {0}", 
         p->IsForwardingEnabled );
      Console::WriteLine( "  Uses WINS ......................... : {0}", 
         p->UsesWins );
   }
}

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2015 Microsoft