Организация подсетей

В редких случаях в состав локальной сети входит более 500 компьютеров. По этой причине полезность адресов класса А и класса

В (которые допускают наличие в одной сети соответственно 16777214 и 65534 машин) весьма сомнительна. К примеру, 126 адресов класса А занимают половину доступного адресного пространства.

Большинство организаций, имеющих эти адреса, пользуются улучшенным вариантом схемы адресации, в которой применяются подсети. Здесь некоторая доля машинной части адреса “заимствуется” для расширения сетевой части.

Например, четыре байта адреса класса В обычно интерпретируются как С.С.М.М. При наличии подсети третий байт также отводится под номер сети, а не номер машины, поэтому формат адреса становится таким: С.С.С.М. Это превращает один сетевой адрес класса В в 256 сетей, подобных сетям класса С, в каждую из которых может входить 254 компьютера.

Переназначение адресов производится с помощью команды ifconfig в OC семейства UNIX и команды ipconfig в OC семейства Windows, которая назначает сетевому интерфейсу так называемую маску подсети. Каждый бит маски, соответствующий сетевой части IP-адреса, равен 1, а биты машинной части равны 0. Например, маска для адреса класса С будет иметь вид 255.255.255.0 в десятичной системе и 0xFFFFFF00 — в шестнадцатеричной. Ядро, как правило, использует класс адреса для того, чтобы выяснить, какие биты относятся к сетевой части. Если задается явная маска, то эта функция просто отменяется.

Граница между сетевой и машинной частями адреса необязательно приходится на границу байта, но чаще всего бывает именно так. Биты сетевой части должны быть смежными. Конфигурация вида С.С.М.С раньше допускалась, хотя и не была распространена. Сегодня подобный формат адреса недопустим.

Сетевые маски, не оканчивающиеся на границе байта, труднее декодировать. Они обычно записываются в виде суффикса /XX, где XX — число битов в сетевой части адреса (длина маски). Например, адрес 128.138.243.0/26 обозначает первую из четырех сетей с общим компонентом адреса 128.138.243. В трех других сетях последний байт адреса идентифицируется значениями 64, 128 и 192. Сетевая маска, связанная с этими сетями, имеет вид 255.255.255.192. или 0xFFFFFFC0. В двоичном представлении это 26 единиц, за которыми следуют шесть нулей.

В сети с длиной маски /26 для нумерации узлов отводится 6 битов (32 — 26 = 6). Таким образом, появляется возможность задать 64 адреса (26 = 64). В действительности можно использовать 62 адреса, поскольку адреса, состоящие из всех нулей и всех единиц, зарезервированы (соответственно для адреса самой сети и для широковещательного режима).

Манипулировать всеми этими битами в голове трудно, но есть ряд приемов, позволяющих упростить вычисления. Число узлов в сети и значение последнего байта сетевой маски в сумме всегда дают 256: последний байт сетевой маски = 256 — размер сети

К примеру, в рассмотренном выше случае 256 — 64 = 192 — это последний байт маски. Другое правило гласит, что значение последнего байта фактического сетевого адреса (не сетевой маски) должно нацело делиться на число узлов в сети. В описываемом примере последние байты равны 0, 64, 128 и 192 — каждое из этих чисел делится нацело на 64.

Старшие два бита последнего байта адреса могут принимать значения 00, 01, 10 и 11. Таким образом, сеть 128.138.243.0/24 может быть разделена на четыре сети /26:

  1. 128.138.243.0/26 (0 – 00000000);
  2. 128.138.243.64/26 (64 – 01000000).
  3. 128.138.243.128/26 (128 – 10000000);
  4. 128.138.243.192/26 (192 – 11000000).

Выделенные полужирным шрифтом биты последнего байта каждого адреса относятся к сетевой части этого адреса.
Имея конкретный IP-адрес (допустим, 128.138.243.100), невозможно сказать, не узнав сетевую маску, каким будет адрес сети и широковещатель-ный адрес. В табл. 2 представлены возможные варианты для масок /16 (выбирается по умолчанию для адресов класса В), /24 и /26 (наиболее реалистичное значение, если учитывать нехватку адресов в сети).

Исходный документ RFC950, посвященный IP-подсетям, не разрешал использовать первый и последний адреса подсети (состоящие из всех нулей и всех единиц соответственно), что в нашем примере привело бы к исключению половины подсетей: с адресами 0 и 192. Однако впоследствии выяснилось, что данный запрет не имеет оснований, поэтому на практике данные адреса подсетей используются повсеместно. Данный запрет актуален только для машинной части IP-адреса.

Сетевой (все нули) и широковещательный (все единицы) адреса сокращают число узлов в каждой подсети на 2, поэтому в сети минимального размера формально будет 4 узла: 2 реальных, соединенных напрямую, и 2 фиктивных (сетевой и широковещательный адреса). Для создания подобной сети необходимо выделить под машинную часть адреса 2 последних бита, а под сетевую – 30 бит в начале адреса, т.е. суффикс адреса будет /30, а сетевая маска – 255.255.255.252.

Сетевые маски понятны компьютерам в локальной сети, но глобальной сети они неизвестны и в ней адреса интерпретируются в соответствии с заложенными в них классами.

 

Узнай цену консультации

"Да забей ты на эти дипломы и экзамены!” (дворник Кузьмич)