Читаем TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security) полностью

Маршрутизация трафика на хост выполняется посредством анализа сетевой части и части для подсети IP-адреса. Сетевые части адресов классов А, В и С имеют фиксированный размер. Однако организация может указать собственный размер для поля подсети, и тут возникает вопрос о распознавании этой части в хостах и маршрутизаторах. На рис. 5.8 показано меню программы Chameleon для ввода размера поля подсети.

Рис. 5.8. Конфигурирование маски подсети

Размер поля подсети реально хранится в конфигурационном параметре, называемом маской подсети (subnet mask). Маска подсети имеет длину в 32 бита. Эти биты отражают для заданной сети длину поля подсети в адресе: для поля подсети в маске располагаются единицы, а для системного поля — нули.

Например, если для идентификации подсети используется третий байт, а сеть имеет адрес 128.121, то маска подсети будет:

11111111 11111111 11111111 00000000

Часто маска подсети записывается десятичной нотацией с точками: 255.255.255.0

Иногда применяется шестнадцатеричный формат:

X'FF-FF-FF-00

Подключенные к подсети хосты и маршрутизаторы конфигурируются с маской подсети. Общепринятым способом является использование одной маски подсети для всей интернет-сети организации. Однако из этого правила есть исключения, и некоторые организации применяют несколько размеров для различных подсетей.

Например, если сеть содержит большое количество линий "точка-точка", то номера подсети будут использованы очень неэкономно, поскольку в коммуникации участвуют только две системы в каждой из подсетей "точка-точка". Организация может решить использовать 14-битовую маску (255.255.255.252) для соединений "точка-точка".

Таблица 5.2 Подсети в сети класса В

Биты подсетиКоличество подсетейБиты для хостовКоличество хостовМаска подсети
001665534255.255.0.0
1-15-Недопустимая комбинация
221416382255.255.192.0
36138190255.255.224.0
414124094255.255.240.0
530112046255.255.248.0
662101022255.255.252.0
71269510255.255.254.0
82548254255.255.255.0
95107126255.255.255.128
101022662255.255.255.192
112046530255.255.255.224
124096414255.255.255.240
13819036255.255.255.248
141638222255.255.255.252
15-1-Недопустимая комбинация

В таблице 5.2 показаны способы разделения локального адреса для сети класса B. В ней также приведено количество подсетей и хостов в разделах. Это количество на 2 меньше, чем можно было предположить, поскольку существуют некоторые ограничения, которые будут рассмотрены ниже. Например, если подсеть использует 6 бит, шаблон маски подсети будет:

11111111 11111111 11111100 00000000,

что можно записать как 255.255.252.0. Далее мы рассмотрим, почему нельзя использовать комбинации 1/15 (1 бит для подсети и 15 бит для адресов хостов) и 15/1.

В приложении D представлены примеры использования в одной сети нескольких различных масок подсетей, что позволяет эффективно присваивать адреса.

<p>5.18 Специальные зарезервированные адреса</p>

Для номера подсети или хоста нельзя использовать любое число. Например, некоторые адреса служат для широковещательных рассылок, а другие — резервируются для таблиц маршрутизации. Следует руководствоваться правилом: никогда не применять блоки из одних нулей или единиц — как в поле подсети, так и в поле хостов. Также не существует сетевых номеров, состоящих из одних нулей или единиц.

<p>5.18.1 Идентификация сети и подсети</p>

Для указания сети удобно использовать формат адреса с точками. По соглашению, это делается при заполнении локальной части адреса нулями. Например, 5.0.0.0 указывает на сеть класса А, 131.18.0.0 — на сеть класса В, а 201.49.16.0 — на сеть класса С.

Аналогичным образом указываются подсети. Например, если сеть 131.18.0.0 использует 8-битовую маску подсети, то 131.18.5.0 и 131.18.6.0 будут определять подсети. Эта же нотация применяется для записи сети или подсети назначения в таблице маршрутизации IP. Данное соглашение приводит к тому, что такие адреса нельзя присваивать хостам и маршрутизаторам. Кроме того, использование нуля как номера подсети делает некоторые адреса неоднозначными, например 130.15.0.0. По этой причине применение нулей в поле подсети запрещено в стандарте (см. RFC 1122). Сайты, использующие ноль как маску подсети, тем самым нарушают соглашение.

<p>5.18.2 Широковещательная рассылка в локальной подсети</p>
Перейти на страницу:

Похожие книги