диапазон адресов класса d
Классы адресов IPv4 их структура и описание
В пространстве IP-адресов IPv4 существует пять классов: A, B, C, D и E. Каждый класс имеет определенный диапазон IP-адресов (и в конечном итоге определяет количество устройств, которые вы можете иметь в вашей сети). В первую очередь, классы A, B и C используются большинством устройств в Интернете. Класс D и класс E предназначены для специального использования.
В приведенном ниже списке показаны пять доступных классов IP, а также количество сетей, которые каждая может поддерживать, и максимальное количество хостов (устройств), которые могут быть в каждой из этих сетей. Четыре октета, составляющие IP-адрес, обычно обозначаются abcd, например 127.10.20.30.
Кроме того, также предоставляется информация о частных адресах и адресе петли (используется для устранения неполадок в сети).
Публичный адрес класса А
Адреса класса A предназначены для сетей с большим количеством хостов. Класс A позволяет использовать 126 сетей с использованием первого октета для идентификатора сети. Первый бит в этом октете всегда установлен и равен нулю. И все следующие семь бит в октете устанавливаются в единицу, что затем завершает идентификатор сети. 24 бита в оставшихся октетах представляют идентификатор хоста, что позволяет использовать 126 сетей и примерно 17 миллионов хостов в каждой сети. Значения номеров сетей класса A начинаются с 1 и заканчиваются 127.
Публичный адрес класса B
Адреса класса B предназначены для сетей среднего и большого размера. Класс B допускает 16 384 сети с использованием первых двух октетов для идентификатора сети. Два бита в первом октете всегда устанавливаются и фиксируются на 1 0. Оставшиеся 6 бит вместе со следующим октетом составляют полный идентификатор сети. 16 бит в третьем и четвертом октете представляют идентификатор хоста, что позволяет использовать примерно 65 000 хостов в сети. Значения номеров сетей класса B начинаются со 128 и заканчиваются 191.
Публичный адрес класса C
Адреса класса C используются в небольших локальных сетях (LAN). Класс C допускает приблизительно 2 миллиона сетей, используя первые три октета для идентификатора сети. В адресе класса C три бита всегда устанавливаются и фиксируются на 1 1 0. А в первых трех октетах 21 бит завершает общий идентификатор сети. 8 бит последнего октета представляют идентификатор хоста, позволяющий использовать 254 хоста в одной сети. Значения номеров сетей класса C начинаются с 192 и заканчиваются 223.
Класс D
Классы D не выделяются хостам и используются для многоадресной рассылки.
Класс E
Классы E не назначаются хостам и не доступны для общего использования. Они зарезервированы для исследовательских целей.
Частные адреса
В каждом классе сети есть назначенный IP-адрес, который зарезервирован специально для частного / внутреннего использования. Этот IP-адрес нельзя использовать на устройствах с выходом в Интернет, поскольку они не маршрутизируются. Например, веб-серверы и FTP-серверы должны использовать неперсонализированные IP-адреса. Однако в вашей домашней или деловой сети частные IP-адреса назначаются вашим устройствам (например, рабочим станциям, принтерам и файловым серверам).
Всё об IP адресах и о том, как с ними работать
Доброго времени суток, уважаемые читатели Хабра!
Не так давно я написал свою первую статью на Хабр. В моей статье была одна неприятная шероховатость, которую моментально обнаружили, понимающие в сетевом администрировании, пользователи. Шероховатость заключается в том, что я указал неверные IP адреса в лабораторной работе. Сделал это я умышленно, так как посчитал что неопытному пользователю будет легче понять тему VLAN на более простом примере IP, но, как было, совершенно справедливо, замечено пользователями, нельзя выкладывать материал с ключевой ошибкой.
В самой статье я не стал править эту ошибку, так как убрав её будет бессмысленна вся наша дискуссия в 2 дня, но решил исправить её в отдельной статье с указание проблем и пояснением всей темы.
Для начала, стоит сказать о том, что такое IP адрес.
IP-адрес — уникальный сетевой адрес узла в компьютерной сети, построенной на основе стека протоколов TCP/IP (TCP/IP – это набор интернет-протоколов, о котором мы поговорим в дальнейших статьях). IP-адрес представляет собой серию из 32 двоичных бит (единиц и нулей). Так как человек невосприимчив к большому однородному ряду чисел, такому как этот 11100010101000100010101110011110 (здесь, к слову, 32 бита информации, так как 32 числа в двоичной системе), было решено разделить ряд на четыре 8-битных байта и получилась следующая последовательность: 11100010.10100010.00101011.10011110. Это не сильно облегчило жизнь и было решение перевести данную последовательность в, привычную нам, последовательность из четырёх чисел в десятичной системе, то есть 226.162.43.158. 4 разряда также называются октетами. Данный IP адрес определяется протоколом IPv4. По такой схеме адресации можно создать более 4 миллиардов IP-адресов.
Максимальным возможным числом в любом октете будет 255 (так как в двоичной системе это 8 единиц), а минимальным – 0.
Далее давайте разберёмся с тем, что называется классом IP (именно в этом моменте в лабораторной работе была неточность).
IP-адреса делятся на 5 классов (A, B, C, D, E). A, B и C — это классы коммерческой адресации. D – для многоадресных рассылок, а класс E – для экспериментов.
Класс А: 1.0.0.0 — 126.0.0.0, маска 255.0.0.0
Класс В: 128.0.0.0 — 191.255.0.0, маска 255.255.0.0
Класс С: 192.0.0.0 — 223.255.255.0, маска 255.255.255.0
Класс D: 224.0.0.0 — 239.255.255.255, маска 255.255.255.255
Класс Е: 240.0.0.0 — 247.255.255.255, маска 255.255.255.255
Теперь о «цвете» IP. IP бывают белые и серые (или публичные и частные). Публичным IP адресом называется IP адрес, который используется для выхода в Интернет. Адреса, используемые в локальных сетях, относят к частным. Частные IP не маршрутизируются в Интернете.
Публичные адреса назначаются публичным веб-серверам для того, чтобы человек смог попасть на этот сервер, вне зависимости от его местоположения, то есть через Интернет. Например, игровые сервера являются публичными, как и сервера Хабра и многих других веб-ресурсов.
Большое отличие частных и публичных IP адресов заключается в том, что используя частный IP адрес мы можем назначить компьютеру любой номер (главное, чтобы не было совпадающих номеров), а с публичными адресами всё не так просто. Выдача публичных адресов контролируется различными организациями.
Допустим, Вы молодой сетевой инженер и хотите дать доступ к своему серверу всем пользователям Интернета. Для этого Вам нужно получить публичный IP адрес. Чтобы его получить Вы обращаетесь к своему интернет провайдеру, и он выдаёт Вам публичный IP адрес, но из рукава он его взять не может, поэтому он обращается к локальному Интернет регистратору (LIR – Local Internet Registry), который выдаёт пачку IP адресов Вашему провайдеру, а провайдер из этой пачки выдаёт Вам один адрес. Локальный Интернет регистратор не может выдать пачку адресов из неоткуда, поэтому он обращается к региональному Интернет регистратору (RIR – Regional Internet Registry). В свою очередь региональный Интернет регистратор обращается к международной некоммерческой организации IANA (Internet Assigned Numbers Authority). Контролирует действие организации IANA компания ICANN (Internet Corporation for Assigned Names and Numbers). Такой сложный процесс необходим для того, чтобы не было путаницы в публичных IP адресах.
Поскольку мы занимаемся созданием локальных вычислительных сетей (LAN — Local Area Network), мы будем пользоваться именно частными IP адресами. Для работы с ними необходимо понимать какие адреса частные, а какие нет. В таблице ниже приведены частные IP адреса, которыми мы и будем пользоваться при построении сетей.
Из вышесказанного делаем вывод, что пользоваться при создании локальной сеть следует адресами из диапазона в таблице. При использовании любых других адресов сетей, как например, 20.*.*.* или 30.*.*.* (для примера взял именно эти адреса, так как они использовались в лабе), будут большие проблемы с настройкой реальной сети.
Из таблицы частных IP адресов вы можете увидеть третий столбец, в котором написана маска подсети. Маска подсети — битовая маска, определяющая, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети.
У всех IP адресов есть две части сеть и узел.
Сеть – это та часть IP, которая не меняется во всей сети и все адреса устройств начинаются именно с номера сети.
Узел – это изменяющаяся часть IP. Каждое устройство имеет свой уникальный адрес в сети, он называется узлом.
Маску принято записывать двумя способами: префиксным и десятичным. Например, маска частной подсети A выглядит в десятичной записи как 255.0.0.0, но не всегда удобно пользоваться десятичной записью при составлении схемы сети. Легче записать маску как префикс, то есть /8.
Так как маска формируется добавлением слева единицы с первого октета и никак иначе, но для распознания маски нам достаточно знать количество выставленных единиц.
Таблица масок подсети
Высчитаем сколько устройств (в IP адресах — узлов) может быть в сети, где у одного компьютера адрес 172.16.13.98 /24.
172.16.13.0 – адрес сети
172.16.13.1 – адрес первого устройства в сети
172.16.13.254 – адрес последнего устройства в сети
172.16.13.255 – широковещательный IP адрес
172.16.14.0 – адрес следующей сети
Итого 254 устройства в сети
Теперь вычислим сколько устройств может быть в сети, где у одного компьютера адрес 172.16.13.98 /16.
172.16.0.0 – адрес сети
172.16.0.1 – адрес первого устройства в сети
172.16.255.254 – адрес последнего устройства в сети
172.16.255.255 – широковещательный IP адрес
172.17.0.0 – адрес следующей сети
Итого 65534 устройства в сети
В первом случае у нас получилось 254 устройства, во втором 65534, а мы заменили только номер маски.
Посмотреть различные варианты работы с масками вы можете в любом калькуляторе IP. Я рекомендую этот.
До того, как была придумана технология масок подсетей (VLSM – Variable Langhe Subnet Mask), использовались классовые сети, о которых мы говорили ранее.
Теперь стоит сказать о таких IP адресах, которые задействованы под определённые нужды.
Адрес 127.0.0.0 – 127.255.255.255 (loopback – петля на себя). Данная сеть нужна для диагностики.
169.254.0.0 – 169.254.255.255 (APIPA – Automatic Private IP Addressing). Механизм «придумывания» IP адреса. Служба APIPA генерирует IP адреса для начала работы с сетью.
Теперь, когда я объяснил тему IP, становиться ясно почему сеть, представленная в лабе, не будет работать без проблем. Этого стоит избежать, поэтому исправьте ошибки исходя из информации в этой статье.
Сети, подсети, классы подсетей. Таблица подсетей.
Введение
IP-адрес является 32-битным в длину и состоит из двух частей: адресной части сети и адресной части хоста. Сетевой адрес используется для определения сети и является общим для всех устройств, подключенных к сети. Адрес хоста (или узла) используется для определения конкретного устройства, подключенного к сети. Обычно IP-адрес имеет десятичное представление с разделительными точками, в которой 32 бита разделены на четыре октета. Каждый октет можно представить в десятичном формате с десятичной точкой в качестве разделителя.
Классы
Ниже приведены классы IP-адресов.
Класс A — Первый октет означает адрес сети, а последние три-адресную часть хоста. Любой IP-адрес, октет которого находится в диапазоне от 1 до 126 является адресом класса A. Следует учитывать, что 0 зарезервирован как часть адреса по умолчанию, а 127 зарезервировано для внутреннего тестирования с обратной связью.
Класс B — Первые два октета означают адрес сети, а последние два-адресную часть хоста. Любой адрес, первый октет которого находится в диапазоне от 128 до 191, является адресом класса B.
Класс С — Первые три октета означают адрес сети, а последний-адресную часть хоста. Первый октет, расположенный в диапазоне от 192 до 223 является адресом класса C.
Класс D — используется для многоадресной рассылки. Первые октеты IP-адресов многоадресной рассылки находятся в диапазоне от 224 до 239.
Класс E — зарезервирован для экспериментального использования и содержит диапазон адресов, в которых первый октет расположен в диапазоне от 240 до 255.
Создание подсетей и таблиц
Разбиение на подсети — это понятие, обозначающее разделение сети на меньшие части, называемые подсетями. Это можно сделать с помощью заимствования битов из части IP-адреса, в которой определяется хост, что позволяет более эффективно использовать сетевой адрес. Маска подсети определяет, какая часть адреса используется для определения сети, а какая означает хосты.
Приведенные ниже таблицы отображают все возможные способы разделения основной сети на подсети и в каждом случае показывают, сколько эффективных подсетей и хостов можно создать.
Существует три таблицы, по одной для каждого класса адресов.
В первом столбце показано количество заимствованных битов из адресной части хоста для подсети.
Во втором столбце показана полученная в результате маска подсети в десятичном формате с разделительными точками.
В третьем столбце показано число возможных подсетей.
В четвертом столбце показано число возможных допустимых хостов на каждую из трех подсетей.
В пятом столбце отображается количество битов маски подсети.
Таблица хостов/подсети класса A
Таблица хостов/подсети класса B
Таблица хостов/подсети класса C
Пример подсетей
Первая свободная запись в таблице класса A (маска подсети /10) заимствует два бита (крайние левые биты) из адресную части хоста сети для подсети. Благодаря этим двум битам образуются четыре комбинации формата (2 2 ): 00, 01, 10 и 11. Каждый из них представляет подсеть.
Примечание. Нулевая подсеть и подсеть «все единицы» включены в эффективное число подсетей, как показано в третьем столбце.
Несмотря на потерю двух битов у адресной части хоста остается еще 22 бита (из последних трех октетов). Это означает, что вся сеть класса A теперь разделена на четыре подсети, и в каждой подсети может быть 2 22 хоста (4194304). Адресная часть хоста «все нули» является номером сети, а адресная часть хоста «все единицы» зарезервирована для широковещательной рассылки в подсети, при этом эффективное число хостов равно 4194302 (2 22 — 2), как показано в четвертом столбце. Исключением из правила являются 31-битные префиксы, отмеченные знаком ( * ).
Использование 31-битных префиксов в соединениях «точка-точка» IPv4
RFC 3021 описывает использование 31-битных префиксов для соединений «точка-точка». Таким образом остается один бит для части id-хоста IP-адреса. Обычно id-хост со всеми нулями используется для представления сети или подсети, а id-хост со всеми единицами используется для представления направленной широковещательной рассылки. Используя 31-битные префиксы, id-хост, равный нулю, представляет один хост, а id-хост, равный единице, представляет другой хост соединения «точка-точка».
(Ограниченные) широковещательные рассылки локального соединения (255.255.255.255) могут все же использоваться с 31-битными префиксами. Но направленные широковещательные рассылки невозможны при использовании 31-битных префиксов. Это не является проблемой, так как в протоколах большинства маршрутов используется многоадресные, ограниченные или одноадресные рассылки.
Курс по основам компьютерных сетей на базе оборудования Cisco. Этот курс поможет вам подготовиться к экзаменам CCENT/CCNA, так как за его основу взят курс Cisco ICND1.
4.5 Классовые сети и классы сетей в протоколе IP. Классовая адресация в IP сетях
Привет, посетитель сайта ZametkiNaPolyah.ru! Продолжаем изучать основы работы компьютерных сетей и протокол сетевого уровня IP, а если быть более точным, то его версию IPv4. На этот раз мы разберемся с классовыми сетями и классовой адресацией в IP сетях, посмотрим какие классы были когда-то раньше и какие IP-адреса включали в себя эти классы, а также разберемся с основными механизмами работы классовых сетей.
Если тема компьютерных сетей вам интересна, то можете ознакомиться с другими записями курса.
4.5.1 Введение
Классовая адресация IP сетей — это первый механизм, с помощью которого узлы сети определяли судьбу IP-пакетов, этот механизм плавно перерос в CIDR и VLSM, которыми мы до сих пор пользуемся, чтобы проще было разобраться с CIDR и VLSM, нам нужно понять как работали классовые сети.
4.5.2 Классовая адресация IP сетей
Классовые сети в протоколе IP использовались с 1981 по 1993 год, начиная с 1993 года появились сети CIDR и механизм VLSM, поскольку гибкость и экономичность расходования IP-адресов в классовых сетях оставляла желать лучшего. Раз сети классовые, то значит есть и какие-то стандартные классы, вот они:
Как определить к какому классу сети принадлежит IP-адрес? Да очень просто, достаточно взглянуть на первых несколько бит в IP-адресе и всё станет ясно. Первых три класса IP-адресов определяли размер сети, сети класса D использовались для многоадресной рассылки, а сети класса E были зарезервированы для будущих целей.
Скорее всего на данный момент вы не встретите сетей, IP адресация в которых реализована при помощи классов. Отказ от классов и классовой адресации произошел главным образом из-за неэкономного расходования IP-адресов. А как вы наверно знает, в мире сейчас ощущается недостаток публичных IPv4 адресов.
4.5.3 Формат IP-адресов и классы сети
Когда мы разбирались со структурой IP-адреса я уже упоминал о том, что принадлежность к классу сети определяется первыми битами IP-адреса, но на самом деле это еще не всё, дело в том, что за первой последовательностью бит, определяющей классовую принадлежность, идет вторая последовательность, которая определяет сеть, к которой принадлежит IP-адреса или номер сети, а за ней третья последовательность для записи номера узла. Несколько таблиц ниже это наглядно демонстрируют.
Сначала давайте посмотрим на структуру IP-адреса из сети класса А:
Рисунок 4.5.1 Структура IP-адреса класса A
Здесь мы видим, что принадлежность IP-адреса к классу определяется первым битом IP-адреса, если он имеет значение 0, то это сеть класса А. Вспоминая двоичную систему счисления здесь и сейчас мы уже можем сделать следующий вывод: в классовых сетях половина всего пространства IP-адресов принадлежала классу А, поскольку ровно у половины IP-адресов самый крайний левый бит 0, у другой половины первый бит 1. Далее идет 7 бит, которые определяют номер сети класса А, давайте сейчас скажем, что если под номера сети нам выделено 7 бит, то это означает, что всего можно сделать 2 7 сетей внутри класса А или 128 сетей, а в каждую такую сеть мы можем поместить 2 24 узлов, ведь под номер узла нам здесь дается целых 24 бита, а это целых 16 777 216 узлов в одной подсети, итого получается, что сети класса А – это половина все адресного пространства в протоколе IPv4 или 2 147 483 392 IP-адреса. Изначально планировалась выдавать IP-адреса из сети класса А только очень крупным компаниям.
Если принять во внимания только те факторы, что мы описали выше, то получается, что сети класса А занимают пространство IP-адресов с 0.0.0.0 по 127.255.255.255, а из этого следует, что в сетях класса А первый октет определяет номер сети, а три других отданы под номер узла. Давайте теперь посмотрим на структуру IP-адреса из сети класса B.
Рисунок 4.5.2 Структура IP-адреса класса B
Здесь мы видим, что сеть класса B определяется по первым двум битам, если их значение 102, то перед нами IP-адрес из сети класса B, последующих 14 бит отданы под номер узла, а оставшихся 16 бит определяют номер хоста. Получается, что внутри класса B доступно 16384 сети или 214 номеров сети. И давайте пока скажем, что в одной сети класса B может быть 65536 узлов. А всего в сети класса B получается 1 073 741 824 IP-адреса, то есть одна четвертая IP-адресов от всего пула, планировалось выдавать сети из класса B только крупным компаниям.
Из того, что мы сказали выше получается, что первый IP-адрес в сети класса B 128.0.0.0, а последний 191.255.255.255, если принять во внимание структуру IP-адреса сети класса B, то первых два байта здесь отданы под номер сети, а оставшихся два байта определяют номер хоста. Перейдем к сетям класса C.
Рисунок 4.5.3 Структура IP-адреса класса C
Если первых три бита имеют значения 1102, то перед вами IP-адрес из сети класса C. А далее следует последовательность из 21 бита, которая отдана под номер сети, 21 + 3 = 24, следовательно, под номер хоста у нас остается 8 бит, ведь сам IP-адрес 32 бита. Получается, что внутри класса C можно нарезать 2 097 152 сети или 221 номеров сети. А внутри одной сети класса C может быть 2 8 номеров узла или 256 узлов. Нетрудно посчитать, что всего в классе C всего 536 870 912 IP-адресов, первый IP-адрес 192.0.0.0, а последний 223.255.255.255.
В сетях класса C первых три октета определяют номер сети, а последний байт используется для нумерации узлов. Ниже показана структура multicast IP-адреса в классовых сетях, для которых был выделен класс D.
Рисунок 4.5.4 Структура IP-адреса класса D
Какая тут логика? Попробуем ответить на вопрос: много ли мы знаем чисел в десятичной системе счисления от 0 до 255, у которых четыре старших разряда были бы представлены последовательностью 11102. Сначала ответим на вопрос: почему от 0 до 255? Да потому что в один октет можно записать число только из этого диапазона, больше уже не влезет, число 255 в двоичной системе записывается как 111111112, а число 256 уже записывается как 1000000002, то есть это уже 9 бит. С учетом ограничения в 8 бит выходит, что первое попадающее под последовательность 11102 это 224 (11100000), а последнее число, попадающее под эти условия, в двоичной системе будет выглядеть так: 111011112, в десятичной системе 239. Получается начальный IP-адрес сети класса D 224.0.0.0, а последний 239.255.255.255. Говорит о числе возможных хостов и сетей в данном случае не имеет смысла.
Перейдем к сетям класса E, которые никому не выдавались и были зарезервированы под различные эксперименты и будущие технические новшества в сетях передачи данных, структура IP-адреса сети класса E показана ниже.
Рисунок 4.5.5 Структура IP-адреса класса E
Здесь самое главное, чтобы первых четыре бита первого октета IP-адреса имели значение 11112. Руководствоваться здесь нужно той же логикой, которая у нас была при рассмотрении сети класса D, хотя можно сказать проще: все оставшиеся IP-адреса были зарезервированы и относились к сети класса Е. Начальный адрес сети класса E 240.0.0.0, а конечный адрес 255.255.255.255.
Тут вы должны меня прервать и сказать: «Стоп, а как мы можем проверить диапазоны IP-адресов каждого класса, вдруг ты нас обманываешь?». И это будет справедливо, проверять нужно всё и всегда. Давайте проверим диапазоны для сетей класса А и B вместе, а для всех остальных, если вам захочется вы сделаете это сами.
Начнем с класса А. У нас есть условие, что самый первый бит в IP-адресе сети класса А должен быть 0, следовательно, все остальные биты (а их осталось 31) могут быть какими угодно, тогда у нас получается, что самое маленькое число, которое мы можем записать в двоичном виде будет представлять собой 32-а нуля: 000000002 000000002 000000002 000000002, а самое большое число, которое попадает под условие будет таким: 011111112 111111112 111111112 111111112. Если написать эти адреса в десятичной системе, то мы получим: 0.0.0.0 и 127.255.255.255. Аналогично поступим с сетями класса B, только учтем, что здесь первых два бита имеют фиксированные значения 102. Тогда получается, что самое маленькое, что можно записать, с учетом этого условия, в двоичной системе счисления выглядит так: 100000002 000000002 000000002 000000002, а самое большое число так: 101111112 111111112 111111112 111111112. В десятичной системе эти IP-адреса записываются так: с 128.0.0.0 по 192.255.255.255.
4.5.4 Фиксированные маски классовых сетей
Когда я только знакомился с компьютерными сетями и разбирался с классовой адресацией, по началу я считал, что масок в классовых сетях нет, на практике с классовыми сетями мне не довелось работать, мне была доступна только теория из Интернета, практики у вас тоже не будет, но я вам сразу скажу, что маски в классовых сетях есть, только они строго фиксированы для первых трех классов сети. Но тогда зачем нужен механизм VLSM, спросите вы, если маски сети есть и в классовых сетях, а всё дело в том, что VLSM это маска переменной длинны, а в классовых сетях маска сети строго фиксирована. Да и вообще, как может не быть маски сети, как тогда компьютер или маршрутизатор или какой-нибудь умный коммутатор будут отличать одну сеть от другой, как они будут понимать в какой сети они находятся, естественно, им нужна для этого маска (вот тут можете почитать о разнице между хабами коммутаторами и роутерами).
Давайте начнем разбираться и поймем, как глупая железяка понимает, что вот это номер сети, а вот это номер узла. Для примера возьмем IP-адрес из сети класса А: 65.128.1.12. Если это IP-адрес из классовой сети, то я вам могу сразу сказать, что номер сети здесь 65.0.0.0, а номер узла 0.128.1.12, а широковещательный адрес в такой сети будет таким: 65.255.255.255. Тут сразу стоит сказать, что самый первый IP-адрес в сети никогда нельзя назначить ни одному узлу, так как это номер сети (65.0.0.0 в нашем случае), также нельзя назначить узлу самый последний IP-адрес (65.255.255.255), так как это широковещательный IP-адрес, узлы сети используют этот IP-адрес для того, чтобы сказать сразу всем соседям какую-то информацию, то есть если компьютер с IP-адресом 65.128.1.12 будет отправлять сообщения на IP-адрес 65.255.255.255, то эти сообщения получат и будут обязаны каким-либо образом обработать все узлы из его сети (то есть все узлы из сети с номером 65.0.0.0). Это похоже на ситуацию, когда вы стоите на площади и вещаете в громкоговоритель, вас услышит вся площадь.
Получается, я вас немного обманывал, когда говорил, что в одной сети класса А может быть 16 777 216 узлов, на самом деле их 16 777 214, так как самый первый IP-адрес отдан под номер сети, а последний является широковещательным, то же самое касается всех других сетей и классов: всегда один адрес уходит под номер сети, а другой является широковещательным, за парочкой исключений, которые мы обсудим в теме VLSM и CIDR.
Но мы так много сказали, но всё еще не приблизились к пониманию того, зачем нужны маски в классовых сетях. А всё очень просто, маски позволяют отделять сети внутри класса, а в классовых сетях они еще и фиксированы, напомню наш IP-адрес: 65.128.1.12. В классовых сетях для IP-адресов из диапазона с 0.0.0.0 по 127.255.255.255 можно задать только вот такую маску: 255.0.0.0, то есть маска 255.0.0.0 вместе с нулевым значением первого бита определяет, что данный IP-адрес относится к сети класса A. Это будет наглядно, если мы переведем IP-адрес и маску в двоичную систему счисления.
Рисунок 4.5.6 IP-адрес и маска подсети в двоичной системе счисления
Помните структуру IP-адреса сети класса А? Самый первый бит обязательно должен быть нулевой, в таблице я его выделил более крупным шрифтом, а следующих семь бит определяют номер узла в сети класса А, то есть 1 + 7 = 8, другими словами первый октет. А теперь посмотрите на первый октет в маске сети для сетей класса А, там все биты установлены в единицу. Вы должны помнить, что маска подсети, это такая штука, у которой сначала идут только единицы, а потом идут только нули, никаких разрывов быть не должно. А если IP-адрес наложить на маску, и для каждого бита IP-адреса, выполнить операцию «логическое И» с соответствующим битом маски сети, то мы узнаем номер узла, номер сети и широковещательный адрем. Получится следующее: там, где в маске стоят единицы, значения бит IP-адреса не изменятся, а там, где в маске стоят нули, значения бит IP-адреса обнуляется, таким образом мы узнаем номер сети. Таблица ниже это демонстрирует.
Рисунок 4.5.7 Номер сети и маска у IP-адреса класса A
Важно здесь то, что «логическое И» выполняется только между соответствующими битами, то есть сначала операция выполняется между между самым первым битом IP-адреса и самым первым битом маски и записывается результат, затем эта же операция выполняется между вторым битом IP-адреса и вторым битом маски, записывается результат, так продолжается до последнего бита. То есть операцию «логическое И» не нужно выполнять для каждого бита IP-адреса с каждым битом маски.
Напомню, что в классовых сетях размер маски является фиксированным, то есть для сетей класса А можно применять только маску 255.0.0.0, но уже не получится использовать маски 255.128.0.0 или 255.255.255.0, вас в приличном классовом обществе не поймут, получается, что маска фиксированной длины в классовых сетях являлась тем фактором, который приводил к неэкономному расходованию адресов, поскольку она была фиксированной. Собственно, на примере сети класса А мы разобрались с механизмом работы классовых сетей, теперь нам осталось посмотреть на маски сетей класса B и C.
Сначала посмотрим на класс B, я не буду объяснять все то, что было ранее, повторяться нет смысла, а сразу приведу табличку, которая все скажет за меня.
Рисунок 4.5.8 Номер сети и маска у IP-адреса класса B
Накладываем маску на IP-адрес и узнаем, что номер сети 131.10.0.0, широковещательный адрес здесь будет 131.10.255.255, а все остальные адреса можно забирать под узлы. То есть для сетей класса B можно использовать только маску 255.255.0.0. Первых два бита, которые говорят о принадлежности к сети класса B выделены шрифтом и начертанием. Осталось посмотреть на сети класса C.
Рисунок 4.5.9 Номер сети и маска у IP-адреса класса C
Первые биты, которые говорят о том, что IP-адрес из сети класса C хорошо заметны, накладываем маску на IP-адрес и получаем всю необходимую информацию: 200.150.255.0 – это номер сети, 200.150.255.255 – это широковещательный адрес, все остальные IP-адреса можно забирать на нумерацию узлов в сети. В сетях класса C для нас доступна только такая маска: 255.255.255.0, и никаких других здесь быть не может.
Заметили особенность, которую можно называть лайфхаком для классовых сетей? Чтобы назвать номер сети, количество узлов в сети и широковещательный адрес, нам не нужно знать маску сети, нам достаточно одного IP-адреса, ведь каждый IP-адрес строго закреплен за классом, а у каждого класса фиксированная маска. Так, например, если нам скажут, что есть IP-адрес 10.10.10.10 из классовой IP сети, то вы без труда поймете, что этот IP-адрес относится, к сети класса А, а это значит, что у него в любом случае будет маска 255.0.0.0, из этого следует, что номер сети 10.0.0.0, широковещательный адрес 10.255.255.255, а все остальные адреса из этого диапазона можно забирать под номера узлов.
Стоит заметить, что для IP сетей, в которых адресация реализована на масках переменной длины, этот трюк уже не прокатит. Ведь там у любого IP-адреса может быть любая маска, так, например, в сетях VLSM у того же адреса 10.10.10.10 может быть маска 255.0.0.0, а может быть и 255.255.255.252. Во втором случае номер сети будет 10.10.10.8, широковещательный адрес будет 10.10.10.11, а под номера узлов у нас остается два адреса, поэтому если вам говорят, что сеть VLSM, дают IP-адрес и говорят: назови номер сети, вы просто обязаны будете сказать, а дайте еще и маску.
4.5.5 IP адресация в классовых сетях
В завершении для наглядности приведем несколько таблиц, которые помогут ориентироваться в вопросе: к какому классу сети относится тот или иной IP-адрес. Для начала вспомним, что несколько первых бит определяют принадлежность IP-адреса к классу сети, давайте на основе этой информации составим вспомогательную таблицу.
Рисунок 4.5.10 Классы сетей и их описание в протоколе IPv4
Обратите внимание на диапазон первого октета для сетей класса А, ранее я говорил, что сети класса А начинаются с 0.0.0.0 и заканчиваются 127.255.255.255, но все дело в том, что адреса с диапазона с 0.0.0.0 до 0.255.255.255 мы использовать не можем, так как они зарезервированы под специальные нужды, а IP-адреса с 127.0.0.0 по 127.255.255.255 отданы программным loopback интерфейсам и используются для их диагностики, то есть эти адреса всегда есть на любом компьютере и они всегда доступны, если сетевые библиотеки вашего компьютера работают корректно. По этим причинам я и указал диапазон значения первого октета для сети класса А с 1 по 126.
Приведем вторую таблицу, в которой собрана вся необходимая информация для быстрого расчета классовых сетей.
Рисунок 4.5.11 Классы сетей и их описание в протоколе IPv4
Эти две таблицы в принципе содержат всю необходимую информацию, которую нужно знать или уметь получить для того, чтобы успешно работать к классовыми IP-сетями. Стоит добавить следующее: у IP-пакета нет специального поля для маски подсети, там есть только IP-адрес источника и IP-адрес назначения, решения о дальнейшей судьбе IP-пакета устройства принимают путем наложения IP-адреса назначения на маски, которые заданы этим устройствам.
4.5.6 Выводы
Информация из этой темы на первый взгляд может показаться бесполезной, но она нужна для понимания процесса развития компьютерных сетей, если мы поймем из-за чего и как механизм классовых сетей был заменен механизмами VLSM и CIDR, для нас будет проще понять принцип работы современных компьютерных сетей, ведь замена классов на VLSM – это прямая ветвь развития, можно сказать, что механизм VLSM опирается на классовые сети.