Foreversoft.ru

IT Справочник
5 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

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

Предложение от 8host.com

Сетевые технологии: 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 бита для удобочитаемости заменены пробелом, а точки пунктиром):

1100 0000 — 1010 1000 — 0000 0000 — 0000 0101

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

Несмотря на некоторые отличия в функциональности 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-адрес, просмотрев эти биты.

  1. Класс А: 0—. Если первый бит в адресе – 0, значит, адрес относится к диапазону А (это адреса от 0.0.0.0 до 127.255.255.255).
  2. Класс B: 10—. К этому классу относятся все адреса от 128.0.0.0 до 191.255.255.255. Это адреса, первый бит которых представлен единицей, а второй – нет.
  3. Класс C: 110-. Это адреса от 192.0.0.0 до 223.255.255.255. Их первые два бита представлены единицей, а третий – нет.
  4. Класс D: 1110. Первые три бита этого класса представлены единицей. Это адреса в диапазоне от 224.0.0.0 до 239.255.255.255.
  5. Класс Е: 1111. Это адреса в диапазоне от 224.0.0.0 до 239.255.255.255. Этот класс включает в себя все адреса, которые начинаются с 1111.

Адреса класса 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 можно выразить в бинарном коде:

1100 0000 — 1010 1000 — 0000 0000 — 0000 1111

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

1111 1111 — 1111 1111 — 1111 1111 — 0000 0000

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

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

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

1100 0000 — 1010 1000 — 0000 0000 — 0000 0000

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

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

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

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

1100 0000 — 1010 1000 — 0000 0000

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

1111 1111 — 1111 1111 — 1111 1111 — 0000 0000

1111 1111 — 1111 1111 — 1111 1111 — 1000 0000

В традиционной нотации 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) может быть представлена в двоичном коде так:

1100 0000 — 1010 1000 — 0000 0000 — 0000 0000

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

1100 0000 — 1010 1000 — 0000 0001 — 0000 0000

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

1111 1111 — 1111 1111 — 1111 1110 — 0000 0000

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

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

Заключение

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

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

Конвертируем диапазон IP в бесклассовую адресацию (CIDR) и обратно в Go

При прохождения очередного собеседования мне задали небольшое тестовое задание, написать на Go сетевой сканер открытых портов. Задание в принципе не сложное, но одним из условий было, что в качестве параметра может быть передан как IP-адрес, так и диапазон сетевых адресов в виде сетевой маски: 192.168.8.0/21.

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

Немного теории, но тем, кто уже знаком с терминами можно пропустить и сразу перейти к алгоритму.

И так, что такое IP я думаю всем понятно и пояснять не нужно. Теперь что такое CIDR (или сетевая маска). Представим, что у нас есть IP: «192.168.11.10». На самом деле это 8-битовые значения разделенные точками, и каждая отдельная часть это так называемый октет. Понятно, что IP можно представить в виде 32-битового числа.

Именно такое число и передается в IP-пакете. Теперь давайте представим, что у нас есть подсеть состоящая из 8 хостов — 192.168.11.0 до 192.168.11.7 (Note: 192.168.11.0 нельзя использовать в качестве адреса какого-либо сетевого интерфейса, так как этот адрес используется как идентификатор подсети, поэтому фактически адресов будет 7, но для нашего пример это пока не имеет значения.)
Понятно, что подсетей может быть несколько в рамках одном большой сети и отправлять пакет внутри своей подсети нужно напрямую, а скажем если пакет нужно направить в другую подсеть допусти на IP: 192.168.11.22, то его нужно направить сетевому маршрутизатору, который перенаправить этот пакет в другую подсеть. Хранить на хосте отправителе все адреса своей подсети накладно и бессмысленно, поэтому мы просто храним сетевую маску и для выше обозначенной сети из 8 хостов она будет равна — 255.255.255.248. Теперь если разложить сетевую маску на биты — получим 29 единиц и 3 нулей.

Читать еще:  Адрес блока состоит из

Маска подсети никогда не может перемешивать “1” и “0”, поэтому всегда сначала идет последовательность “1”, а потом последовательность “0”. Теперь диапазон выше обозначенных адресов 192.168.11.0 до 192.168.11.7, можно представить как / , т.e. 192.168.11.0/29. Это и есть бесклассовая адресация или Classless Inter-Domain Routing (CIDR) и в этой компактной форме можно представить любой диапазон IP адресов. Относительно правильного разбиения на подсети и маршрутизации имеет смысл обратиться к специализированной литературе и не является целью данной статьи — я надеюсь меня простят сетевые администраторы.

И так сам алгоритм c комментариями приведен ниже. Сразу скажу, что для диапазона 216.58.192.12 — 216.58.192.206, нет возможности разбить на одну подсеть и алгоритм сразу разобьет диапазон на несколько подсетей:
<
«216.58.192.12/30»,
«216.58.192.16/28»,
«216.58.192.32/27»,
«216.58.192.64/26»,
«216.58.192.128/26»,
«216.58.192.192/29»,
«216.58.192.200/30»,
«216.58.192.204/31»,
«216.58.192.206/32”
>

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

Note: только для Go разработчиков: алгоритм можно сделать еще более производительным, если возвращать данные в формате — (IP, *IPNet, error), но для универсальности я возвращаю данные как string.

Код сетевого сканера лежит тут: GitHub. Если поставите звездочку, буду благодарен, но только, если я ее заслужил :))

Что такое CIDR?

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

Для чего нужна адресация в IP-сетях?

В целом адресное пространство в IP-сетях конечно. Например, в IPv4 сетях (это основной протокол на сегодняшний день для глобальной сети Интернет), длина каждого отдельного IP-адреса равна 32 битам, что в совокупности дает адресное пространство количеством 2 32 = 4 294 967 296 всех возможных адресов (чуть более 4 миллиардов адресов). В то же время новый стандарт IPv6 определяет IP-адреса длиной в 128 бит, что существенно увеличивает адресное пространство до числа примерно равному 3.4×10 38 адресов. Это в 79 228 162 514 264 337 593 543 950 336 раз больше, чем адресное пространство IPv4. Примерно 79 септиллионов! Если каждому из 7 миллиардов жителей выделить по пространству адресов, равному IPv4 из пространства адресов IPv6, то каждый из нас получит примерно по 11 318 308 930 609 191 085, то есть примерно по 11.3 квадриллиона IPv4 адресных пространств. Но хотя эти числа и столь огромны, они все равно конечны.

Поскольку Интернет из себя представляет множество различных сетей, объединенных в одну глобальную сеть, существует необходимость каким-то образом распределять адреса из глобального пространства и выделять их в пользование отдельным сетям. Более крупные сети могуть выделять отдельные блоки из своего адресного пространства и распределять их между своими подсетями и так далее.

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

CIDR по своей сути и является таким специальным методом выделения некоторых блоков адресов отдельным сетям.

Как это работает?

Давайте рассмотрим принципы CIDR на примере адресного пространства IPv4, поскольку более мелкие цифры будут смотреться на этой странице более наглядно. В целом, основные принципы будут также применимы и к пространству IPv6.

Итак, первым делом вспомним, как выглядит IPv4 адрес, например — 198.51.100.15, то есть это 4 блока десятичных чисел от 0 до 255, разделенных символом точка.

В целом же, по своей природе, это просто целое число длинной 32 бита. Бит — это минимальная единица информации, которой оперирует компьютер. Большинство наших компьютеров оперируют двоичными битами, то есть такими, которые могут принимать два состояния и описаны числами 0 и 1. Это значит, если представить IPv4 адрес в двоичном представлении из единиц и нулей (то, как видит его компьютер), то получиться цепочка из единиц и нулей длинной в 32 символа (разряда). Например, минимальный адрес IPv4 будет выглядеть так:

а максимальный — так:

Поскольку большинство современных компьютеров оперируют байтом информации равном 8 битам, можно разделить эти 32 бита на 4 октета, и записать их через точку в виде (давайте возьмем теперь адрес из нашего примера):

Если перевести эту переписать в десятичное представление (что нам людям более привычно для восприятия), то мы и получим IP-адрес в привычном для нас виде — 198.51.100.15

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

Чтобы при маршрутизации пакетов компьютер мог определить начальный адрес сети (а это необходимо для реализации маршрутизации пакетов) применяют понятие битовой маски подсети. В CIDR применяются сетевые маски переменной длинны (VLSM — variable length subnet mask). При таком подходе маску определяют как количество единичных старших бит в маске и записывают через символ «/» сразу после IP-адреса. Допустим маска нашей подсети — это 24 старших единичных бита, то есть для компьютера она выглядит так:

Читать еще:  Бесклассовая адресация ipv4

То в этом случае CIDR запись c маской для нашего адреса будет выглядеть так (в десятичном представлении):

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

Или в десятичном виде:

Количество нулей в младших битах маски определяют максимальное количество возможных адресов в сети. Их подсчитать достаточно просто. Считаем количество нулей. Если у нас из 32 бит 24 определены единицами, то нулей будет 32 — 24 = 8. То есть — это 8 разрядов, свободных для адресов сети. Так как каждый разряд может принимать 2 значения (0 или 1) то всего у нас получается 2 8 возможных комбинаций, что равно 256, это в свою очередь равно ряду чисел от 0 до 255. Таким образом последний адрес в нашей подсети будет 198.51.100.255 (он же — широковещательный). То есть знание адреса и его маски подсети дает возможность определить и начальный и конечный адреса сети, и количество реальных возможных узлов внутри сети. В нашем примере, CIDR запись вида 198.51.100.15/24 подробно описывает следующую информацию:

адрес узла — 198.51.100.15

маска его подсети — 255.255.255.0

количество возможных узлов в подсети — 256

начальный адрес сети — 198.51.100.0

широковещательный адрес сети — 198.51.100.255

  • количество реальных возможных узлов (хостов) сети — 254
  • Другими словами, блок адресов с маской /24 позволяет создать подсеть, например, из 254 одновременно подключенных к сети компьютеров (узлов или хостов).

    Таблица масок переменной длинны

    Основываясь на описанных выше правилах CIDR адресации можно построить следующую таблицу VLSM, которая может стать хорошим подспорьем в работе любого системного администратора сети.

    CIDRМаскаКол-во
    адресов
    Кол-во
    узлов
    Класс
    A.B.C.D/32255.255.255.255111/256 C
    A.B.C.D/31255.255.255.254221/128 C
    A.B.C.D/30255.255.255.252421/64 C
    A.B.C.D/29255.255.255.248861/32 C
    A.B.C.D/28255.255.255.24016141/16 C
    A.B.C.D/27255.255.255.22432301/8 C
    A.B.C.D/26255.255.255.19264621/4 C
    A.B.C.D/25255.255.255.1281281261/2 C
    A.B.C.0/24255.255.255.000256254C
    A.B.C.0/23255.255.254.0005125102 C
    A.B.C.0/22255.255.252.0001 0241 0224 C
    A.B.C.0/21255.255.248.0002 0482 0468 C
    A.B.C.0/20255.255.240.0004 0964 09416 C
    A.B.C.0/19255.255.224.0008 1928 19032 C
    A.B.C.0/18255.255.192.00016 38416 38264 C
    A.B.C.0/17255.255.128.00032 76832 766128 C
    A.B.0.0/16255.255.000.00065 53665 534B
    A.B.0.0/15255.254.000.000131 072131 0702 B
    A.B.0.0/14255.252.000.000262 144262 1424 B
    A.B.0.0/13255.248.000.000524 288524 2868 B
    A.B.0.0/12255.240.000.0001 048 5761 048 57416 B
    A.B.0.0/11255.224.000.0002 097 1522 097 15032 B
    A.B.0.0/10255.192.000.0004 194 3044 194 30264 B
    A.B.0.0/9255.128.000.0008 388 6088 388 606128 B
    A.0.0.0/8255.000.000.00016 777 21616 777 214A
    A.0.0.0/7254.000.000.00033 554 43233 554 4302 A
    A.0.0.0/6252.000.000.00067 108 86467 108 8624 A
    A.0.0.0/5248.000.000.000134 217 728134 217 7268 A
    A.0.0.0/4240.000.000.000268 435 456268 435 45416 A
    A.0.0.0/3224.000.000.000536 870 912536 870 91032 A
    A.0.0.0/2192.000.000.0001 073 741 8241 073 741 82264 A
    A.0.0.0/1128.000.000.0002 147 483 6482 147 483 646128 A
    0.0.0.0/0000.000.000.0004 294 967 2964 294 967 294256 A

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

    Классовая и безклассовая адресация сетей

    Эта публикация является продолжением статьи Белые и серые IP адреса Ipv4 и описывает маску сети, второй по важности параметр сетевого устройства после адреса IPv4.

    Что такое маска подсети

    Маска подсети определяет диапазон адресов которые входят в сеть. Является битовой непрерывной последовательностью единиц и нулей (единицы и нули не могут быть вперемешку).

    В качестве примера, классическая маска для сетей класса С в двоичном представлении выглядит так: 11111111.11111111.11111111.00000000 или привычно в десятичном так: 255.255.255.0.

    Опираясь на адрес с помощью маски можно определить, какая часть является адресом сети, а какая — адресом самого узла в этой сети.

    Разберем на примере: пусть у устройства в сети (компьютера) есть сетевой адрес 192.168.15.23, при этом маска сети равна 255.255.255.0. В таком случае 192.168.15 — это адрес сети, 23 — адрес устройства в этой сети. При этом, согласно указанной маске, количество устройств в сети составляет 254 штук.

    Количество устройств в сети

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

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

    Классовая адресация

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

    В классовой адресации использовались маски фиксированные по октетам, например 255.255.255.0 или 255.255.0.0.

    Сети класса A, B и C имеют маски по умолчанию, также известные как естественные маски:
    Class A: 255.0.0.0
    Class B: 255.255.0.0
    Class C: 255.255.255.0

    Сейчас когда говорят, что используется сеть класса С, то скорее всего имеется ввиду, что используется маска 255.255.255.0.

    Windows и маска по-умолчанию

    Если в ручную задаете адрес сетевой карте в компьютере под управлением операционной системы Windows, то для сети 192.168.X.X вам автоматически предлагается маска 255.255.255.0

    Вы думаете Windows ничего не знает о безклассовой адресации? Нет, Windows отлично работает с безклассовой адресацией, просто ей надо вам предложить какую-нибудь маску, вот она и предлагает самый популярный вариант для этой сети. Для сети 172.16.X.X будет предложена маска 255.255.0.0, а для 10.X.X.X — 255.0.0.0

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

    В безклассовой адресации используется плавающая маска, то есть граница между единицами и нулями не зафиксирована по октетам. Например, если вам нужно в сети 192.168.14.0 организовать подсеть из 510 устройств, то вы используете маску 255.255.254.0 и битовая последовательность у вас будет выглядеть так: 11111111.11111111.11111110.00000000.

    Сеть:192.168.14.0/2311000000.10101000.00001110.00000000
    Сетевая маска:255.255.254.0 = 2311111111.11111111.11111110.00000000
    Минимальный IP:192.168.14.111000000.10101000.00001110.00000001
    Максимальный IP:192.168.15.25411000000.10101000.00001111.11111110
    Broadcast:192.168.15.25511000000.10101000.00001111.11111111
    Число хостов:510

    Благодарности

    При написании статьи были использованы следующие источники:

    Ссылка на основную публикацию
    Adblock
    detector