Класс |
Диапазон значений первого байта |
Максимально количество сетей |
Максимальное количество узлов в сети |
A |
1-126 |
126 |
16 777 214 |
B |
128-191 |
16 382 |
65 534 |
C |
192-223 |
2 097 150 |
254 |
D |
224-239 |
- |
228 |
E |
240-247 |
- |
227 |
Кроме того, существует набор специально зарезервированных IP-адресов:
адрес состоит только из двоичных нулей – обозначает адрес того узла, который сгенерировал пакет;
адрес типа «Номер сети. Все нули» обозначает данную сеть, т. е. ту же сеть, в которой находится компьютер, сгенерировавший пакет с этим адресом;
если в поле номера сети стоят только нули, то по умолчанию считается, что узел назначения принадлежит той же самой сети, что и узел, который отправил пакет;
адрес состоит только из двоичных единиц – означает, что пакет с таким адресом предназначен всем узлам той же сети, что и источник пакета (при этом такой пакет не выйдет за пределы данной сети, поэтому такая рассылка называется ограниченным широковещанием);
если в поле номера узла назначения стоят только единицы, то пакет, имеющий такой адрес, рассылается всем узлам сети с заданным номером сети; такая рассылка называется широковещательным сообщением (broadcast);
127.0.0.1 – пакет с таким адресом не передается в сеть, а возвращается верхним уровнем стека протоколов, как только что принятый; IP-адреса, первый байт которых имеет значение, равное 127, используются для тестирования программного обеспечения и взаимодействия сетевых процессов в пределах отдельного узла.
Традиционная схема деления IP-адреса на номер сети и номер узла основана на понятии класса, который определяется значениями нескольких первых бит адреса. Именно потому, что первый байт адреса 183.23.44.206 попадает в диапазон 128-191, можно сказать, что этот адрес относится к классу В, а значит, номером сети являются первые два байта, дополненные двумя нулевыми байтами – 185.23.0.0, а номером узла – 0.0.44.206.
Кроме этого, границу между номером сети и номером узла может определить с помощью маски сети – числа, используемого в паре с IP-адресом; двоичная запись маски содержит единицы в тех разрядах, которые должны интерпретироваться как номер сети. Поскольку номер сети является цельной частью адреса, единицы в маске также должны представлять непрерывную последовательность.
Для стандартных классов сетей маски имеют следующие значения:
класс А – 11111111.00000000.00000000.00000000 (255.0.0.0);
класс В – 11111111.11111111.00000000.00000000 (255.255.0.0);
класс С – 11111111.11111111.11111111.00000000 (255.255.255.0).
Для записи масок часто встречается обозначение 185.23.44.206/16 – эта запись говорит о том, что маска для этого адреса содержит 16 единиц, т. е. в указанном IP-адресе под номер сети отведено 16 двоичных разрядов.
В масках количество единиц в последовательности, определяющей границу номера сети, не обязательно должно быть кратным 8.
Определение маски подсети
Для решения проблем увеличения таблиц маршрутизации и дефицита номеров сети разбиваются на подсети. В этом случае IP-адрес будет состоять из номера сети, номера подсети и номера узла.
Рассмотрим пример создания подсетей. Пусть организация получила сеть 193.1.1.0 и ей необходимо сформировать шесть подсетей, при этом наибольшая подсеть должна поддерживать 25 узлов.
Т.к. задана сеть класс С, то маска сети будет равна 255.255.255.0. Найдем маску подсети.
Вначале определим количество бит,
требуемых для номера подсети. Для этого
число подсетей нужно округлить в большую
сторону до ближайшей степени двойки (в
нашем случае
),
т. е. для номера подсети будут использованы
три бита. В этом случае маска подсети
будет 11111111.11111111.11111111.11100000 или в
десятичном виде 255.255.255.224. Оставшиеся
пять бит из последнего байта отводятся
под номер узла, следовательно, в каждой
подсети может быть определено до 32 (
)
адресов узлов. Однако адреса, у которых
все биты равны или нулю, или единице,
являются зарезервированными, так что
общее число адресов узлов в каждой
подсети становится равным 30 (
).
В табл. 4 перечислены все восемь возможных вариантов подсетей для рассматриваемого примера (для большей наглядности биты адреса подсети подчеркнуты).
В табл. 5 перечислены возможные адреса для первой подсети.
Номер подсети |
Адрес подсети |
Двоичное представление адреса |
0 |
193.1.1.0 |
11000001.00000001.0000001.00000000 |
1 |
193.1.1.32 |
11000001.00000001.0000001.00100000 |
2 |
193.1.1.64 |
11000001.00000001.0000001.01000000 |
3 |
193.1.1.96 |
11000001.00000001.0000001.01100000 |
4 |
193.1.1.128 |
11000001.00000001.0000001.10000000 |
5 |
193.1.1.160 |
11000001.00000001.0000001.10100000 |
6 |
193.1.1.192 |
11000001.00000001.0000001.11000000 |
7 |
193.1.1.224 |
11000001.00000001.0000001.11100000 |
Номер узла |
Адрес узла |
Двоичное представление адреса |
1 |
193.1.1.1 |
11000001.00000001.0000001.00000001 |
2 |
193.1.1.2 |
11000001.00000001.0000001.00000010 |
3 |
193.1.1.3 |
11000001.00000001.0000001.00000011 |
4 |
193.1.1.4 |
11000001.00000001.0000001.00000100 |
5 |
193.1.1.5 |
11000001.00000001.0000001.00000101 |
… |
… |
… |
30 |
193.1.1.30 |
11000001.00000001.0000001.00011110 |
Широковещательный адрес |
11000001.00000001.0000001.00011111 |
|
Перечислим диапазоны возможных адресов узлов остальных подсетей:
для второй подсети: 193.1.1.33 – 193.1.1.62, широковещательный адрес: 193.1.1.63;
для третьей подсети: 193.1.1.65 – 193.1.1.94, широковещательный адрес: 193.1.1.95 и т. д.
Рассмотрим еще один пример. Пусть надо разбить сеть 130.25.0.0 на десять подсетей по 100 машин в каждой.
С учетом того, что дана сеть класса В и
что под адреса подсетей отводится 4 бита
(
),
получим следующую маску подсети:
11111111.11111111.11110000.00000000 (255.255.240.0).
Адреса подсетей и узлов в подсетях:
130.25.16.0 (130.25.16.1 – 130.25.16.100)
130.25.32.0 (130.25.32.1 – 130.25.32.100)
130.25.48.0 (130.25.48.1 – 130.25.48.100)
…
130.25.160.0 (130.25.160.1 – 130.25.160.100).
Автоматизация процесса назначения IP-адресов
Назначение IP-адресов узлам сети может проводиться как вручную, так и автоматически.
Ручное назначение адресов обычно производится в процессе настройки конфигурации работы сетевого интерфейса, при этом новые назначаемые адреса не должны повторять уже используемые IP-адреса в сети. Естественно, что при больших размерах сетей такая настройка начинает вызывать ряд проблем.
Автоматическое назначение IP-адресов упрощает процесс определения адресов для каждого сетевого интерфейса и освобождает администратора, занимающегося настройкой сетевого взаимодействия, от рутинной работы.
Для автоматического назначения IP-адресов используется вспомогательный протокол динамической конфигурации узлов DHCP (Dynamic Host Configuration Protocol).
DHCP предназначен для автоматической настройки параметров стека TCP/IP рабочей станции. В момент загрузки операционной системы рабочая станция посылает широковещательный запрос параметров своей конфигурации, получив который, сервер DHCP посылает в ответ сведения, содержащие IP-адрес этой рабочей станции, а также прочую информацию, необходимую при настройке сетевого взаимодействия. При этом предполагается, что клиент DHCP, т. е. рабочая станция, пославшая широковещательный запрос, и сервер DHCP находятся в одной локальной сети.
Автоматическое назначение адресов может работать, используя различные способы распределения адресов по интерфейсам:
статический;
динамический.
При статическом способе сервер DHCP в ответ на запрос рабочей станции посылает ей произвольный IP-адрес, выбранный из диапазона наличных адресов. Диапазон адресов задается при настройке сервера DHCP. Выбранный для рабочей станции адрес дается ей в пользование на неограниченный срок, при этом при последующих обращениях к серверу станция будет получать этот же IP-адрес.
При динамическом распределении адресов адрес выдается для использования на ограниченное время, называемое сроком аренды. После истечения срока аренды данный IP-адрес может быть назначен другой рабочей станции. Поскольку при таком распределении один и тот же адрес может использоваться несколькими интерфейсами, а также за счет того, что обычно одновременно работают далеко не все зарегистрированные в сети рабочие станции, появляется возможность экономить IP-адреса, выделяя их под конкретные нужны, а не под простаивающие узлы.
Отображение IP-адресов на локальные адреса
Чтобы определить физический адрес узла, указанного сетевым адресом, используется протокол разрешения адресов ARP (Adress Resolution Protocol). В локальных сетях для определения нужного адреса ARP использует рассылку широковещательных запросов. Протокол разрешения адресов формирует запрос, указывая в нем сетевой адрес, для которого нужно определить соответствующий физический адрес узла, инкапсулирует этот запрос в кадр протокола канального уровня, используемого в данной сети, и производит широковещательную рассылку полученного кадра.
Узел сети, получивший такой запрос, сравнивает указанный в запросе сетевой адрес со своим сетевым адресом. В случае, если адреса совпали, узел формирует ответ, содержащий оба адреса узла – физический и сетевой – и отправляет его отправителю исходного ARP-запроса, на который передается ответ.
Для решения обратной задачи, т. е. определение IP-адреса по известному физическому адресу, используется протокол обратного разрешения адресов RARP (Reverse Address Resolution Protocol). Необходимость использования протокола обратного разрешения адресов обычно обусловливается использованием бездисковых рабочих станций, загрузка операционной системы которых производится с единого сервера.
Организация доменов и доменных имен
Кроме числовых схем адресации, также применяются схемы адресации, использующие символьное представление адресов. Символьные адреса гораздо проще запоминать, этому способствует еще и тот факт, что обычно они несут некую смысловую нагрузку. Поэтому такие адреса удобны там, где необходимо обеспечить интерфейс человека с сетевой программой.
Однако символьные адреса имеют переменный формат достаточно большой максимально возможной длины, поэтому хранение и передача по сети таких адресов вызывают ряд сложностей и являются не очень экономичными.
В сети Интернет используется IP-адресация, но поскольку пользователям приложений удобней работать с символьными адресами, то на прикладных уровнях используется символьная система адресации, каждый адрес которой является мнемоническим обозначением некоего IP-адреса.
В больших сетях наиболее эффективным оказалось применение иерархической системы адресации, и, соответственно, адресов, состоящих из нескольких «вложенных» друг в друга частей.
Примером такой системы адресации может служить доменная система имен (Domain Name System), имеющая иерархическую древовидную структуру и допускающая большую степени вложенности, т. е. большое количество иерархических подуровней.
Доменное имя может состоять из нескольких частей, отделенных друг от друга точками, например news.yandex.ru. Каждая из таких частей называется доменом.
Доменное имя записывается так, что слева оказывается имя узла, входящего в домен, имеющий самый низкий уровень в иерархии, а справа – домен, имеющий самый высокий иерархический уровень. Поэтому крайний справа домен называется доменом верхнего или первого уровня. Следующий слева домен, отделенный точкой, является дочерним доменом второго уровня. Домены, которые являются дочерними для домена второго уровня, называются доменами третьего уровня и т. д.
В адресе news.yandex.ru доменом первого уровня является домен «ru», доменом второго уровня – «yandex», слово «news» является именем хоста.
Термин «хост» используется в качестве синонима термина «узел сети», обычно говоря о сетях, объединенных на основе использования стека TCP/IP.
Названия доменов первого уровня назначаются централизованно в соответствии с международным стандартом. Имена доменов первого уровня могут обозначать страны или типы организаций и обычно представляют собой двух- или трехбуквенные аббревиатуры (табл. 6).
Домены первого уровня |
|||
Общие (предназначены для обозначения типов организаций) |
Региональные (предназначены для обозначения стран и регионов) |
||
Имя |
Значение |
Имя |
Значение |
com |
коммерческие |
ru |
Российская Федерация |
edu |
образовательные |
ua |
Украина |
gov |
правительственные |
us |
США |
int |
международные |
jp |
Япония |
mil |
военные |
de |
Германия |
info |
информационные |
gb |
Великобритания |
net |
сетевые |
au |
Австралия |
org |
некоммерческие |
za |
Южная Африка |
Доменом второго уровня обычно является псевдоним организации, которой принадлежит корпоративная сеть или хост-компьютер, для адресации которых используется этот домен.
Домены третьего и последующих уровней являются частью доменов второго уровня, и на практике обычно представляют некие подсети либо дочерние хосты, которые продаются или бесплатно передаются в использование другим организациям или физическим лицам. Очень часть на таких хостах размещаются домашние страницы пользователей Интернета.