NetworkInterface Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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. |