Подсеть позволяет разделять поток сетевого трафика между хостами на основе конфигурации сети. Организуя хосты в логические группы, подсети могут повысить безопасность и производительность сети.
Маска подсети
Возможно, наиболее узнаваемым аспектом разделения на подсети является маска подсети. Как и IP-адреса, маска подсети содержит четыре байта (32 бита) и часто записывается с использованием той же десятичной записи с точками. Например, вот распространенная маска подсети в двоичном представлении:
11111111 11111111 11111111 00000000
Эта маска подсети обычно отображается в эквивалентной, более читаемой форме:
255.255.255.0
Каждый из четырех байтов имеет длину восемь бит. В двоичной записи байт состоит из восьми нулей и единиц, представляющих степени двойки. Значение «в степени» является функцией положения значения в строке, причем самое правое значение начинается с 0. Битовое значение 11111111 равно 27+ 26+25+24+23 +22+21+20 или 255. Напротив, битовое значение числа 00100001 равно 25+20 или 33.
Применение маски подсети
Маска подсети не работает как IP-адрес и не существует независимо от IP-адресов. Вместо этого маски подсети сопровождают IP-адрес, и эти два значения работают вместе. Применение маски подсети к IP-адресу разделяет адрес на две части: расширенный сетевой адрес и адрес хоста.
Чтобы маска подсети была действительной, ее крайние левые биты должны быть установлены в 1. Например:
00000000 00000000 00000000 00000000
Эту маску подсети нельзя использовать в вашей сети, так как крайний левый бит установлен на 0.
И наоборот, крайние правые биты в действительной маске подсети должны быть установлены на 0, а не на 1. Например:
11111111 11111111 11111111 11111111
Эту маску подсети нельзя использовать в сети.
Все допустимые маски подсети состоят из двух частей: левая сторона со всеми битами маски, установленными в 1 (расширенная сетевая часть), и правая сторона со всеми битами, установленными в0 (хост-часть), как в первом примере выше.
Подсети на практике
Подсети работают, применяя концепцию расширенных сетевых адресов к адресам отдельных компьютеров (и других сетевых устройств). Расширенный сетевой адрес включает в себя как сетевой адрес, так и дополнительные биты, представляющие номер подсети.
Вместе эти два элемента данных поддерживают двухуровневую схему адресации, признанную стандартными реализациями IP. Сетевой адрес и номер подсети в сочетании с адресом хоста поддерживают трехуровневую схему.
Рассмотрите следующий пример из реальной жизни. Небольшой бизнес планирует использовать сеть 192.168.1.0 для своих внутренних узлов (интрасеть). Отдел кадров хочет, чтобы их компьютеры находились в ограниченной части этой сети, поскольку на них хранится информация о заработной плате и другие конфиденциальные данные сотрудников. Но поскольку это сеть класса C, маска подсети по умолчанию 255.255.255.0 позволяет всем компьютерам в сети быть одноранговыми (отправлять сообщения друг другу напрямую) по умолчанию.
Первые четыре бита адреса 192.168.1.0:
1100
Это помещает сеть в диапазон класса C, а также фиксирует длину сетевого адреса на уровне 24 бит. Чтобы создать подсеть в этой сети, более 24 бит должны быть установлены в 1 в левой части маски подсети.
Для каждого дополнительного бита, установленного в 1 в маске, становится доступным еще один бит в номере подсети для индексации дополнительных подсетей. Двухбитный номер подсети может поддерживать до четырех подсетей, трехбитный номер поддерживает до восьми подсетей и т. д.
Итог
Руководящие органы, управляющие Интернет-протоколом, зарезервировали определенные сети для внутреннего использования. В целом интрасети, использующие эти сети, получают больший контроль над своей конфигурацией IP и доступом в Интернет. Обратитесь к RFC 1918 для получения более подробной информации об этих специальных сетях.
Обзор
Подсети дают сетевым администраторам некоторую гибкость в определении отношений между сетевыми хостами. Хосты в разных подсетях могут общаться друг с другом только через специализированные сетевые шлюзы, такие как маршрутизаторы. Возможность фильтровать трафик между подсетями может увеличить полосу пропускания, доступную для приложений, и ограничить доступ нужным образом.