Книга: C# для профессионалов. Том II
Классы .NET для адресов IP
Разделы на этой странице:
Классы .NET для адресов IP
.NET предоставляет ряд классов, которые могут помочь в процессе поиска адресов IP и при получении информации о компьютерах-хостах.
IPAddress
Класс IPAddress
представляет адрес IP, который доступен как свойство Address
и может быть преобразован в десятичный формат с точками с помощью ToString()
. IPAddress
реализует также статический метод Parse()
, эффективно выполняя обратное преобразование в ToString()
— из десятичной строки с точками в (целочисленный) адрес IP.
IPAddress ipAddress = IPAddress.Parse("234.56.78.9");
предоставляет также ряд константных статических полей, которые возвращают известные специальные адреса IP, имеющие специальные значения.
int address = ipAddress.Address; // address будет присвоено 37105130
string ipString = ipAddress.ToString(); // ipString будет присвоен
// текст "234.45.54.2"
IPAddress
//следующая строка задает обратную петлю как "127.0.0.1"
// адрес обратной петли указывает локальный хост
string loopback = IPAddress.Loopback.ToString();
// следующая строка задает адрес широковещания как "255.255.255.255"
// адрес широковещания используется для отправки сообщения
// всем машинам в локальной сети
String broadcast = IPAddress.Broadcast.ToString();
IPHostEntry
Класс IPHostEntry
инкапсулирует информацию, связанную с определенным хостом (компьютером). Он делает доступным имя хоста с помощью свойства HostName
(которое возвращает строку) и все адреса IP с помощью свойства AddressList
, которое возвращает массив объектов IPAddress
. Класс IPHostEntry
будет показан в действии в примере DNSResolver
ниже.
DNS
Класс DNS
является классом, который может общаться с используемым по умолчанию сервером DNS, чтобы извлечь адреса IP. Двумя важными (статическими) методами здесь являются Resolve()
, использующий сервер DNS для получения данных хоста с заданным именем хоста, и GetHostByAddress()
, который также посылает назад эти данные, но в этот раз с помощью адреса. Оба метода возвращают объект IPHostEntry
.
HostEntry wroxHost = Dns.Resolve("www.microsoft.com");
HostEntry wroxHostCopy = Dns.GetHostByAddress("234.234.234.234");
В этом коде оба объекта HostEntry
будут содержать данные серверов Microsoft.com.
Класс Dns
отличается от классов IPAddress
и IPHostEntry
тем, что инкапсулирует возможность реально общаться с серверами для получения информации. Классы IPAddress
и IPHostEntry
, напротив, мало чем отличаются от структур данных, которые имеют подходящие свойства, позволяющие получить доступ к содержащимся в них данным.
- Улучшенный протокол локальных соединений (XNET)
- Chapter 16. Commercial products based on Linux, iptables and netfilter
- 9.1. Классы и прототипы
- NETMAP target
- Internet Service Providers who use assigned IP addresses
- Классы сертификатов
- Статические классы
- Специфика .NET Compact Framework: ADO.NET
- Формы Web ASP.NET
- При запуске Internet Explorer загружается какая-то непонятная страница. Как ее отключить?
- В ходе экспериментов отключил Internet Explorer, теперь не могу его включить
- Почему во время просмотра сайтов в Internet Explorer при прокрутке колесиком мыши страницу как бы листает волнами, а не ...