Читайте также:
|
|
Для получения адресов локального узла можно воспользоваться классами.NET Framework.
П ространство имен System.Net.NetworkInformation содержит классы и методы, позволяющие получить все виды адресов локального узла.
Например, свойство HostName класса IPGlobalProperties возвращает символьное имя локального компьютера.
Ниже приведен пример получения символьного имени узла, его доменного имени и всех физических адресов. (Пример взят из MSDN, язык С#)
public static void ShowNetworkInterfaces()
{
IPGlobalProperties computerProperties=IPGlobalProperties.GetIPGlobalProperties();
Console.WriteLine("Interface information for {0}.{1} ",
computerProperties.HostName, computerProperties.DomainName);
NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
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.Write(" Physical address............: ");
PhysicalAddress address = adapter.GetPhysicalAddress();
byte[] bytes = address.GetAddressBytes();
for(int i = 0; i< bytes.Length; i++)
{
// Display the physical address in hexadecimal.
Console.Write("{0}", bytes[i].ToString("X2"));
// Insert a hyphen after each byte, unless we are at the end of the
// address.
if (i!= bytes.Length -1)
{
Console.Write("-");
}
}
Console.WriteLine();
}
}
Класс Dns пространства имен System.Net также содержит методы, позволяющие получить имя локального узла и его IP-адреса.
Метод GetHostName() возвращает строку, содержащую имя локального компьютера.
Метод GetHostAddresses запрашивает у DNS-сервера IP-адреса, связанные с указанным именем узла. Если в качестве имени узла передается пустая строка, этот метод возвращает IPv4-адреса локального узла.
В следующем примере кода из MSDN (язык С#) показано использование метода GetHostAddressesдля разрешения IP-адреса в массив типа IPAddress.
string hostname
IPAddress[] ips;
ips = Dns.GetHostAddresses(hostname);
Console.WriteLine("GetHostAddresses({0}) returns:", hostname);
foreach (IPAddress ip in ips)
{
Console.WriteLine(" {0}", ip);
}
Работа с URI адресами.
Дата добавления: 2015-07-08; просмотров: 156 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Получение адресов локального узла с помощью функций API Windows. | | | Свойства класса Uri. |