NetworkInterface Classe

Définition

Fournit des informations statistiques et de configuration pour une interface réseau.Provides configuration and statistical information for a network interface.

public ref class NetworkInterface abstract
public abstract class NetworkInterface
type NetworkInterface = class
Public MustInherit Class NetworkInterface
Héritage
NetworkInterface

Exemples

L’exemple de code suivant affiche des informations sur les interfaces.The following code example displays information about interfaces.

void ShowNetworkInterfaces()
{
   IPGlobalProperties ^ computerProperties = IPGlobalProperties::GetIPGlobalProperties();
   array<NetworkInterface^>^nics = NetworkInterface::GetAllNetworkInterfaces();
   Console::WriteLine( "Interface information for {0}.{1}     ", computerProperties->HostName, computerProperties->DomainName );
   if ( nics == nullptr || nics->Length < 1 )
   {
      Console::WriteLine( "  No network interfaces found." );
      return;
   }

   Console::WriteLine( "  Number of interfaces .................... : {0}", nics->Length );
   System::Collections::IEnumerator^ myEnum4 = nics->GetEnumerator();
   while ( myEnum4->MoveNext() )
   {
      NetworkInterface ^ adapter = safe_cast<NetworkInterface ^>(myEnum4->Current);
      IPInterfaceProperties ^ properties = adapter->GetIPProperties();
      Console::WriteLine();
      Console::WriteLine( adapter->Description );
      Console::WriteLine( String::Empty->PadLeft( adapter->Description->Length, '=' ) );
      Console::WriteLine( "  Interface type .......................... : {0}",
         adapter->NetworkInterfaceType );
      Console::WriteLine( "  Physical Address ........................ : {0}",
         adapter->GetPhysicalAddress() );
      Console::WriteLine( "  Operational status ...................... : {0}",
         adapter->OperationalStatus );
      String^ versions = "";

      // Create a display string for the supported IP versions.
      if ( adapter->Supports( NetworkInterfaceComponent::IPv4 ) )
      {
         versions = "IPv4";
      }
      if ( adapter->Supports( NetworkInterfaceComponent::IPv6 ) )
      {
         if ( versions->Length > 0 )
         {
            versions = String::Concat( versions, " " );
         }
         versions = String::Concat( versions, "IPv6" );
      }
      Console::WriteLine( "  IP version .............................. : {0}",
         versions );
      ShowIPAddresses( properties );

      // The following information is not useful for loopback adapters.
      if ( adapter->NetworkInterfaceType == NetworkInterfaceType::Loopback )
      {
         continue;
      }
      Console::WriteLine( "  DNS suffix .............................. : {0}",
         properties->DnsSuffix );
      String^ label;

      if ( adapter->Supports( NetworkInterfaceComponent::IPv4 ) )
      {
         IPv4InterfaceProperties ^ ipv4 = properties->GetIPv4Properties();
         Console::WriteLine( "  MTU...................................... : {0}",
            ipv4->Mtu );
         if ( ipv4->UsesWins )
         {
            IPAddressCollection ^ winsServers = properties->WinsServersAddresses;
            if ( winsServers->Count > 0 )
            {
               label = "  WINS Servers ............................ :";
               ShowIPAddresses( label, winsServers );
            }
         }
      }
      Console::WriteLine( "  DNS enabled ............................. : {0}",
         properties->IsDnsEnabled );
      Console::WriteLine( "  Dynamically configured DNS .............. : {0}",
         properties->IsDynamicDnsEnabled );
      Console::WriteLine( "  Receive Only ............................ : {0}",
         adapter->IsReceiveOnly );
      Console::WriteLine( "  Multicast ............................... : {0}",
         adapter->SupportsMulticast );
      ShowInterfaceStatistics( adapter );
      Console::WriteLine();
   }
}
public static void ShowNetworkInterfaces()
{
    IPGlobalProperties computerProperties = IPGlobalProperties.GetIPGlobalProperties();
    NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
    Console.WriteLine("Interface information for {0}.{1}     ",
            computerProperties.HostName, computerProperties.DomainName);
    if (nics == null || nics.Length < 1)
    {
        Console.WriteLine("  No network interfaces found.");
        return;
    }
                     
    Console.WriteLine("  Number of interfaces .................... : {0}", nics.Length);
    foreach (NetworkInterface adapter in nics)
    {
        IPInterfaceProperties properties = adapter.GetIPProperties();
        Console.WriteLine();
        Console.WriteLine(adapter.Description);
        Console.WriteLine(String.Empty.PadLeft(adapter.Description.Length,'='));
        Console.WriteLine("  Interface type .......................... : {0}", adapter.NetworkInterfaceType);
        Console.WriteLine("  Physical Address ........................ : {0}", 
                   adapter.GetPhysicalAddress().ToString());
        Console.WriteLine("  Operational status ...................... : {0}", 
            adapter.OperationalStatus);
        string versions ="";

        // Create a display string for the supported IP versions.
        if (adapter.Supports(NetworkInterfaceComponent.IPv4))
        {
             versions = "IPv4";
         }
        if (adapter.Supports(NetworkInterfaceComponent.IPv6))
        {
            if (versions.Length > 0)
            {
                versions += " ";
             }
            versions += "IPv6";
        }
        Console.WriteLine("  IP version .............................. : {0}", versions);
        ShowIPAddresses(properties);
        
        // The following information is not useful for loopback adapters.
        if (adapter.NetworkInterfaceType == NetworkInterfaceType.Loopback)
        {
            continue;
        }
        Console.WriteLine("  DNS suffix .............................. : {0}", 
            properties.DnsSuffix);
        
        string label;
        if (adapter.Supports(NetworkInterfaceComponent.IPv4))
        {
            IPv4InterfaceProperties ipv4 = properties.GetIPv4Properties();
            Console.WriteLine("  MTU...................................... : {0}", ipv4.Mtu);
            if (ipv4.UsesWins)
            {
                
                IPAddressCollection winsServers = properties.WinsServersAddresses;
                if (winsServers.Count > 0)
                {
                    label = "  WINS Servers ............................ :";
                    ShowIPAddresses(label, winsServers);
                }
            }
        }
                 
        Console.WriteLine("  DNS enabled ............................. : {0}", 
            properties.IsDnsEnabled);
        Console.WriteLine("  Dynamically configured DNS .............. : {0}", 
            properties.IsDynamicDnsEnabled);
        Console.WriteLine("  Receive Only ............................ : {0}", 
            adapter.IsReceiveOnly);
        Console.WriteLine("  Multicast ............................... : {0}", 
            adapter.SupportsMulticast);
        ShowInterfaceStatistics(adapter);
        
        Console.WriteLine();
    }

Remarques

Cette classe encapsule des données pour les interfaces réseau, également appelées adaptateurs, sur l’ordinateur local.This class encapsulates data for network interfaces, also known as adapters, on the local computer. Vous ne créez pas d’instances de cette classe. la méthode GetAllNetworkInterfaces retourne un tableau qui contient une instance de cette classe pour chaque interface réseau sur l’ordinateur local.You do not create instances of this class; the GetAllNetworkInterfaces method returns an array that contains one instance of this class for each network interface on the local computer.

Constructeurs

NetworkInterface()

Initialise une nouvelle instance de la classe NetworkInterface.Initializes a new instance of the NetworkInterface class.

Propriétés

Description

Obtient la description de l'interface.Gets the description of the interface.

Id

Obtient l'identificateur de la carte réseau.Gets the identifier of the network adapter.

IPv6LoopbackInterfaceIndex

Obtient l'index de l'interface de bouclage IPv6.Gets the index of the IPv6 loopback interface.

IsReceiveOnly

Obtient une valeur Boolean qui indique si l'interface réseau est configurée pour recevoir uniquement des paquets de données.Gets a Boolean value that indicates whether the network interface is set to only receive data packets.

LoopbackInterfaceIndex

Obtient l'index de l'interface de bouclage IPv4.Gets the index of the IPv4 loopback interface.

Name

Obtient le nom de la carte réseau.Gets the name of the network adapter.

NetworkInterfaceType

Obtient le type d'interface.Gets the interface type.

OperationalStatus

Obtient l'état opérationnel actuel de la connexion réseau.Gets the current operational state of the network connection.

Speed

Obtient la vitesse de l'interface réseau.Gets the speed of the network interface.

SupportsMulticast

Obtient une valeur Boolean qui indique si l'interface réseau est autorisée à recevoir des paquets de multidiffusion.Gets a Boolean value that indicates whether the network interface is enabled to receive multicast packets.

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.Determines whether the specified object is equal to the current object.

(Hérité de Object)
GetAllNetworkInterfaces()

Retourne des objets qui décrivent les interfaces réseau de l'ordinateur local.Returns objects that describe the network interfaces on the local computer.

GetHashCode()

Sert de fonction de hachage par défaut.Serves as the default hash function.

(Hérité de Object)
GetIPProperties()

Retourne un objet qui décrit la configuration de cette interface réseau.Returns an object that describes the configuration of this network interface.

GetIPStatistics()

Récupère les statistiques IP pour cette instance de NetworkInterface.Gets the IP statistics for this NetworkInterface instance.

GetIPv4Statistics()

Récupère les statistiques IPv4 pour cette instance de NetworkInterface.Gets the IPv4 statistics for this NetworkInterface instance.

GetIsNetworkAvailable()

Indique si une connexion réseau est disponible.Indicates whether any network connection is available.

GetPhysicalAddress()

Retourne l'adresse MAC (Media Access Control) ou physique de cet adaptateur.Returns the Media Access Control (MAC) or physical address for this adapter.

GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.Creates a shallow copy of the current Object.

(Hérité de Object)
Supports(NetworkInterfaceComponent)

Obtient une valeur Boolean qui indique si l'interface prend en charge le protocole spécifié.Gets a Boolean value that indicates whether the interface supports the specified protocol.

ToString()

Retourne une chaîne qui représente l'objet actif.Returns a string that represents the current object.

(Hérité de Object)

S’applique à