Экспорт (0) Печать
Развернуть все
Данная статья переведена автоматически. Наведите указатель мыши на предложения статьи, чтобы просмотреть исходный текст. Дополнительные сведения.
Перевод
Текст оригинала

NetworkInterface - класс

Предоставляет конфигурацию и статистику сетевого интерфейса.

System.Object
  System.Net.NetworkInformation.NetworkInterface

Пространство имен:  System.Net.NetworkInformation
Сборка:  System (в System.dll)

public abstract class NetworkInterface

Тип NetworkInterface предоставляет следующие члены.

  ИмяОписание
Защищенный методNetworkInterfaceИнициализирует новый экземпляр класса NetworkInterface.
В начало страницы

  ИмяОписание
Открытое свойствоDescriptionВозвращает описание интерфейса.
Открытое свойствоIdВозвращает идентификатор сетевого адаптера.
Открытое свойствоСтатический членIPv6LoopbackInterfaceIndexПолучает индекс интерфейса замыкания на себя IPv6.
Открытое свойствоIsReceiveOnlyВозвращает значение типа Boolean, указывающее, настроен ли сетевой интерфейс только на прием пакетов данных.
Открытое свойствоСтатический членLoopbackInterfaceIndexВозвращает индекс интерфейса замыкания на себя IPv4.
Открытое свойствоNameВозвращает имя сетевого адаптера.
Открытое свойствоNetworkInterfaceTypeВозвращает тип интерфейса.
Открытое свойствоOperationalStatusВозвращает текущее операционное состояние сетевого подключения.
Открытое свойствоSpeedВозвращает скорость сетевого интерфейса.
Открытое свойствоSupportsMulticastВозвращает значение типа Boolean, указывающее, разрешен ли сетевому интерфейсу прием пакетов многоадресной рассылки.
В начало страницы

  ИмяОписание
Открытый методEquals(Object)Определяет, равен ли заданный объект текущему объекту. (Унаследовано от Object.)
Защищенный методFinalize Позволяет объекту попытаться освободить ресурсы и выполнить другие операции по очистке перед тем, как объект будет утилизирован сборщиком мусора. (Унаследовано от Object.)
Открытый методСтатический членGetAllNetworkInterfacesВозвращает объекты, описывающие сетевые интерфейсы локального компьютера.
Открытый методGetHashCode Служит как хэш-функция для определённого типа.
(Унаследовано от Object.)
Открытый методGetIPPropertiesВозвращает объект, описывающий конфигурацию сетевого интерфейса.
Открытый методGetIPStatisticsПолучает статистику IP для этого экземпляра NetworkInterface.
Открытый методGetIPv4StatisticsПолучает статистику IPv4 для этого экземпляра NetworkInterface.
Открытый методСтатический членПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsGetIsNetworkAvailableУказывает, доступно ли сетевое подключение.
Открытый методGetPhysicalAddressВозвращает МАС-адрес (физический адрес) данного адаптера.
Открытый методGetType Возвращает объект класса Type для текущего экземпляра. (Унаследовано от Object.)
Защищенный методMemberwiseClone Создает "плоскую" копию текущего объекта. (Унаследовано от Object.)
Открытый методSupportsВозвращает значение типа Boolean, указывающее, поддерживает ли интерфейс заданный протокол.
Открытый методToString Возвращает строковое представление текущего объекта. (Унаследовано от Object.)
В начало страницы

Этот класс инкапсулирует данные сетевых интерфейсов локального компьютера, также называемых адаптерами. Экземпляры этого класса не создаются пользователем. Метод GetAllNetworkInterfaces возвращает массив, содержащий по одному такому экземпляру для каждого сетевого интерфейса на локальном компьютере.

В следующем пример кода выводятся сведения об интерфейсах.


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


.NET Framework

Поддерживается в версиях: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework (клиентский профиль)

Поддерживается в версиях: 4, 3.5 с пакетом обновления 1 (SP1)

Переносимая библиотека классов

Поддерживается в версии: Переносимая библиотека классов

Приложения .NET для Магазина Windows

Поддерживается в версии: Windows 8

Приложения .NET для Windows Phone

Поддерживается в версиях: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista с пакетом обновления 2 (SP2), Windows Server 2008 (роль основных серверных компонентов не поддерживается), Windows Server 2008 R2 (роль основных серверных компонентов поддерживается в пакете обновления 1 (SP1) или выше; системы на базе Itanium не поддерживаются)

.NET Framework поддерживает не все версии каждой платформы. Поддерживаемые версии перечислены в разделе Требования к системе для .NET Framework.

Любые открытые члены этого типа, объявленные как static (Shared в Visual Basic), являются потокобезопасными. Потокобезопасность членов экземпляров не гарантируется.

Добавления сообщества

ДОБАВИТЬ
Показ:
© 2015 Microsoft