Csharp/C Sharp/Network/NetworkInterface

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

NetworkInterface: Description

 
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.");
        }
    }
}


NetworkInterface: GetAllNetworkInterfaces

 
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.");
        }
    }
}


NetworkInterface: GetIPProperties

 
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.");
        }
    }
}


NetworkInterface: GetIPv4Statistics

 
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.");
        }
    }
}


NetworkInterface: GetPhysicalAddress

 
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.");
        }
    }
}


NetworkInterface: Id

 
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.");
        }
    }
}


NetworkInterface: Name

 
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.");
        }
    }
}


NetworkInterface:NetworkAddressChanged event

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


NetworkInterface: NetworkAvailabilityChanged event

 

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


NetworkInterface: NetworkInterfaceType

 
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.");
        }
    }
}


NetworkInterface: OperationalStatus

 
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.");
        }
    }
}


NetworkInterface: Speed

 
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.");
        }
    }
}