Расчет маски подсети: примеры «для чайников»
В одной из предыдущих статей мы рассказывали, что такое маска подсети, и для чего она может потребоваться. Здесь же коснемся практической части и рассмотрим расчет маски подсети на конкретных примерах.
Итак,существует пять классов маршрутизации – A, B, C, D, E. Различным организациям выделяются адреса из диапазонов A, B и C, D и E, которые используются для технических и исследовательских нужд.
Однако выделение какой-либо организации (или частному лицу в Интернете) сети из класса В – недопустимое расточительство. Например, вам нужен «белый» адрес для работы в сети Интернет.
Провайдер располагает адресами класса В и выделяет для вас одного сеть 129.16.0.0. Теперь у вас 65534 «белых» адресов, которые вы маловероятно задействуете.
Вот тут и нужна маска подсети. Маска нужна для определения, какая часть адреса относится к сети, а какая – к хосту. Адресация с использованием маски сети называется бесклассовой (от английского Classless Inter-Domain Routing или CIDR).
Маска подсети определена стандартом RFC 917.
Как именно работает и на что влияет маска подсети? Провайдеру, располагающему сетью 129.16.0.0 нет нужды отдавать ее полностью в чье-то ведение. Теперь можно разбить ее, используя маску сети на много подсетей меньшего размера.
Структура IP-адреса
IP-адрес состоит из четырех частей, записанных в виде десятичных чисел с точками (например, 192.168.1.2). Каждую из этих четырех частей называют октетом. Октет представляет собой восемь двоичных цифр (например, 11000000, или 192 в десятичном виде). Таким образом, каждый октет может принимать в двоичном виде значения от 00000000 до 11111111, или от 0 до 255 в десятичном виде.
Количество двоичных цифр в IP-адресе, которые приходятся на адрес сети, и количество цифр в IP-адресе, приходящееся на адрес хоста, могут быть различными в зависимости от маски подсети.
Разделение IP адреса на сетевую и узловую части
Логический 32-битный IP-адрес представляет собой иерархическую систему и состоит из двух частей. Первая идентифицирует сеть, вторая — узел в сети. Обе части являются обязательными.
Например, если IP-адрес узла – 192.168.18.57, то первые три октета (192.168.18) представляют собой сетевую часть адреса, а последний октет (.57) является идентификатором узла. Такая система называется иерархической адресацией, поскольку сетевая часть идентифицирует сеть, в которой находятся все уникальные адреса узлов. Маршрутизаторам нужно знать только путь к каждой сети, а не расположение отдельных узлов.
Другой пример иерархической сети – это телефонная сеть. В телефонном номере код страны, региона и станции составляют адрес сети, а оставшиеся цифры — локальный номер телефона.
При IP-адресации в одной физической сети могут существовать несколько логических сетей, если сетевая часть адреса их узла отличается. Пример. Три узла в одной физической локальной сети имеют одинаковую сетевую часть в своем IP-адресе (192.168.50), а три других узла — другую сетевую часть (192.168.70). Три узла с одной сетевой частью в своих IP-адресах имеют возможность обмениваться данными друг с другом, но не могут обмениваться информацией с другими узлами без использования маршрутизации. В данном случае имеем одну физическую сеть и две логические IP-сети.
Виды сетей – что такое сеть класса A, класса B и C
IP-адреса делятся на отдельные классы. Наиболее распространенными являются адреса классов A, B и C.
Каждый из этих классов по умолчанию использует разные маски подсети, и вы можете легко определить класс IP-адреса по первому октету, который он использует.
Класс А
В сети класса A вы увидите маску по умолчанию 255.0.0.0. Это означает, что первый октет IP-адресов класса A будет находиться в диапазоне от 0 до 127. Пример IP-адреса класса A будет 12.48.24.9.
Сети класса A имеют 8-битный префикс с максимальным битом, установленным на 0. Существует 7-битный номер сети, а номер хоста – 24-битный.
С классом А существует максимум 126 сетей.
Класс B
В сети класса B вы увидите маску по умолчанию 255.255.0.0. Это означает, что первый октет IP-адресов класса B будет находиться между 128 и 191. Пример IP-адреса класса B будет 171.17.51.64.
Сети класса B имеют 16-битный префикс с самым высоким битовым порядком. Номер сети – 14 бит, а номер хоста – 16 бит.
Класс С
В сети класса C вы увидите маску по умолчанию 255.255.255.0. Это означает, что первый октет IP-адресов класса C будет между 192 и 223. Примером IP-адреса класса C будет 194.166.124.133.
Сети класса C имеют 24-битный префикс с наивысшим битовым порядком, установленным в 1-1-0. Номер сети 24 бит, а номер хоста 8 бит.
Маршрутизатор и шлюз подсети.
Наверное, лучше повторить: шлюз и маршрутизатор — это одно и то же!
Из того, о чём говорилось только что, следует достаточно ясный вывод. Маршрутизатор с адресом интерфейса 192.168.8.1 ничего не знает о трафике, передаваемом, например, между хостами 192.168.8.5 и 192.168.8.7.
У начинающих администраторов одна из самых типичных ошибок — желание заблокировать или как-то иначе проконтролировать с помощью шлюза трафик между хостами в одной подсети. На самом деле, чтобы трафик проходил через маршрутизатор, адресат и отправитель должны находиться в разных подсетях.
А отсюда следует, что в сети даже самого маленького предприятия должно быть несколько IP-подсетей (больше двух) и маршрутизатор (точнее, файрвол, но сейчас можно считать эти слова синонимами), который маршрутизирует и контролирует трафик между подсетями.
Важный следующий шаг: разбиение подсетей на более мелкие подсети.
Сеть из нашего примера 192.168.8.0/21 можно разбить на две подсети /22, четыре подсети /23, восемь /24 и так далее. Общее правило, как можно догадаться, такое:
при этом K — количество подсетей с длиной маски Y, которые умещаются в подсеть с длиной маски X.
Заключение
Как я уже говорил эта статья была написана и опубликована совместно c моим коллегой Евгением Кузьминым. В будущем мы планируем продолжить писать совместные статьи связанные с сетевыми технологиями и настройкой сетевого оборудования (маршрутизаторы, коммутаторы)
Если вам нужно что-то настроить или получить консультацию по медиасерверам и системам, можете обращаться ко мне и нашей команде через форму контактов.
Как работают IP-адрес и маска подсети?
В конфигурации TCP/IP мы не можем определить, используется ли часть IP-адреса в качестве сетевого или хост-адреса, если не получим дополнительную информацию из таблицы масок подсети. Если пример маски подсети равен 255.255.255.0, а поскольку 255 в двоичной системе счисления равно 11111111, то маска подсети равна:
Выстраивая IP-адрес и маску подсети вместе, сетевая и хост-части адреса могут быть разделены:
11000000.10101000.01111011.10000100 — IP-адрес (192.168.123.132)
11111111.11111111.11111111.00000000 — Маска подсети (255.255.255.0)
Первые 24 бита идентифицируются как сетевой адрес, а последние 8 бит (оставшиеся нули в маске подсети) идентифицируются как адрес хоста. Это дает вам следующее:
11000000.10101000.01111011.00000000 — Сетевой адрес (192.168.123.0)
00000000.00000000.00000000.10000100 — Адрес хоста (000.000.000.132)
Итак, теперь вы знаете, что для этого примера с использованием маски подсети 255.255.255.0 сетевой адрес равен 192.168.123.0, а адрес хоста равен 0.0.0.132. Когда пакет поступает в подсеть 192.168.123.0 и имеет адрес назначения 192.168.123.132, ваш компьютер получает его из сети и обрабатывает.
Вычисление маски подсети
Иногда возникает потребность определить маску подсети, нужно это, как правило, для определения количества IP-адресов в пределах одной подсети или для настройки оборудования, например, роутера.
Числовое значение маски подсети в двоичной системе счисления определяет количество бит. Всего по умолчанию имеется 32 бита в значении, это стандартный размер, в его составе есть единицы и нули. Биты со значением единицы представляют адрес сети, а биты с нулями относятся к адресу хоста. Если в коде 8 единиц, тогда перед нами восьмибитная маска.
Для определения значения маски на компьютере с ОС Windows используем следующую технологию: вводим «ipconfig» в командной строке и жмем Enter. Также эту информацию можно получить в разделе «Сетевые подключения». Выбираем действующее подключение, вызываем диалоговое меню и выбираем «Состояние».
В появившемся окне кликаем «Сведения», откроется вкладка с нужными данными. Эти способы подойдут, если необходимо определить маску подсети для внутреннего IP. Для определения маски внешнего айпи, можно воспользоваться онлайн калькулятором.
Необходимо ввести нужный айпи и нажать «Подсчитать», система выведет результат. Такие онлайн-калькуляторы присутствуют на тематических сайтах.
Для удобства и экономии времени можно использовать и другие утилиты, которые быстро рассчитают и проанализируют числовые данные.