Адресация в интернете.
IP-адрес – это уникальный числовой адрес, однозначно
идентифицирующий узел, группу узлов или сеть. IP-адрес имеет длину 4 байта и
обычно записывается в виде четырех чисел (так называемых «октетов»), разделенных
точками – W.X.Y.Z , каждое из которых может принимать значения в диапазоне от 0
до 255, например, 213.128.193.154.
Классы IP-адресов
Существует
5 классов IP-адресов – A, B, C, D, E. Принадлежность IP-адреса к тому или иному
классу определяется значением первого октета (W). Ниже показано соответствие
значений первого октета и классов адресов.
Класс IP-адреса |
A |
B |
C |
D |
E |
Диапазон первого октета |
1-126 |
128-191 |
192-223 |
224-239 |
240-247 |
IP-адреса
первых трех классов предназначены для адресации отдельных узлов и отдельных
сетей. Такие адреса состоят из двух частей – номера сети и номера узла. Такая
схема аналогична схеме почтовых индексов – первые три цифры кодируют регион, а
остальные – почтовое отделение внутри региона.
Преимущества
двухуровневой схемы очевидны: она позволяет, во-первых, адресовать целиком
отдельные сети внутри составной сети, что необходимо для обеспечения
маршрутизации, а во-вторых – присваивать узлам номера внутри одной сети независимо
от других сетей. Естественно, что компьютеры, входящие в одну и ту же сеть
должны иметь IP-адреса с одинаковым номером сети.
|
|
|
|
|
|
IP-адреса
разных классов отличаются разрядностью номеров сети и узла, что определяет их возможный
диапазон значений. Следующая таблица отображает основные характеристики
IP-адресов классов A,B и C.
Характеристика |
Класс |
||
A |
B |
C |
|
Номер сети |
W |
W.X |
W.X.Y |
Номер узла |
X.Y.Z |
Y.Z |
Z |
Возможное количество
сетей |
126 |
16 384 |
2 097 151 |
Возможное количество
узлов |
16 777 214 |
65 534 |
254 |
|
Особые адреса |
||
Запись адреса сети в
целом |
W.0.0.0 |
W.X.0.0 |
W.X.Y.0 |
Широковещательный адрес в
сети |
W.255.255.255 |
W.X.255.255 |
W.X.Y.255 |
Например,
IP-адрес 213.128.193.154 является адресом класса C, и принадлежит узлу с
номером 154, расположенному в сети 213.128.193.0.
Схема
адресации, определяемая классами A, B, и C, позволяет пересылать данные либо
отдельному узлу, либо всем компьютерам отдельной сети (широковещательная
рассылка). Однако существует сетевое программное обеспечение, которому
требуется рассылать данные определенной группе узлов, необязательно входящих в
одну сеть. Для того, чтобы программы такого рода могли успешно функционировать,
система адресации должна предусматривать так называемые групповые адреса. Для
этих целей используются IP-адреса класса D.
Диапазон
адресов класса E зарезервирован и в настоящее время не используется.
Диапазоны:
Класс |
С |
По |
A |
0.0.0.0 |
127.255.255.255 |
B |
128.0.0.0 |
191.255.255.255 |
C |
192.0.0.0 |
223.255.255.255 |
D |
224.0.0.0 |
239.255.255.255 |
Двоичная форма
записи IP-адресов
Наряду
с традиционной десятичной формой записи IP-адресов, может использоваться и двоичная
форма, отражающая непосредственно способ представления адреса в памяти
компьютера. Поскольку IP-адрес имеет длину 4 байта, то в двоичной форме он
представляется как 32-разрядное двоичное число (т.е. последовательность из 32
нулей и единиц). Например, адрес 213.128.193.154 в двоичной форме имеет вид
11010101 1000000 11000001 10011010. Используя двоичную форму записи IP-адреса,
легко определить схемы классов IP адресов:
|
|
|
|
|
|
|
|
|
|
|
Особые
IP-адреса
Протокол
IP предполагает наличие адресов, которые трактуются особым образом. К ним
относятся следующие:
1.
Адреса, значение первого октета которых равно 127. Пакеты, направленные по такому
адресу, реально не передаются в сеть, а обрабатываются программным обеспечением
узла-отправителя. Таким образом, узел может направить данные самому себе. Этот
подход очень удобен для тестирования сетевого программного обеспечения в
условиях, когда нет возможности подключиться к сети.
2. Адрес 255.255.255.255. Пакет, в назначении которого стоит адрес
255.255.255.255, должен рассылаться всем узлам сети, в которой находится
источник. Такой вид рассылки называется ограниченным широковещанием. В двоичной
форме этот адрес имеет вид 11111111 11111111 11111111 11111111.
3. Адрес 0.0.0.0. Он используется в служебных целях и трактуется как адрес того
узла, который сгенерировал пакет. Двоичное представление этого адреса 00000000
00000000 00000000 00000000
IP-адрес является массивом битов. Принцип
IP-адресации — выделение множества (диапазона, блока, подсети) IP-адресов, в
котором некоторые битовые разряды имеют фиксированные значения, а остальные
разряды пробегают все возможные значения. Блок адресов задаётся указанием
начального адреса и маски подсети. Бесклассовая адресация основывается на переменной длине маски подсети (англ. Variable Length Subnet Mask— VLSM), в то
время, как в классовой (традиционной) адресации длина маски строго фиксирована
0, 1, 2 или 3 установленными октетами.
Вот пример записи IP-адреса с
применением бесклассовой адресации: 192.0.2.32/27.
Число 27 означает количество единиц в маске:11111111.11111111.11111111.11100000 = 255.255.255.224. Другие примеры:
множество всех адресов обозначается как /0, а конкретный адрес IPv4 — как /32.
Для упрощения таблиц
маршрутизации можно объединять блоки адресов, указывая один большой блок вместо
ряда мелких. Например, 4 смежные сети класса C (4 × 255
адресов, маска 255.255.255.0 или /24) могут быть объединены, с точки зрения
далёких от них маршрутизаторов, в одну сеть /22. И напротив, сети можно
разбивать на более мелкие подсети, и так далее.
В Интернете используются только маски вида «n единиц, дальше все нули». Для таких (и
только для таких) масок получающиеся множества IP-адресов будут смежными.
Доменная
Система Имен. Преобразование имен в адреса.
Доменное
имя содержит, как минимум, две части (обычно называются метками),
разделённые точкой. Самая правая метка является доменом верхнего уровня (например, для адреса ru.wikipedia.org домен верхнего уровня — org). Каждая следующая метка справа налево является поддоменом (например, wikipedia.org — поддомен домена org, аru.wikipedia.org —
домена wikipedia.org). Теоретически такое деление может
достигать глубины 127 уровней, а каждая метка может содержать до 63 символов,
пока общая длина вместе с точками не достигнет 254 символов. Но на практике регистраторы
доменных имён используют более строгие
ограничения. Система DNS содержит иерархию серверов DNS. Каждый домен или
поддомен поддерживается как минимум одним авторитетным сервером DNS (от англ. authoritative —
авторитетный, заслуживающий доверия; в Рунете применительно к DNS и
серверам имен часто употребляют и другие варианты перевода: авторизированный,
авторитативный), на котором расположена информация о домене. Иерархия серверов
DNS совпадает с иерархией доменов. Рассмотрим на примере работу всей системы.
Предположим, мы набрали в браузере адрес ru.wikipedia.org. Браузер знает только IP-адрес сервера DNS, обычно это
один из серверов
интернет-провайдера (DNS по умолчанию в
настройках соединения). Браузер спрашивает у сервера DNS: «какой IP-адрес у ru.wikipedia.org?». Сервер DNS обращается к корневому
серверу —
например, 198.41.0.4. Этот сервер сообщает — «У меня нет информации о
данном адресе, но я знаю, что 204.74.112.1 поддерживает доменную зону org.» Тогда сервер DNS направляет свой запрос к
204.74.112.1, но тот отвечает «У меня нет информации о данном сервере, но я
знаю, что 207.142.131.234 поддерживает доменную зону wikipedia.org.» Наконец, тот же запрос отправляется к
третьему DNS-серверу (который является авторитетным сервером для зоны
wikipedia.org), и получает ответ — IP-адрес, который и возвращает
клиенту — браузеру. В данном случае при разрешении имени, то есть в
процессе поиска IP по имени, между хостом и серверами передавались запросы двух
типов:
браузер отправил известному ему
DNS-серверу т. н. рекурсивный
запрос —
в ответ на такой тип запроса сервер обязан вернуть «готовый результат», то есть
IP-адрес, либо сообщить об ошибке
Замечание: встроенные dns-клиенты
браузеров умеют давать только такие типы запросов, иначе их код пришлось бы
неоправданно усложнять и значительно возрос бы трафик у конечного пользователя,
а сам DNS-сервер, получивший запрос от клиента, выполнял последовательно итеративные
запросы,
на которые получал от других DNS-серверов уточняющие ответы, пока не получил
авторитетный ответ от сервера, ответственного за запрошенную зону
Замечание: сервер провайдера, будучи
лентяем, мог бы передать рекурсивный запрос следующему DNS-серверу и дождаться
готового ответа, но в данном примере он добросовестно выполнил свою задачу.
Имя хоста и IP-адрес не тождественны — хост с одним
IP-адресом может иметь множество имён, что позволяет поддерживать на одном
компьютере множество
веб-сайтов (это называется виртуальный
хостинг).
Обратное тоже справедливо — одному имени может быть сопоставлено множество
хостов: это позволяет создавать балансировку
нагрузки.
Запрос на определение имени обычно не идёт дальше кэша DNS,
который помнит (ограниченное время) ответы на запросы, проходившие через него
ранее. Организации или провайдеры могут по своему
усмотрению организовывать кэш DNS. Вместе с ответом приходит информация о том,
сколько времени следует хранить эту запись в кэше. Для повышения устойчивости
системы используется множество серверов, содержащих идентичную информацию.
Существует 13 корневых серверов, расположенных по всему миру и привязанных к
своему региону, их адреса никогда не меняются, а информация о них есть в любой операционной системе. Протокол DNS использует для работы TCP- или UDP-порт 53 для ответов на
запросы. Традиционно запросы и ответы отправляются в виде одной UDP датаграммы.
TCP используется в случае, если ответ больше 512 байт, или в случае AXFR-запроса.
Обратный DNS-запрос
DNS используется в первую очередь
для преобразования символьных имён в IP-адреса, но он также может выполнять
обратный процесс. Для этого используются уже имеющиеся средства DNS. Дело в
том, что с записью DNS могут быть сопоставлены различные данные, в том числе и
какое-либо символьное имя. Существует специальный домен in-addr.arpa, записи в котором используются для
преобразования IP-адресов в символьные имена. Например, для получения DNS-имени
для адреса 11.22.33.44 можно запросить у DNS-сервера запись 44.33.22.11.in-addr.arpa, и тот вернёт соответствующее
символьное имя. Обратный порядок записи частей IP-адреса объясняется тем, что в
IP-адресах старшие биты расположены в начале, а в символьных DNS-именах старшие
(находящиеся ближе к корню) части расположены в конце.
Универсальный указатель
ресурса URL. Доступ к ресурсам Интернета. Web-узлы,
страницы и ссылки. Адреса электронной почты.
IP-адрес или
соответствующее ему доменное имя позволяют однозначно идентифицировать
компьютер в сети Internet, но дело в том, что на компьютере может присутствовать
множество различной информации в различных форматах, например, в виде файлов,
электронных сообщений, страниц и т.п. Для того, чтобы можно было безошибочно
получать нужную информацию и в нужном формате используется строка символов,
которую называют универсальный указатель ресурса или URL (Universal
Resource Locator). Эта строка однозначно идентифицирует любой ресурс в сети
Internet. Именно такая строка отображается в поле «Адрес» обозревателя Internet
Explorer, когда мы «гуляем» по Internet (см. далее).
Рис. 1.7. Структура URL - универсального указателя ресурса.
Универсальный указатель ресурса состоит из:
Примечание: если
имя файла не указано, то используется имя файла по умолчаниюindex.htm (index.html),
либо default.htm (default.html).
Поскольку весь URL набирать с клавиатуры достаточно долго и
неудобно, то можно вводить только доменное имя (www в
некоторых случаях также можно опускать), а все остальные его части, такие как
протокол, путь и имя файла будут подставлены по умолчанию.
Общепринятые
схемы (протоколы) URL включают:
ftp
— Протокол передачи файлов FTP
http
— Протокол передачи гипертекста HTTP
https
— Специальная реализация протокола HTTP, использующая
шифрование (как правило, SSL или TLS)
gopher
— Протокол Gopher
mailto
— Адрес электронной почты
news
— Новости Usenet
nntp
— Новости Usenet через протокол NNTP
irc — Протокол IRC
prospero — Служба
каталогов Prospero Directory Service
telnet
— Ссылка на интерактивную сессию Telnet
wais
— База данных системы WAIS
xmpp
— Протокол XMPP (часть Jabber)
file
— Имя локального файла
data
— Непосредственные данные (Data: URL)
Web-узлы. Страницы и ссылки
Web-узлы (сайт) - это наборы
связанных Web-страниц, размещенных в одном домене. Узлы обычно посвящаются
какой-то определенной теме, например, обмену мнениями по поводу проблем
создания Web-страниц, различным видам развлечений и
т. д. Web-узлы могут также включать связи с другими узлами. Все это и
приводит к созданию информационной всемирной "паутины".
Организация
Первый документ Web-узла называется
начальной (или основной) страницей (home page). Начальная страница содержит
ссылки на все остальные документы второго уровня. Так как связи между
страницами могут быть очень сложными Web-дизайнеры пользуются картами узла,
чтобы разобраться во всех возможных путях следования.
Web-узел с большим количеством
страниц должен быть организован более сложно. Связи между страницами разных
уровней повторяются, при этом создается карта узла, которая выглядит примерно
как генеалогическое дерево. Web -узел, содержащий более 10 документов, может
быть организован по трем уровням.
В таком случае каждая страница второго уровня является дочерней по отношению к
начальной странице и родительской для страниц третьего уровня, которые с ней
связаны. Этот принцип можно повторять для четырех, пяти или более уровней, в
зависимости от числа документов на узле.
Web -страницы связаны друг с другом
с помощью гиперссылок, позволя- ющих пользователям самим выбирать маршрут
движения по узлу. Поэтому системы перемещения являются определяющими при
разработке узла, удобного для пользователя. Для перемещения могут использоваться
текстовые или графические ссылки. Среди распространенных графических объектов
для организации ссылок можно назвать значки, кнопки и строки меню.
Детально вопрос создания ссылок
рассмотрен в документе Создание ссылок
Задача создания ясной системы
перемещения ложится на Web-дизайнеров. С помощью карты узла дизайнер создает
эскиз всех областей, доступ к которым должен предоставляться пользователю из
любой страницы на Web-узле. Этими областями обычно являются начальная страница,
страницы второго уровня, средство поиска и электронная почта.