что такое cidr сети

Сетевые технологии: IP-адреса, подсети и бесклассовая адресация CIDR

Понимание сетевых технологий крайне необходимо для настройки сложных сред, эффективного обмена информацией между серверами, управления нодами, а также при разработке безопасных сетевых политик.

Данная статья ознакомит вас с методами проектирования сетей и взаимодействия с компьютерами, которые подключены к сети. В частности здесь рассматриваются сетевые классы, подсети и CIDR-нотация для группирования IP-адресов.

Что такое IP-адрес?

Каждое устройство или место в сети должно иметь свой адрес – некоторое обозначение в рамках предопределенной системы адресов, по которому к этому устройству/месту можно получить доступ. В стандартной модели TCP/IP адресация обрабатывается на нескольких сетевых уровнях. Обычно в контексте сетевых технологий под сетевым адресом подразумевают IP-адрес.

IP-адреса позволяют получать сетевые ресурсы через сетевой интерфейс. Если один компьютер хочет установить связь с другим компьютером, он может передать информацию на IP-адрес удаленного компьютера. Если два компьютера находятся в одной сети и если компьютеры и устройства между ними могут преобразовывать сетевые запросы, компьютеры должны иметь возможность установить соединение и отправлять информацию.

Каждый IP-адрес должен быть уникальным в рамках своей сети. Сети можно изолировать, а можно соединить их между собой и преобразовать, чтобы обеспечить доступ к различным сетям. Преобразование сетевых адресов – это система, которая позволяет переписывать адреса пакетов, достигнувших границы сети, и передать их в указанное место назначения. Таким образом, один IP-адрес можно использовать в нескольких изолированных средах.

Разница между IPv4 и IPv6

Сегодня существует две версии протокола IP, которые широко применяются в системах. IPv4, четвёртая версия протокола, поддерживается большинством систем. Более новая версия, IPv6, набирает популярность благодаря улучшениям возможностей протокола и из-за нехватки доступных адресов IPv4 (проще говоря, сегодня в мире столько подключенных к сети устройств, что адресов IPv4 не хватает на всех).

Адреса IPv4 – 32-битные. Каждый байт, или 8-битовый сегмент адреса отделяется точкой и выражается числом в диапазоне 0-255. Несмотря на то, что эти числа обычно выражаются десятичным числом (чтобы упростить их восприятие), каждый сегмент называют октетом, чтобы выразить тот факт, что он представляет собой 8 бит.

Типичный адрес IPv4 выглядит примерно так:

Самым низким значением в октете является 0, а самым высоким – 255.

Также можно выразить этот адрес в двоичном коде, чтобы лучше понять строение адреса (в примере каждые 4 бита для удобочитаемости заменены пробелом, а точки пунктиром):

Оба приведённые выше формата выражают один и тот же адрес.

Несмотря на некоторые отличия в функциональности IPv4 и IPv6, наиболее заметным их отличием является адресное пространство. IPv6 выражает адреса как 128-битное число. Это означает, что IPv6 имеет в 7,9×1028 раз больше адресов, чем IPv4.

Чтобы выразить этот расширенный диапазон адресов, IPv6 обычно записывается как восемь сегментов из четырех шестнадцатеричных чисел. Шестнадцатеричные числа выражаются числами от 0 до 15, а также числами a-f (для более высоких значений). Типичный адрес IPv6 может выглядеть примерно так:

Этот адрес можно записать в компактном формате. Правила IPv6 позволяют удалять любые ведущие нули из каждого октета и заменять диапазоны обнуленных групп двойным двоеточием (: :).

К примеру, если в IPv6 есть такая группа:

Вы можете ввести просто:

Диапазон IPv6 с несколькими группами нулей:

можно сократить до:

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

Сегодня всё чаще используется IPv6, но в остальных примерах статьи будут использоваться адреса IPv4, потому что с меньшим адресным пространством проще работать.

Классы и зарезервированные диапазоны IPv4

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

Граница между первым и вторым компонентом адреса определяется настройками сети.

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

Адреса класса D зарезервированы для многоадресных протоколов, которые позволяют отправлять пакет группе нод в одной транзакции. Адреса класса E зарезервированы для будущих или экспериментальных целей и в основном не используются.

Классы А-С по-разному разделяют компонент сети и компонент хоста.

Адреса класса A использовали оставшуюся часть первого октета для представления сети, а остальная часть адреса использовалась для определения хостов. Такой адрес было удобно использовать для определения нескольких сетей с большим количеством хостов.

Адреса класса B использовали первые два октета (остаток от первого и весь второй) для определения сети, а остальные – для определения хостов в каждой сети. Адреса класса C использовали первые три октета для определения сети, а последний октет – для определения хостов в этой сети.

Изначально разделение IP-пространства на классы применялось как решение проблемы быстрого исчерпания адресов IPv4 (вы можете иметь несколько компьютеров с одним и тем же хостом, если они находятся в разных сетях). Сегодня существуют более современные решения.

Зарезервированные частные диапазоны

Некоторые части пространства IPv4 зарезервированы для конкретных целей.

Один из самых полезных зарезервированных диапазонов – это диапазон кольцевой проверки, определяемый адресами от 127.0.0.0 до 127.255.255.255. Этот диапазон используется каждым хостом для тестирования сети. Обычно он выражается первым адресом в этом диапазоне: 127.0.0.1.

Каждый обычный класс также имеет диапазон, который используется для обозначения адресов частной сети. Например, для класса A это адреса от 10.0.0.0 до 10.255.255.255. Для класса B этот диапазон составляет 172.16.0.0 – 172.31.255.255. Для класса C это диапазон от 192.168.0.0 до 192.168.255.255.

Любой компьютер, не подключенный к Интернету напрямую (т. е. компьютер, который проходит через маршрутизатор или другую систему NAT), может использовать эти адреса по своему усмотрению.

Больше о зарезервированных адресах можно узнать в Википедии.

Сетевые маски и подсети

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

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

Например, для адресов класса C первые 3 октета используются для описания сети: в адресе 192.168.0.15 часть 192.168.0 описывает сеть, а 15 – хост.

По умолчанию каждая сеть имеет только одну подсеть, которая содержит все адреса нод.

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

Каждый бит адреса, который считается значимым для описания сети, должен быть представлен в сетевой маске как 1.

Например, адрес 192.168.0.15 можно выразить в бинарном коде:

Идентификатор сети в адресах класса C – это первые 3 октета, или первые 24 бита. Поскольку эти биты важны и их нужно сохранить, сетевая маска будет выглядеть следующим образом:

В обычном формате IPv4 это будет выглядеть так:

Каждый бит, отмеченный в бинарном представлении сетевой маски нулём, считается идентификатором хоста и может изменяться. Биты, отмеченные единицей, постоянны (хотя в сети или подсети это не всегда так).

Определить сетевую часть адреса можно с помощью поразрядной операции AND между адресом и сетевой маской. Поразрядная операция AND сохраняет сетевую часть адреса и отбрасывает часть хоста. В результате рассматриваемый нами адрес будет выглядеть так:

Его можно выразить как 192.168.0.0. Спецификация хоста является отличием между этим исходным значением и частью хоста. В данном случае это «0000 1111» или 15.

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

Например, сетевая маска 255.255.255.0 оставляет 254 хоста в сети (0 и 255 использовать нельзя – они зарезервированы). Чтобы разделить это пространство на две подсети, можно использовать один бит части хоста адреса в качестве маски подсети.

Продолжим работать с предыдущим примером. Часть сети:

Первый бит хоста можно использовать для обозначения подсети. Для этого нужно настроить маску подсети, вместо:

В традиционной нотации IPv4 это будет выглядеть так:

Теперь первый бит последнего октета отмечен как важный для адресации в сети. Это создает две подсети. Первая подсеть будет в диапазоне от 192.168.0.1 до 192.168.0.127. Вторая подсеть содержит хосты 192.168.0.129 до 192.168.0.255. Традиционно сама подсеть не должна использоваться в качестве адреса.

Бесклассовая адресация CIDR

Система CIDR (Classless Inter-Domain Routing) была разработана в качестве альтернативы традиционным подсетям. С помощью CIDR вы можете добавить спецификацию самого IP-адреса в число значимых битов, составляющих часть маршрутизации или сети.

Например, выразить связь IP-адреса 192.168.0.15 с сетевой маской 255.255.255.0 можно с помощью CIDR-нотации 192.168.0.15/24. Это означает, что первые 24 бита указанного IP-адреса считаются значимыми для сетевой маршрутизации.

CIDR можно использовать для обозначения «суперсетей». В этом случае имеется в виду более широкий диапазон адресов, что невозможно при использовании традиционной маски подсети. Например, в сети класса C (в предыдущем примере) объединять адреса из сетей 192.168.0.0 и 192.168.1.0 нельзя, потому что сетевая маска для адресов класса C – 255.255.255.0.

CIDR-нотация позволяет объединить эти блоки, определив этот блок как 192.168.0.0/23. Это значит, что 23 бита используются для части сети.

Таким образом, первая сеть (192.168.0.0) может быть представлена в двоичном коде так:

А вторая сеть (192.168.1.0) – так:

CIDR-адрес значит, что 23 бита используются в адресной части сети. Это эквивалентно сетевой маске 255.255.254.0, или:

Как видите, в этом блоке 24-й бит может быть 0 или 1, и такой адрес все равно подойдёт, так как ля сетевой части важны только первые 23 бита.

В целом, CIDR позволяет контролировать адресацию непрерывных блоков IP-адресов. Это намного удобнее, чем подсеть.

Заключение

Теперь вы знакомы с некоторыми механизмами адресации и основами протокола IP. Понимание сетевых технологий поможет правильно настроить программное обеспечение и его компоненты.

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

Источник

Урок 11. Бесклассовая адресация. CIDR и VSM

Теперь рассмотрим небольшую сеть

Между маршрутизаторами используется адресация класса А. Но задействовано всего лишь 2 адреса. Остальные адреса остались не задействованы и в принципе уже не могут быть использованы.

Почему? Разве мы не можем назначить эти адреса другим маршрутизаторам?

И какое же решение?

Решение было очень простым. Было решено отказаться от использования классовой модели адресов и перейти к бесклассовой адресации (Classless Inter-Domain Routing, CIDR). Данная модель позволяет гибко управлять адресным пространством.

И в чем ее суть? Как она работает?

Она позволяет разбивать сеть на более мелкие подсети. Если раньше адрес состоял из 2-х частей (сетевая и хостовая), то сейчас он состоит из 3-х частей (сетевая, подсетевая, хостовая),

Теперь мы можем произвольно менять размер подсети и соответственно количество хостов.

А как сетевые устройства будут знать номер подсети и количество в нем хостов?

Для этого и используются маски. Вернемся к нашему примеру. Так как нам нужно всего лишь 2 адреса, то в хостовой части адреса 4-го октета мы займем только 2 младших бита. Остальные будут использоваться для обозначения номера подсети. Маска в данном случае будет выглядеть так 11111111.11111111.11111111.11111100 или 255.255.255.252. То есть вся остальная часть, кроме хостовой, записывается единицами.

Но почему 2 бита? Ведь это будет 4 адреса, не лучше ли взять один бит? Он как раз принимает 2 состояния.

Вспомни, что у нас всегда есть 2 адреса: адрес самой сети и широковещательный адрес.

Каждая последующая подсеть начинается через каждые 4 адреса.
CIDR позволяет разбивать сеть исходя из требуемого количества хостов, экономя адресное пространство.
Применив маску 255.255.255.252, мы сможем назначить оставшиеся адреса другим устройствам, даже если они находятся на другом континенте.

Однако прогресс не стоит на месте. Даже используя бесклассовую модель адресации, может возникнуть ситуация, когда адреса используются не экономно.
Например, мы разбили сеть 192.168.1.0/24 на 4 подсети с маской 255.255.255.192, то есть заняли 2 старших бита 4-го октета на подсеть:

192.168.1.0/26
192.168.1.64/26
192.168.1.128/26
192.168.1.192/26

Каждая подсеть предоставляет 62 хостовых адреса, так как под хосты выделено 6 бит.
Однако в подести 192.168.1.128 используются только 10 адресов. Остальные бездействуют и расширение компьютеров явно не предвидится.
Подобная ситуация и в 4-й подсети. Там используются только 13 адресов.
Чтобы избежать подобных ситуаций и грамотно распределить разделить адресное пространство была реализована технология масок переменной длины (Variable Length Subnet Mask, VLSM).
Если быть короче, то она позволяет дробить подсети на еще более мелкие подсети.
Например, подсеть 192.168.1.128/26 разобьем на 4 “подподсети” с маской 255.255.255.240. Выглядит это так:

192.168.1.128/28
192.168.1.144/28
192.168.1.160/28
192.168.1.176/28

Каждая “подподсеть” имеет в распоряжении 14 адресов.
Теперь мы можем выделить только одну подсеть 192.168.1.128/28. При этом у нас останутся в резерве еще 2 “подподсети” и 4-я подсеть.
С помощью технологии VLSM можно создавать иерархию сетей и подсетей, дробя адреса в случае необходимости

На этом возможности технологии VLSM не исчерпываются.Она позволяет не только дробить сети, но и объединять их.

Запись в таблице маршрутизаторов выглядит так:

Маршрутизатор А хранит в своей таблице запись обо всех подсетях. Причем все они доступны через один тот же интерфейс. Чтобы сократить количество записей в таблице, а также уменьшить время обработки маршрутов можно объединить подсети в одну. Для этого выдели те октеты и биты, которые совпадают у всех адресов. Поставь в данных позициях 1 и получишь новую маску, которая объединит все записи в таблице в одну большую подсеть

Вот как будет выглядеть таблица маршрутизации после такой операции

Данная операция проводится вручную или автоматически?

Она проводится как вручную, так и автоматически. Мы изучим ее в уроках по маршрутизации.

Как считать маски и подсети

Существует несколько способов для расчета маски и подсетей. Я предложу тот, которым пользуюсь. Решать тебе каким способом будешь пользоваться ты.

Пример 1. Нужно задействовать 25 адресов. Расчитать маску.

Решение:

1) Исходя из выше приведенной последовательности определить ближайшее максимальное число к 25. В данном случае это 32, что соответствует 2 5 = 32. То есть под хостовую часть отведено 5 бит.

3) Так как нам нужно было всего лишь 25 адресов, то первые 3 октета будут равны 255, а 4-й 224. Наша маска будет 255.255.255.224.

Пример 2. Нужно задействовать 300 адресов. Расчитать маску.

Решение:

1) Так как 300 > 256, то 4-й октет занят полностью, поэтому позаимствуем несколько бит из 3-го октета.

2) Определяем ближайшее максимальное число. Это будет 2 9 = 512, то есть 9 бит для хостов, один из которых приходится на 3-й октет.

Пример 3. Дана сеть 192.168.1.0/28. Определить все подсети, входящие в нее.

Решение:

1) На хостовую часть выделено 32- 28 = 4 бита.

3) Каждая последующая подсеть будет располагаться через каждые 16, то есть 192.168.1.0, 192.168.1.16, 192.168.1.32, 192.168.1.48 и т.д.

4) Количество подсетей 256/16 = 16

Пример 4. Дана сеть 192.168.0.0/22. Определить все подсети, входящие в нее.

Решение:

3) Каждая последующая подсеть будет располагаться через каждые 4 бита в 3-м октете, то есть 192.168.0.0, 192.168.4.0, 192.168.8.0, 192.168.8.0 и т.д.

4) Количество подсетей равно 256/4 = 64.

Пример 5. Определить к какой подсети относится адрес 189.24.18.134/29.

Решение:

2) Найти ближайшие подсети к данному адресу. Для этого 8 (количество хостов) необходимо умножить на некоторое число, чтобы произведение дало число близкое к 134 (последний октет в нашем адресе). Имеем 8 х 16 = 128 (189.24.18.128) и 8 х 17 = 136 (189.24.18.136).

3) У нас есть 2 числа: 128 и 136. Выберем подходящую подсеть. В данном случае это 189.24.18.128, потому что от 189.24.18.136 начинается другая подсеть и адрес 189.24.18.134 в нее не входит.

Вот и все. Надеюсь все было понятно.

Источник

Курс по основам компьютерных сетей на базе оборудования Cisco. Этот курс поможет вам подготовиться к экзаменам CCENT/CCNA, так как за его основу взят курс Cisco ICND1.

4.6 Бесклассовые сети (CIDR), маска подсети/сети переменной длины (VLSM) в протоколе IP

Привет, посетитель сайта ZametkiNaPolyah.ru! Продолжаем изучать основы работы компьютерных сетей и протокол сетевого уровня IP, а если быть более точным, то его версию IPv4. В бесклассовых IP сетях используется маска подсети/сети переменной длины и работает два механизма: CIDR и VLSM. Бесклассовые сети являются прямой линией развития от классовых сетей, их преимущество заключается в том, что они позволяют экономнее расходовать пул IPv4 адресов. О том за счет чего это происходит, мы поговорим в этой теме.

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

4.6.1 Введение

Понимание принципа работы механизмов CIDR и VLSM, а также выбор и расчет маски подсети переменной длины — это ключевой момент в современных IPv4 сетях, без понимания которого будет трудно и неприятно работать, работа всегда неприятна, если она не понятна. Поэтому давайте избавимся от все неприятных моментов и детально разберемся с этим вопросом. Тема очень большая и для ее понимания рекомендую, как минимум, повторять примеры самостоятельно.

4.6.2 CIDR или механизм бесклассовых IP сетей

CIDR (Classless Inter-Domain Routing) – это гибкий метод IP-адресации в компьютерных сетях, который позволяет экономить адресное пространство, данный метод снимает ограничение классовых сетей, которое заключалось в том, что конкретный IP-адрес принадлежал конкретному классу, а это означало, что этому IP-адресу соответствовала маска фиксированной длины, строго закрепленная за классом.

В общем, мы поумничали, теперь давайте разбираться, ибо много умничать – плохо. В чем была проблема классовых сетей, да в том, что они не позволяли создавать маленькие сети. Давайте посмотрим на примере: у нас есть локальная сеть из 6 компьютеров, подключенных к коммутатору, нам нужно, чтобы эти компьютеры могли взаимодействовать между собой. Как нам быть, если используется классовая адресация. Всё просто: нужно взять одну любую сеть из класса C и раздать IP-адреса из этой сети нашим компьютерам, это наглядно продемонстрировано на Рисунке 4.6.1.

что такое cidr сети. Смотреть фото что такое cidr сети. Смотреть картинку что такое cidr сети. Картинка про что такое cidr сети. Фото что такое cidr сети

Рисунок 4.6.1 Сеть из шести узлов, в которой используется классовая адресация

Почему сеть класса C? Да потому что это самый маленький диапазон IP-адресов, который возможен в классовых сетях, но, постойте, зачем нам сеть, в которой 256 IP-адресов, ведь она дает возможность включить 254 узла (ведь один IP-адрес уйдет на номер сети, а другой будет широковещательным и их нельзя выдавать узлам), а у нас их всего шесть! А вдруг за эти IP-адреса нужно будет кому-то платить, а зачем нам платить за 256 адресов, когда нам нужно 6 адресов? Правильно, не зачем, мы маленькая российская компания, которая никогда не вырастет, нам не нужно столько адресов, у нас нет столько денег! А если взглянуть на ситуацию немного иначе. Допустим, в мире нет никаких частных IP-адресов, все адреса являются публичными, мы маленькая компания, сотрудник которой приходит к окошку, в котором сидит тетенька, выдающая IP-адреса по справкам с 14:00 до 15:00 только по средам и пятницам. А в мире до сих пор используются классовые сети. Мы приходим со справкой, в которой написано: нужно 6 IP-адресов. Тетенька читает эту справку и говорит: нет, не дам я вам IP-адреса, потому что их и так мало, да и выдать я могу вам только 256 адресов, и вообще у меня в инструкции написано: выдавать IP-адреса только тем, у кого в сети больше 200 узлов, а то на всех не хватит.

То есть не экономность классовых сетей весьма ощутима, даже если в нашей сети два узла, мы в любом случае вынуждены использовать сеть, которая, как минимум, рассчитана на 254 узла. Не забываем, что классы у нас фиксированные и маски в этих классах так же фиксированные. Получается, что нужно отказываться от классов и фиксированных масок. И это действительно произошло, появились бесклассовые сети или CIDR, принцип работы, которых основан на масках переменной длины или VLSM (variable length subnet mask). А это уже гибкий механизм, который позволяет выделять пулы IP-адресов почти такого размера, как нам хочется. Давайте посмотрим на Рисунок ниже, допустим наша компания каким-то чудом расширилась и появился седьмой сотрудник, его надо обеспечить рабочим местом.

что такое cidr сети. Смотреть фото что такое cidr сети. Смотреть картинку что такое cidr сети. Картинка про что такое cidr сети. Фото что такое cidr сети

4.6.2 Сеть из семи узлов, в которой используется маска переменной длины

Заметили? Мы используем IP-адрес из сети класса А, но почему-то у нас какая-то странная маска: 255.255.255.240. А это всё благодаря CIDR и VLSM, который позволяет отказаться от классов и фиксированных масок, теперь мы можем использовать любые IP-адреса с любыми масками, но для масок все равно должно выполняться условие: сначала идут только единицы, а потом только нули. Те, кто уже перевел IP-адрес и маску в двоичный вид, понял, что номер сети здесь 10.10.10.0, broadcast адрес 10.10.10.15, а адреса между ними можно использовать на узлах нашей сети, то есть маска 255.255.255.240 позволяет пронумеровать 14 узлов. Но у нас их семь, разве нельзя подобрать маску, чтобы сделать сеть на семь узлов? Ответ, нет! Нельзя, я сразу сказал, что VLSM позволяет нарезать сети почти такого размера, как нам нужно.

Весь затык в маске, а именно в требование, что сперва должны быть только единицы, которые определяют номер сети, а потом должны быть нули, которые определяют часть IP-адреса, используемую под номера хостов/узлов. Следующая маска, которая удовлетворяет условию единиц и нулей выглядит так: 255.255.255.248, если ее наложить на IP-адрес из нашей сети, то получится, что номер сети 10.10.10.0, адрес широковещательной рассылки 10.10.10.7, а под номера узлов у нас остается только шесть IP-адресов, и зачем мы только нанимали седьмого сотрудника, так бы могли взять маску 255.255.255.248. Плюсы бесклассовых сетей очевидны, давайте погружаться в детали.

4.6.3 VLSM или маска переменной длины в IP сетях

VLSM (variable length subnet mask) или маска подсети переменной длины – это основа, на которой строятся бесклассовые сети, именно благодаря тому, что появилась возможность использования масок переменной длины и произошел отказ от классов, мы до сих пор пользуемся протоколом IPv4, адреса которого уже практически исчерпаны, но еще не до конца.
Теперь нам нужно стать рыбкой, а именно нам нужно забыть о том, что существуют классы и о том, что каждому классу соответствует фиксированная маска. Классов нет, маска может быть любой, только не забывайте про правило нулей и единиц. Но теперь стало немного труднее рассчитывать сети, раньше-то маски были фиксированные, более того, старые маски проводили четкую границу в IP-адресе между номером сети и номером узла, эта граница при любом классе находилась между октетами IP-адреса, а теперь какие-то непонятные маски, да еще и граница может находиться где-то внутри октета, давайте разбираться с этим VLSM, всё не так страшно.

Представим, что у нас есть сеть на два узла, это значит, что маска должна быть такой, которая позволяет иметь четыре IP-адреса. Два адреса уйдут на номер сети и широковещательную рассылку, а два адреса мы дадим своим узлам. Давайте теперь поразмыслим и выпьем чаю. Раз нам нужно только четыре адреса, то это 100% гарантия, того, что первых три октета маски должны быть единицами: 255.255.255.x, в двоичной системе счисления это выглядит так: 11111111 11111111 11111111 xxxxxxxx. Ну, пол дела сделано. Осталось разобраться с последним октетом. Что мы знаем изначально? Мы знаем то, что нам нужно два IP-адреса на узлы, то есть между этими адресами разница должна быть всего в один бит, а еще мы помним, что в маске сперва идут только нули, а затем только единицы, пока всё логично.

Руководствуясь этой логикой можно сделать вывод о том, что IP-адреса должны отличать только лишь значением последнего бита, то есть наша маска должна содержать сперва 31 единицу и последний ноль, тогда получится выделить ровно два IP-адреса, в десятичной системе счисления такая маска будет выглядеть так: 255.255.255.254, в двоичной она примет такой вид: 11111111 11111111 11111111 11111110. Хорошо говорим мы, но первый IP-адрес у нас должен уйти на номер сети, а последний широковещательный, их нельзя давать узлам, ничего не будет работать! И в какой-то мере мы правы, но такая маска имеет специальное назначение, и она будет работать в некоторых случаях, но об это в конце данной темы, сейчас нам нужно искать выход!

Чтобы его найти, нам нужно помнить про нули и единицы в маске, и внимательно посмотреть на то, что мы получили ранее: 11111111 11111111 11111111 11111110. Смотрите, последний бит в этой маске у нас ноль, этот ноль говорит о том, что последний бит IP-адреса может меняться, а первых 31 бит должны оставаться неизменными, то есть такая маска допускает наличие в подести двух IP-адресов, так как система счисления у нас двоичная, один бит мы можем изменять и этот один бит может принимать только два значения: 0 и 1, следовательно, справедлива вот такая формула: 2 1 = 2. В выражение двойка, которую мы возводим в степень – это основание двоичной системы счисления, эту двойку мы возводим в первую степень, потому что у нас для номера узла есть только один бит.

Из всего вышеописанного следует, что нам ничего не остается, кроме как взять и забрать один бит из номера сети и отдать его под номер узла, как мы это можем сделать? Правильно! Обнулить предпоследний бит маски подести, для такой ситуации будет действовать формула 2 2 = 4. Раз теперь мы можем изменять два последних бита IP-адреса и значение у нас только два, то получается, что два нужно возвести во вторую степень, чтобы узнать количество доступных IP-адресов. Тогда у нас будет такая маска: 11111111 11111111 11111111 11111100, в десятичной системе счисления она будет выглядеть так: 255.255.255.252. Что будет, если мы обнулим у маски третий бит с конца, да всё очевидно, будет формула 2 3 = 8, а это значит, что такая маска выделяет нам восемь IP-адресов, при этом два IP-адреса уйдут на номер сети и broadcast, а шесть адресов будут в нашем распоряжении для нумерации узлов.

Заметили тенденцию? Мы можем определить количество IP-адресов, которые нам вырезает маска просто считая нули в конце и используя нашу формулу. Так, например, самая большая маска, которую можно использовать 11111111 11111111 11111111 11111111 или 255.255.255.255, тут нулей нет, значит наша формула примет такой вид: 2 0 = 1 и действительно, такая маска позволяет «выкусить» из общего пула только один IP-адрес, а самая маленькая маска у нас такая 0.0.0.0, то есть все 32-а бита имеют значение ноль, тогда формулка будет: 2 32 = 4 294 967 296.

Вот такую гибкость мы получаем в классовых сетях балгодаря механизмам CIDR и VLSM, маска переменной длины позволяет выкусывать и резать сети на подсети очень гибко. Также рекомендую вспомнить вам структуру IP-пакета, в его заголовке нет поля для маски подсети и она не передается по сети. Маску подсети используют конечные устройства (клиентские и серврерные компьютеры, можете почитать о взаимодействие клиент-сервер) и транзитные устройства (умные коммутаторы и маршрутизаторы, хабы сюда отнести нельзя, так как они работают на физическом уровне и оперируют битами, но никак не IP-пакетами), чтобы понять: принадлежит ли пакет к их подсети или нет на конечных устройствах, а транзитные используют маски, когда пытаются понять в каком направлении будет выгоднее всего отправить пришедший пакет.

4.6.4 Как узнать номер сети и как определить номер узла

До этого мы говорили о маске подсети абстрагировано от IP-адреса, давайте теперь перейдем к конкретике и посмотрим, как маска подсети переменной длины позволяет определять по IP-адресу где там номер сети, а где номер узла. В бесклассовых сетях одного IP-адреса недостаточно, чтобы понять, где номер сети, а где номер узла, здесь обязательно нужна VLSM.

Для примера возьмем IP-адрес 137.98.16.45 и маску 255.255.255.192. Какие выводы мы можем сделать сразу? А можем мы сделать выводы сразу о том, что к номеру сети точно относится вот эта часть IP-адреса: 137.98.16.x, остается только понять, что скрывается за этим «х»? Переведем в двоичную систему счисления и IP-адрес, и маску целиком.

что такое cidr сети. Смотреть фото что такое cidr сети. Смотреть картинку что такое cidr сети. Картинка про что такое cidr сети. Фото что такое cidr сети

Рисунок 4.6.3 Переводим IP-адрес и маску подсети в двоичную систему счисления

Итак, результат перед вами в таблице выше, надеюсь, многим из вас, как и мне, проще сперва увидеть логику вычислений, а не читать длинные объяснения, и меня простят за то, что я сперва показал результат, а затем объясняю:

В итоге у нас получилось следующее:

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

Для примера используем IP-адрес 10.10.10.135 и маску 255.255.255.224. Снова сделаем нашу табличку, но особых пояснений я давать не будут, цифры скажут больше.

что такое cidr сети. Смотреть фото что такое cidr сети. Смотреть картинку что такое cidr сети. Картинка про что такое cidr сети. Фото что такое cidr сети

Рисунок 4.6.4 Определяем номер сети и номер узла по IP-адресу и маске

Тогда у нас получается следующие характеристики подсети:

Как видите, ничего сложного в том, чтобы узнать номер сети и номер узла по известному IP-адресу и маске нет. Нужно только уметь переводить числа из десятичной системы в двоичную и выполнять простую операцию из булевой алгебры.

4.6.5 Как разделить сеть на подсети

Пока все было просто, надеюсь, что так будет и в дальнейшем, сейчас нам нужно научиться разделять сети на подсети, это лишь немного сложнее, чем определять номер сети и номер узла. Давайте смотреть на примере. Перед нами поставлена следующая задача: нам дана сеть с маской 192.168.1.0/24 и сказано, что нужно разделить эту сеть на шесть подсетей: три подсети должны обеспечить по два узла IP-адресами и еще три подсети должны быть одинакового размера. Давайте приступать. Начинать мы будем с маленьких подсетей и переходить к большим.

Стоит дать пояснение к записи 192.168.1.0/24. Это сокращенная форма записи IP-адреса и маски, ее можно было бы заменить на 192.168.1.0 255.255.255.0. Если перевести эту маску в двоичный вид и посчитать количество единиц, то их будет ровно 24, отсюда и запись «/24». Например, если вам дадут такую запись 192.168.1.0/30, то это будет означать: 192.168.1.0 255.255.255.252, ведь в такой маске тридцать единиц.

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *