NetworkInterface Klass

Definition

Tillhandahåller konfigurations- och statistikinformation för ett nätverksgränssnitt.

public ref class NetworkInterface abstract sealed
public ref class NetworkInterface abstract
public static class NetworkInterface
public abstract class NetworkInterface
type NetworkInterface = class
Public Class NetworkInterface
Public MustInherit Class NetworkInterface
Arv
NetworkInterface

Exempel

I följande kodexempel visas information om gränssnitt.

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();
    }
}

Kommentarer

Den här klassen kapslar in data för nätverksgränssnitt, även kallade kort, på den lokala datorn. Du skapar inte instanser av den här klassen. metoden GetAllNetworkInterfaces returnerar en matris som innehåller en instans av den här klassen för varje nätverksgränssnitt på den lokala datorn.

Konstruktorer

Name Description
NetworkInterface()

Initierar en ny instans av NetworkInterface klassen.

Egenskaper

Name Description
Description

Hämtar beskrivningen av gränssnittet.

Id

Hämtar nätverkskortets identifierare.

IPv6LoopbackInterfaceIndex

Hämtar indexet för IPv6-loopback-gränssnittet.

IsReceiveOnly

Hämtar ett Boolean värde som anger om nätverksgränssnittet är inställt på att endast ta emot datapaket.

LoopbackInterfaceIndex

Hämtar indexet för IPv4-loopback-gränssnittet.

Name

Hämtar namnet på nätverkskortet.

NetworkInterfaceType

Hämtar gränssnittstypen.

OperationalStatus

Hämtar nätverksanslutningens aktuella drifttillstånd.

Speed

Hämtar hastigheten för nätverksgränssnittet.

SupportsMulticast

Hämtar ett Boolean värde som anger om nätverksgränssnittet är aktiverat för att ta emot multicast-paket.

Metoder

Name Description
GetAllNetworkInterfaces()

Returnerar objekt som beskriver nätverksgränssnitten på den lokala datorn.

GetIPProperties()

Returnerar ett objekt som beskriver konfigurationen av det här nätverksgränssnittet.

GetIPStatistics()

Hämtar IP-statistiken för den här NetworkInterface instansen.

GetIPv4Statistics()

Hämtar IPv4-statistiken för den här NetworkInterface instansen.

GetIsNetworkAvailable()

Anger om någon nätverksanslutning är tillgänglig.

GetPhysicalAddress()

Returnerar Media Access Control (MAC) eller den fysiska adressen för det här kortet.

Supports(NetworkInterfaceComponent)

Hämtar ett Boolean värde som anger om gränssnittet stöder det angivna protokollet.

Gäller för