Csharp/C Sharp/Network/NetworkInterface

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

NetworkInterface: Description

<source lang="csharp"> using System; using System.Net.NetworkInformation; class MainClass {

   static void Main() {
       if (NetworkInterface.GetIsNetworkAvailable()) {
           NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
           foreach (NetworkInterface ni in interfaces) {
               Console.WriteLine("     Description: {0}", ni.Description);
           }
       } else {
           Console.WriteLine("No network available.");
       }
   }

}

</source>


NetworkInterface: GetAllNetworkInterfaces

<source lang="csharp"> using System; using System.Net.NetworkInformation; class MainClass {

   static void Main() {
       if (NetworkInterface.GetIsNetworkAvailable()) {
           NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
           foreach (NetworkInterface ni in interfaces) {
               Console.WriteLine("Interface Name: {0}", ni.Name);
           }
       } else {
           Console.WriteLine("No network available.");
       }
   }

}

</source>


NetworkInterface: GetIPProperties

<source lang="csharp"> using System; using System.Net.NetworkInformation; class MainClass {

   static void Main() {
       if (NetworkInterface.GetIsNetworkAvailable()) {
           NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
           foreach (NetworkInterface ni in interfaces) {
               foreach (UnicastIPAddressInformation addr in ni.GetIPProperties().UnicastAddresses) {
                   Console.WriteLine("         - {0} (lease expires {1})", addr.Address, DateTime.Now + new TimeSpan(0, 0, (int)addr.DhcpLeaseLifetime));
               }
           }
       } else {
           Console.WriteLine("No network available.");
       }
   }

}

</source>


NetworkInterface: GetIPv4Statistics

<source lang="csharp"> using System; using System.Net.NetworkInformation; class MainClass {

   static void Main() {
       if (NetworkInterface.GetIsNetworkAvailable()) {
           NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
           foreach (NetworkInterface ni in interfaces) {
               Console.WriteLine("    Bytes Sent: {0}", ni.GetIPv4Statistics().BytesSent);
           }
       } else {
           Console.WriteLine("No network available.");
       }
   }

}

</source>


NetworkInterface: GetPhysicalAddress

<source lang="csharp"> using System; using System.Net.NetworkInformation; class MainClass {

   static void Main() {
       if (NetworkInterface.GetIsNetworkAvailable()) {
           NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
           foreach (NetworkInterface ni in interfaces) {
               Console.WriteLine("     Physical Address: {0}", ni.GetPhysicalAddress().ToString());
           }
       } else {
           Console.WriteLine("No network available.");
       }
   }

}

</source>


NetworkInterface: Id

<source lang="csharp"> using System; using System.Net.NetworkInformation; class MainClass {

   static void Main() {
       if (NetworkInterface.GetIsNetworkAvailable()) {
           NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
           foreach (NetworkInterface ni in interfaces) {
               Console.WriteLine("    ID: {0}", ni.Id);
           }
       } else {
           Console.WriteLine("No network available.");
       }
   }

}

</source>


NetworkInterface: Name

<source lang="csharp"> using System; using System.Net.NetworkInformation; class MainClass {

   static void Main() {
       if (NetworkInterface.GetIsNetworkAvailable()) {
           NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
           foreach (NetworkInterface ni in interfaces) {
               Console.WriteLine("Interface Name: {0}", ni.Name);
           }
       } else {
           Console.WriteLine("No network available.");
       }
   }

}

</source>


NetworkInterface:NetworkAddressChanged event

<source lang="csharp"> using System; using System.Net.NetworkInformation; class MainClass {

   private static void NetworkAddressChanged(object sender, EventArgs e) {
       Console.WriteLine("Current IP Addresses:");
       foreach (NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces()) {
           foreach (UnicastIPAddressInformation addr in ni.GetIPProperties().UnicastAddresses) {
               Console.WriteLine("    - {0} (lease expires {1})", addr.Address, DateTime.Now + new TimeSpan(0, 0, (int)addr.DhcpLeaseLifetime));
           }
       }
   }
   static void Main(string[] args) {
       NetworkChange.NetworkAddressChanged += NetworkAddressChanged;
   }

}

</source>


NetworkInterface: NetworkAvailabilityChanged event

<source lang="csharp">

using System; using System.Net.NetworkInformation; class MainClass {

   private static void NetworkAvailabilityChanged(object sender, NetworkAvailabilityEventArgs e) {
       if (e.IsAvailable) {
           Console.WriteLine("Network Available");
       } else {
           Console.WriteLine("Network Unavailable");
       }
   }
   static void Main(string[] args) {
       NetworkChange.NetworkAvailabilityChanged += NetworkAvailabilityChanged;
   }

}

</source>


NetworkInterface: NetworkInterfaceType

<source lang="csharp"> using System; using System.Net.NetworkInformation; class MainClass {

   static void Main() {
       if (NetworkInterface.GetIsNetworkAvailable()) {
           NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
           foreach (NetworkInterface ni in interfaces) {
               Console.WriteLine("    Type: {0}", ni.NetworkInterfaceType);
           }
       } else {
           Console.WriteLine("No network available.");
       }
   }

}

</source>


NetworkInterface: OperationalStatus

<source lang="csharp"> using System; using System.Net.NetworkInformation; class MainClass {

   static void Main() {
       if (NetworkInterface.GetIsNetworkAvailable()) {
           NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
           foreach (NetworkInterface ni in interfaces) {
               Console.WriteLine("    Status: {0}", ni.OperationalStatus);
           }
       } else {
           Console.WriteLine("No network available.");
       }
   }

}

</source>


NetworkInterface: Speed

<source lang="csharp"> using System; using System.Net.NetworkInformation; class MainClass {

   static void Main() {
       if (NetworkInterface.GetIsNetworkAvailable()) {
           NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
           foreach (NetworkInterface ni in interfaces) {
               Console.WriteLine("     Speed: {0}", ni.Speed);
           }
       } else {
           Console.WriteLine("No network available.");
       }
   }

}

</source>