NetworkInterface Třída

Definice

Poskytuje konfiguraci a statistické informace pro síťové rozhraní.

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
Dědičnost
NetworkInterface

Příklady

Následující příklad kódu zobrazí informace o rozhraních.

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

Poznámky

Tato třída zapouzdřuje data pro síťová rozhraní, označovaná také jako adaptéry, v místním počítači. Nevytvoříte instance této třídy; metoda GetAllNetworkInterfaces vrátí pole, které obsahuje jednu instanci této třídy pro každé síťové rozhraní v místním počítači.

Konstruktory

Name Description
NetworkInterface()

Inicializuje novou instanci NetworkInterface třídy.

Vlastnosti

Name Description
Description

Získá popis rozhraní.

Id

Získá identifikátor síťového adaptéru.

IPv6LoopbackInterfaceIndex

Získá index rozhraní IPv6 loopback.

IsReceiveOnly

Boolean Získá hodnotu, která určuje, zda je síťové rozhraní nastaveno pouze přijímat datové pakety.

LoopbackInterfaceIndex

Získá index rozhraní IPv4 loopback.

Name

Získá název síťového adaptéru.

NetworkInterfaceType

Získá typ rozhraní.

OperationalStatus

Získá aktuální provozní stav síťového připojení.

Speed

Získá rychlost síťového rozhraní.

SupportsMulticast

Boolean Získá hodnotu, která označuje, zda síťové rozhraní je povoleno přijímat pakety vícesměrového vysílání.

Metody

Name Description
GetAllNetworkInterfaces()

Vrátí objekty, které popisují síťová rozhraní v místním počítači.

GetIPProperties()

Vrátí objekt, který popisuje konfiguraci tohoto síťového rozhraní.

GetIPStatistics()

Získá statistiku PROTOKOLU IP pro tuto NetworkInterface instanci.

GetIPv4Statistics()

Získá statistiku IPv4 pro tuto NetworkInterface instanci.

GetIsNetworkAvailable()

Určuje, jestli je k dispozici jakékoli síťové připojení.

GetPhysicalAddress()

Vrátí Access Control médií (MAC) nebo fyzickou adresu tohoto adaptéru.

Supports(NetworkInterfaceComponent)

Boolean Získá hodnotu, která určuje, zda rozhraní podporuje zadaný protokol.

Platí pro