Практика выделения IP-подсетей
Настройка протокола IP
Протокол IP является базовым в корпоративных сетях. На нем, как на фундаменте, выстраивают свою работу практически все остальные сопутствующие технологии. Незнание этого протокола делает бессмысленными все дальнейшие попытки получения знаний в данной области. По этой причине автор счел необходимым включить в книгу материал по протоколу IP, сделав акцент на практических методах его использования. Кроме того, логика изложения материала книги требует рассмотрения протокола IP именно в этой главе. Для четкого уяснения положения маршрутизаторов в распределенной сети, понимания технологии трансляции адресов, принципов работы протоколов маршрутизации и многих других технологий необходимо твердое знание механизма назначения адресного пространства в протоколе IP.
Протокол IP
Очень кратко рассмотрим основы протокола. Его описание дано в документе RFC 791. IP (Internet Protocol) является базовым протоколом всего стека TCP/ IP — он отвечает за передачу информации по сети. Информация передается блоками, которые называются дейтаграммами. IP является протоколом сетевого уровня, при этом для каждой среды передачи данных, например Ethernet и ATM, определен свой способ инкапсуляции IP-дейтаграмм. Маршрутизаторы пересылают инкапсулированные дейтаграммы по различным сетям, образуя объединение IP-сетей, по которому каждая рабочая станция может поддерживать связь по протоколу IP с любой другой рабочей станцией.
Услуги, предлагаемые протоколом IP, сводятся к негарантированной доставке дейтаграмм. Протокол IP не исключает потерь и дублирования дейтаграмм, доставки дейтаграмм с ошибками, а также нарушения порядка следования дейтаграмм, заданного при их отправлении.
Протокол IP выполняет фрагментацию и сборку дейтаграмм, если принятый размер кадров в рабочей сети (или участке распределенной сети) отличается от размера исходных дейтаграмм. В протоколе IP отсутствуют механизмы повышения достоверности передачи данных, управления протоколом и синхронизации, которые обычно предоставляются в протоколах более высокого уровня. Протокол IP получает информацию для передачи от протоколов, расположенных по сравнению с ним на более высоком уровне. К этим протоколам, прежде всего, относятся протоколы TCP и UDP. После получения информации протокол IP передает дейтаграммы через распределенную сеть, используя сервисы локальных сетей. Дейтаграмма состоит из заголовка и поля данных, которое следует сразу за заголовком. Длина поля данных определяется полем «Общая длина» в заголовке. На рис. 2.1 показан формат заголовка IP-дейтаграммы.
Номер версии 4 бита | Длина заголовка 4 бита | Тип сервиса 8 бита | Общая длина 16 бита | |||
Идентификатор (16 бит) | Флаги (3 бита) | Смещение фрагмента (13 бит) | ||||
Время жизни (8 бит) | Протокол (8 бит) | Контрольная сумма заголовка (16 бит) | ||||
Адрес отправителя (32 бита) | ||||||
Адрес получателя (32 бита) | ||||||
Опции (поле переменной длины) | Выравнивание до 32-разрядной граници | |||||
Рис. 2.1. Формат заголовка дейтаграммы протокола IP
· Поле «Номер версии» (Version) указывает на версию используемого протокола IP. В настоящее время распространена версия 4, но планируется переход к версии 6.
· Поле «Длина заголовка» (Header Lenght) определяет длину заголовка в 32-разрядных словах. Минимальный размер заголовка — 5 слов (20 байт). Следует отметить, что при увеличении объема служебной информации эта длина может быть увеличена за счет поля «Опции».
· Поле «Тип сервиса»- (Type of Service) определяет способ обслуживания дейтаграммы. Протокол IP обрабатывает каждую дейтаграмму независимо от ее принадлежности к тому или иному пакету. При этом используются четыре основных механизма: установка типа сервиса, установка времени жизни, установка опций и вычисление контрольной суммы заголовка. Типом сервиса характеризуется набор услуг, которые требуются от маршрутизаторов в распределенной сети. Эти параметры должны использоваться для управления выбором реальных рабочих характеристик при передаче дейтаграмм. В некоторых случаях передача дейтаграммы осуществляется с установкой приоритета, который дает данной дейтаграмме некоторые преимущества при обработке по сравнению с остальными.
· Поле «Время жизни»- (Time to live). При определенных условиях IP-дейтаграммы могут попасть в замкнутый логический контур (петлю), образованный некоторой группой маршрутизаторов. Иногда такие логические контуры существуют в течение короткого промежутка времени, но иногда они оказываются достаточно долговечными. Чтобы избавить сеть от дейтаграмм, циркулирующих в логических контурах слишком долго, протоколом IP устанавливается предельный срок пребывания дейтаграммы в сети. Он задается в поле «Время жизни» (TTL — Time To Live). Его содержимое уменьшается на единицу при прохождении дейтаграммы через маршрутизатор; при обнулении поля TTL дейтаграмма отбрасывается. Первоначально спецификации IP включали еще одно требование: поле TTL должно уменьшаться, по крайней мере, один раз в секунду. Поскольку поле TTL является 8-разрядным, это означает, что теоретически дейтаграмма может находиться в сети не более 4,25 минуты. На практике требование ежесекундного уменьшения поля TTL игнорируется, тем не менее в спецификациях многих протоколов следующих уровней (TCP) по-прежнему предполагается, что максимальное время жизни дейтаграммы в сети составляет лишь несколько минут.
· Поле «Идентификатор»- (Identification) используется для распознавания дейтаграмм, образованных в результате фрагментации. Все части фрагментирован-ной дейтаграммы должны иметь одинаковое значение этого поля.
· Поле «Общая длина» (Total Length) указывает общую длину дейтаграммы (заголовок и поле данных). Максимальный размер дейтаграммы может составлять 65 535 байт. В подавляющем большинстве сетей такой размер дейтаграмм не используется. По стандарту все устройства в сети должны быть готовы принимать дейтаграммы длиной 576 байт. Эти ограничения необходимы для передачи дейтаграмм в физических кадрах. Передача дейтаграммы в кадре называется инкапсуляцией. С точки зрения низших уровней дейтаграмма выглядит так же, как и любое другое сообщение в сети. Сетевое оборудование не работает с дейтаграммами, поэтому дейтаграмма является частью области данных кадра. Функции фрагментации и сборки также возложены на протокол IP. Фрагментация — это разделение большой дейтаграммы на несколько небольших частей. В большинстве локальных и глобальных сетей есть ограничения на максимальный размер единицы передаваемой информации. Эту величину называют максимальной единицей передачи (MTU — Maximum Transmission Unit). Например, в сетях Ethernet данная величина составляет 1500 байт, а в сетях FDDI — 4096 байт. Когда маршрутизатор переправляет дейтаграмму из одной сети в другую, может оказаться, что размер дейтаграммы окажется недопустимым в новой сети. Спецификация IP предусматривает следующее решение этой проблемы: маршрутизатор может разбить дейтаграмму на мелкие фрагменты, приемлемые для выходной среды, а в пункте назначения эти фрагменты будут объединены в дейтаграмму исходного вида. Формируемые маршрутизатором фрагменты идентифицируются смещением относительно начала исходной дейтаграммы. Дейтаграмма идентифицируется по отправителю, пункту назначения, типу протокола высокого уровня и 16-разрядному полю «Идентификатор». Все это в совокупности должно образовывать уникальную комбинацию. Следует подчеркнуть связь между полями «Время жизни» и «Идентификатор». Действительно, во избежание смешивания фрагментов двух разных дейтаграмм отправитель IP-данных обязан исключить ситуацию, когда в один пункт назначения по одному и тому же протоколу в течение жизненного цикла дейтаграммы будут отправлены две дейтаграммы с совпадающими идентификаторами. В связи с тем, что идентификатор 16-разрядный, а наибольшее время жизни дейтаграммы исчисляется минутами (будем считать, что оно порядка 2 минут), получаем скорость передачи — 546 дейтаграмм в секунду. При максимальном размере дейтаграммы, равном 64 Кбайт, имеем результирующую скорость около 300 Мбит/с. Проблема эффективного использования битов идентификатора оказалась практически решенной с появлением метода MTU Discovery, позволяющего определить значения MTU на всем пути к пункту назначения. Фрагментация и сборка производятся автоматически и не требуют от отправителя специальных действий. Каждая фрагментированная часть имеет тот же формат, что и исходная дейтаграмма. Использование фрагментации повышает вероятность потери исходной дейтаграммы, так как потеря даже одного фрагмента приводит к потере всей дейтаграммы. Сборка дейтаграммы осуществляется на месте назначения. Такой метод позволяет маршрутизировать фрагменты независимо.
· Поле «Флаги» (Flags) используется при фрагментации. Нулевое значение первого бита разрешает фрагментацию, а единичное — запрещает. Единичный второй бит указывает на последний фрагмент дейтаграммы.
· Поле «Смещение фрагмента» используется для указания смещения данных во фрагменте относительно начала исходной дейтаграммы. Чтобы получить смещение в байтах, надо умножить значение этого поля на 8. Первый фрагмент всегда имеет нулевое смещение. Поле используется при сборке фрагментов дейтаграммы после передачи по сетям с различными MTU.
ПРИМЕЧАНИЕ ------------------------------------------------------------------------
Здесь стоит упомянуть об атаке TearDrop Fragmentation. Эта атака относится к типу DoS (см. главу 4) и направлена на выведение компьютера из строя (общий сбой системы или потерю взаимодействия с другими компьютерами) за счет нестандартной фрагментации дейтаграмм протокола IP. Существует несколько вариантов этой атаки, таких как NewTear, Nestea, SynDrop и Bonk. Так, существует вариант, при котором атакующий посылает специально сформированную пару фрагментов дейтаграмм IP, которые при сборке на атакуемой системе формируют некорректный пакет протокола UDP. Причем второй фрагмент при сборке перезаписывает данные в середине заголовка UDP, содержащегося в первом фрагменте таким образом, что результирующая дейтаграмма получается как бы незавершенной, что может, например, вызвать останов операционной системы Windows NT с ошибкой STOP 0x0000000A или 0x00000019. Согласно данным компании ISS (Internet Security Systems), уязвимыми для этой атаки являются такие системы, как Windows NT, Windows 95, Linux. Компания Microsoft выпустила исправление, информацию о котором можно найти по следующему адресу (статья Q179129 «STOP 0x0000000A or 0x00000019 Due to Modified Teardrop Attack»): http://sup-port.microsoft.com/suppo rt/kb/articles/ql79/l/29.asp.
· Поле «Протокол» (Protocol) показывает, какому протоколу верхнего уровня принадлежит дейтаграмма. При поступлении дейтаграммы это поле указывает, какому приложению следует ее передать. Таблица 2.1 содержит перечень (неполный) ПРОТОКОЛОВ,
· Поле «Контрольная сумма» рассчитывается по всему заголовку. Так как некоторые поля заголовка меняют свое значение, например «Время жизни», при прохождении дейтаграммы через маршрутизаторы контрольная сумма проверяется и повторно рассчитывается при каждой модификации заголовка. Определение контрольной суммы заголовка обеспечивает безошибочность передачи дейтаграммы через сеть. Перед отправкой дейтаграммы вычисляется контрольная сумма, которая вносится в ее заголовок. При получении дейтаграммы вычисляется ее контрольная сумма, которая сравнивается со значением контрольной суммы в ее заголовке. Если в контрольной сумме обнаруживается ошибка, дейтаграмма отбрасывается. Контрольная сумма заголовка дейтаграммы применяется и во многих других протоколах, таких как UDP, TCP, ICMP и OSPF.
· Поля «Адрес отправителя» и «Адрес получателя» (Source Address, Destination Address) имеют одинаковую длину и структуру. Поля содержат 32-разрядные IP-адреса отправителя и получателя дейтаграммы.
· Поле «Опции» (Options) не обязательно и обычно используется при настройке сети. В этом поле может быть указан точный маршрут прохождения дейтаграммы в распределенной сети, данные о безопасности, различные временные отметки и т. д. Поле не имеет фиксированной длины, поэтому для выравнивания заголовка дейтаграммы по 32-разрядной границе предусмотрено следующее поле — поле «Выравнивание» (Padding). Выравнивание осуществляется нулями.
Классы адресов и их маски
Межсетевая схема адресации протокола IP описана в документах RFC 990 и RFC 997. При разработке протоколов стека TCP/IP рассматривался целый ряд методов идентификации конечных устройств в сети. Окончательным стало решение о присвоении адреса как сети, так и устройствам в этой сети. Основными доводами в пользу такого подхода явились: широкий диапазон назначений номеров сетей и устройств в них и возможность реализации маршрутизации. При этом адреса должны назначаться упорядоченно, для того чтобы сделать маршрутизацию более эффективной.
В сети, построенной на базе протокола TCP/IP, конечные устройства получают уникальные адреса. Эти устройства могут быть персональными компьютерами, коммуникационными серверами, маршрутизаторами и т. д. При этом некоторые устройства, которые имеют несколько физических интерфейсов, например маршрутизаторы, должны иметь уникальный адрес для каждого из своих интерфейсов. Исходя из схемы адресации и возможности того, что некоторые устройства в сети будут иметь несколько адресов, можно сделать вывод, что такая схема адресации описывает не само устройство в сети, а определенное соединение этого устройства с сетью. Это приводит к ряду неудобств. Одним из них является необходимость замены адреса устройства при перемещении его в другую сеть. Основной же недостаток в том, что для работы с устройствами, имеющими несколько подключений в распределенной сети, необходимо знать все его адреса, идентифицирующие эти подключения. Незнание хотя бы одного адреса может привести к тому, что эти устройства не получат необходимую информацию при отказе других соединений.
При стандартизации протокола IP в сентябре 1981 года его спецификация требовала, чтобы каждое устройство, подключенное к сети, имело уникальный 32-разрядный адрес. Этот адрес разбивается на две части. Первая часть адреса идентифицирует сеть, в которой располагается устройство. Вторая часть однозначно идентифицирует само устройство. Такая схема создает двухуровневую адресную иерархию (см. рис. 2.2).
1 2 3 ... ...30 31
КлючНомер сетиНомер хоста
Рис. 2.2. Формат адреса
В последнее время поле номера сети в адресе называется сетевым префиксом. Это связано с тем, что первая порция каждого IP-адреса идентифицирует номер сети. Все хосты в определенной сети имеют один и тот же сетевой префикс, но при этом номера хостов должны быть уникальны. Аналогично, любые два хоста, расположенные в разных сетях, должны иметь различные сетевые префиксы, но при этом они могут иметь одинаковые номера хостов.
Для обеспечения гибкости в присвоении адресов компьютерным сетям разработчики определили, что адресное пространство протокола IP должно быть разделено на три различных класса — А, В и С. Каждый из этих основных классов фиксирует границу между сетевым префиксом и номером хоста в различных точках 32-разрядного адреса. На рис. 2.3 показаны форматы основных классов.
Одно из основных достоинств использования классов заключается в том, что каждый адрес содержит ключ, который идентифицирует точку, расположенную между сетевым префиксом и номером хоста. Например, если старшие два бита адреса установлены в 10, то точка раздела находится между 15 и 16-м битами.
Недостатком этого метода является необходимость изменения сетевого адреса, когда в сетях класса С число устройств становится больше 255. В этом случае возникает необходимость замены адресов класса С на адреса класса В. Изменение сетевых адресов может потребовать от администратора сети больших усилий и достаточно много времени для проведения работ по отладке. Ввиду того, что су ществует четкая граница между классами адресов, администраторы сетей не могут заранее спланировать плавный переход изменения адресов. Вместо этого приходится достаточно жестко вмешиваться в работу сети: вводится запрет на использование некоторых сетевых адресов, производится одновременное изменение всех адресов устройств в этой сети. И только после этого сеть вновь включается в работу. Еще одним недостатком введения классов адресов является значительное уменьшение числа теоретически возможных индивидуальных адресов. В текущей версии протокола IP (версия 4) общее число адресов может составлять 232 (4 294 967 296), так как протокол предусматривает использование 32 бит для задания адреса. Использование части битов в служебных целях уменьшает доступное количество индивидуальных адресов.
Адрес класса А предназначен для использования в больших сетях, где количество компьютеров исчисляется тысячами. Каждый адрес класса А имеет 8-разрядный префикс сети, в котором старший бит установлен в 1, а следующие 7 бит используются для задания номера сети. Для задания номера хоста используются оставшиеся 24 бита. В настоящее время все адреса класса А уже выделены. Сети класса А также обозначаются записью /8, так как адреса этого класса имеют 8-разрядный сетевой префикс (7 + 1 = 8).
Максимальное число сетей класса А, которые можно определить, составляет 126 (27-2). Каждая сеть этого класса поддерживает максимум 16 777 214 (224-2) хостов. Так как адресный блок класса А может содержать максимум 231 (2 147 483 648) индивидуальных адресов, а в протоколе IP версии 4 может поддерживаться максимум 232 (4 294 967 296) адресов, то адресное пространство класса А занимает 50% предусмотренного адресного пространства.
Адрес класса В используется в сетях среднего размера, например в сетях крупной организации. Каждая сеть класса В имеет 16-разрядный префикс сети, в котором два старших бита установлены в 10, а следующие 14 бит используются для задания номера сети. Для задания номера хоста используются оставшиеся 16 бит. Сети класса В также обозначаются записью /16.
Максимальное число сетей класса В, которые можно определить, составляет 16 384 (214). Каждая сеть этого класса поддерживает максимум 65 534 (216-2) хоста. Так как весь адресный блок класса В может содержать максимум 230 (1 073 741 824) индивидуальных адресов, то он занимает 25% предусмотренного адресного пространства.
Адреса класса С используются в сетях с небольшим числом компьютеров. Каждая сеть класса С имеет 24-разрядный префикс сети, в котором три старших бита установлены в 110, а следующие 21 бит используются для задания номера сети. Для задания номера хоста используются оставшиеся 8 бит. Сети класса С также обозначаются записью /24.
Максимально возможное число сетей класса С составляет 2 097 152 (221). Каждая сеть этого класса поддерживает максимум 254 (28-2) хоста. Так как весь адресный блок класса С может содержать максимум 229 (536,870,912) индивидуальных адресов, он занимает 12,5% предусмотренного адресного пространства.
В дополнение к этим трем наиболее популярным классам адресов существует еще два класса. В классе D старшие четыре бита установлены в 1110. Этот класс используется для поддержки групповой передачи данных. В классе Е старшие четыре бита установлены в 1111, и этот класс является зарезервированным для экспериментального использования.
Для удобства в технической литературе, в прикладных программах и т. д. адреса протокола IP обычно представляются как четыре десятичных числа, разделенные точками. Каждое из этих чисел представляет значение одного из четырех октетов IP-адреса. При этом один октет соответствует 8 битам адреса. Рисунок 2.4 показывает, как адрес класса В может быть представлен в точечно-десятичной нотации.
Таблица 2.2 содержит диапазоны десятичных значений трех классов адресов. В этой таблице запись XXX представляет поле для указания адреса хоста.
Некоторые IP-адреса зарезервированы для определенных целей и не могут присваиваться конечным устройствам в сети. В табл. 2.3 перечислены зарезервированные IP-адреса.
В зарезервированных IP-адресах все установленные в ноль биты соответству ют либо данному устройству, либо данной сети. IP-адреса, все биты которых уста новлены в 1, используются при широковещательной передаче информации. Дл; ссылки на всю IP-сеть в целом используется адрес с номером хоста, у которого вс< биты установлены в 0. Сетевой адрес класса А 127.0.0.0 зарезервирован для обрат ной связи и введен для тестирования взаимодействия процессов на одной машине Когда приложение использует адрес обратной связи, стек TCP/IP возвращает эт! данные приложению, ничего не посылая по сети. Следует отметить, что в сетях построенных на базе протокола IP, запрещается присваивать устройствам IP-ад реса, начинающиеся с числа 127.
Все вышесказанное о классах адресов в протоколе IP и их свойствах можш обобщить в одной таблице (табл. 2.4). Обратите внимание на формат записи адре са для соответствующего класса: N обозначает адрес сети, а Н — адрес хоста в это! сети. Как уже отмечено, класс D используется для групповой доставки информа ции, а Е — экспериментальный класс.
Помимо возможности направленной передачи информации определенному хосту, существует широковещательная передача (broadcasting), при которой информацию получают все хосты в указанной сети. Положениями стандарта определено, что любой адрес, состоящий из одних единиц, зарезервирован для широковещания. В протоколе IP существует два типа широковещания: направленное (directed) и ограниченное (limited). Направленное широковещание позволяет хосту на удаленной сети передавать одну дейтаграмму, которая будет доставлена всем хостам в адресованной сети. Дейтаграмма с направленным широковещательным адресом может проходить через маршрутизаторы в распределенной сети, при этом исходная дейтаграмма будет доставлена всем хостам только в нужной сети, а не в промежуточных сетях.
При направленном широковещании адрес получателя содержит корректный номер сети и номер хоста, все биты которого установлены в нули или единицы. Например, адреса 185.100.255.255 и 185.100.0.0 будут рассматриваться как адреса направленного широковещания для сети 185.100.xxx.xxx класса В. Таким образом, направленные широковещательные адреса обеспечивают мощный механизм, позволяющий удаленному устройству посылать одну IP-дейтаграмму, которая будет доставлена в режиме широковещания в указанную сеть. Для получения более подробной информации о направленном широковещании можно обратиться к документу RFC 1812.
СОВЕТ
В рекомендациях компании Cisco Systems по внедрению системы безопасности в распределенной сети предлагается отключать поддержку направленного широковещания на промежуточных маршрутизаторах. В общем случае это отключение не повлияет на работоспособность конечных устройств в сети и на их связь друг с другом. Отключение направленного широковещания может препятствовать попыткам заполнения целевой сети ненужным широковещательным трафиком, который способен помешать нормальной работе. Для отключения этого механизма следует использовать команду no ip directed-broadcast в режиме конфигурации интерфейсов. Следующие команды отключают направленное широковещание через интерфейс EthernetO:
Router(config)#int ethQ Router(config)#no ip directed-broadcast
С точки зрения адресации, главным недостатком направленного широковещания является то, что требуется знание номера целевой сети. Вторая форма широковещания, называемая ограниченной, обеспечивает широковещательную передачу для сети отправителя независимо от указанного IP-адреса. Дейтаграмма с ограниченным широковещательным адресом никогда не сможет пройти через маршрутизаторы — последние не пропустят ее дальше себя в остальные части распределенной сети. При ограниченном широковещании биты номера сети и номера хоста состоят из одних нулей или единиц. Таким образом, дейтаграмма с адресом получателя 255.255.255.255 или 0.0.0.0 будет рассматриваться как дейтаграмма с ограниченным широковещанием.
Прежде чем использовать в сети (подключенной к Интернету) протоколы стека TCP/IP, необходимо получить один или несколько официальных сетевых номеров. Все адреса назначает одна организация — Internet Network Information Centre (InterNIC), что обеспечивает уникальность адресов. До апреля 1993 года назначением IP-адресов занималась организация Network Information Center (NIC).
В настоящее время эта организация выполняет запросы только для сетей Defense Data Network (DDN), иначе говоря для военных целей. Организация InterNIC назначает только сетевую часть адреса, или сетевой префикс, оставляя ответственность за назначение номеров хостов в этой сети самой организации, запросившей этот адрес.
Подсети
В 1985 году документом RFC 950 был определен стандартный процесс поддержки формирования подсетей, или разделения единственного номера сети классов А, В и С на меньшие части. Формирование подсетей было введено для преодоления следующих проблем:
· резкий рост таблиц маршрутизации в Интернете;
· появление дефицита номеров сетей при необходимости расширения их количества.
Обе эти проблемы решались путем добавления еще одного уровня иерархии к адресной структуре протокола IP. Вместо двухуровневой иерархии новая концепция формирования подсетей вводит поддержку еще одного уровня — третьего. На рис. 2.5 представлен процесс формирования подсетей, в котором номер хоста делится на две части: номер подсети и номер хоста в этой подсети.
Формирование подсетей решает проблему роста таблиц маршрутизации, так как конфигурация подсетей корпоративной сети никогда не видна за пределами организации. Маршруты из Интернета в любую подсеть данного IP-адреса одинаковы, независимо от того, на какой подсети расположен получатель. Это стало возможным потому, что все подсети данного номера сети используют один и тот же сетевой префикс, но с разными номерами подсетей. Маршрутизаторам в частной сети требуется различать отдельные подсети, а у маршрутизаторов в Интернете все эти подсети определены единственной записью в таблицах маршрутизации. Это позволяет администратору частной сети вносить любые изменения в логическую структуру сети без влияния на размер таблиц маршрутизации у маршрутизаторов в Интернете.
Формирование подсетей также позволяет решить вторую проблему, связанную с выделением организации нового сетевого номера или номеров при ее росте. Организации можно выделить один номер сети, после чего администратор имеет возможность произвольно присваивать номера подсетей
каждой из своих внутренних сетей. Это позволяет внедрять дополнительные подсети без необходимости получения нового сетевого номера.
На рис. 2.6 показан пример распределенной сети, состоящей из нескольких логических сетей, которые используют концепцию подсетей внутри одного адреса класса В. Граничный маршрутизатор получает весь трафик, адресованный сети 130.5.0.0 из Интернета, и передает его внутренним подсетям, основываясь на информации, содержащейся в третьем октете.
Формирование подсетей внутри частной сети организации дает следующие преимущества:
· размер глобальных таблиц маршрутизации в Интернете не растет, так как администратор частной сети не нуждается в получении дополнительной адресной информации;
· администратор получает возможность по своему усмотрению внедрять дополнительные подсети без получения новых номеров сетей;
· изменение топологии частной сети не влияет на таблицы маршрутизации в Интернете, поскольку маршрутизаторы в Интернете не имеют маршрутов в индивидуальные подсети организации — они имеют только маршрут в родительскую сеть.
Маска подсети
Если маршрутизаторы в Интернете используют для передачи трафика в окружение подсетей только сетевой префикс адреса получателя, то маршрутизаторы внутри этого окружения для передачи трафика индивидуальным подсетям используют расширенный сетевой префикс. Расширенный сетевой префикс состоит из префикса сети и номера подсети (см. рис. 2.7).
Структуру расширенного сетевого префикса можно представить в виде маски подсети (subnet mask). Маска подсети — это число, двоичная запись которого содержит единицы в тех разрядах, которые должны интерпретироваться как номер сети. Маска подсети позволяет провести четкую границу между двумя частями IP-адреса. Одна часть идентифицирует номер подсети, вторая используется для идентификации хостов в этой подсети.
Хосты и маршрутизаторы используют старшие биты IP-адреса для определения его класса. После того как класс определен, хост может легко найти границу между битами, использующимися для идентификации номера сети и для идентификации номера хоста в этой сети. Однако для определения границ битов, идентифицирующих номер подсети, такая схема не подходит. Для решения этого вопроса используется 32-разрядная маска подсети, которая помогает однозначно определить требуемую границу. Для стандартных классов сетей маски имеют следующие значения:
255.0.0.0 — маска для сети класса А;
255.255.0.0 — маска для сети класса В;
255.255.255.0 — маска для сети класса С.
Например, если используется адрес класса В 130.5.0.0 и сетевой администратор хочет использовать весь третий октет для номера подсети, ему необходимо указать маску подсети 255.255.255.0. Биты в маске подсети задают способ интерпретации битов адреса: если бит в маске подсети равен 1, то система, проверяющая адрес, должна рассматривать соответствующий бит в IP-адресе как часть расширенного сетевого префикса. Другими словами, после определения класса IP-адреса любой бит в части номера хоста, которому соответствует единичный бит в маске подсети, используется для идентификации номера подсети. Оставшаяся часть номера хоста, которой соответствует нулевое значение маски подсети, используется для задания номера хоста. На рис. 2.8 показан пример IP-адреса класса В с соответствующей маской подсети.
Все сказанное можно проиллюстрировать рисунком, из которого становится понятным механизм формирования маски подсети — происходит простое преобразование двоичной записи в десятичную (см. рис. 2.9).
В стандартах, описывающих современные протоколы маршрутизации, часто делается ссылка на длину расширенного сетевого префикса, а не на маску подсети. Данная длина эквивалентна количеству единичных битов в маске подсети. Это означает, что сетевой адрес 130.5.5.25 с маской подсети 255.255.255.0 может быть также записан как 130.5.5.25/24. Число 24 указывает на то, что в маске подсети
255.255.255.0 количество единичных битов равно 24. Такая запись является более компактной и легкой для понимания, чем запись с использованием маски подсети в ее традиционной точечно-десятичной нотации. Рисунок 2.10 иллюстрирует пример записи расширенного сетевого префикса.
. Следует отметить, что большинство современных протоколов маршрутизации переносят маску подсети в своих сообщениях. В то же время не существует стандартного протокола маршрутизации, который имел бы дополнительное однобайтовое поле в заголовке своих сообщений, определяющее число битов в расширенном сетевом префиксе. Протоколы маршрутизации передают полную четырехок-тетную маску подсети.
Перед тем как разрабатывать сеть на базе протокола IP, сетевому администратору необходимо ответить на следующие четыре важных вопроса:
1. Как много подсетей требуется организации сегодня?
2. Как много подсетей может потребоваться организации в будущем?
Для определения какой-либо подсети адмтмотриаиг к: метает двоичное представление ее номера (в данном примере для восыш твасегхш. это может быть число от 0 до 7) в битовое поле номера подсети. Наяршмвр,ЯШ1 определения подсети #4 администратор просто помещает двоичное преяопшвашве числа 4 (000001002) в трехбитовое поле номера подсети. Таблица 2.5. совдрввг нж восемь возможных вариантов подсетей рассматриваемого примера.
Самым простым способом проверки корректности опредевшиишииоетей является контроль кратности всех десятичных номеров подсетей померят подсети #1. В данном примере все номера подсетей кратны 32.
ПРИМЕЧАНИЕ
Компания Cisco Systems включила в свой программный продукт ConfigMaker v2.4 инструмент работы с адресами, называемый IP Subnet Calculator. Администратор, введя адрес и маску подсети, получает полную классификацию (см. рис. 2.12).
Когда схема введения подсетей была опубликована в документе RFC 950, запрещалось использование номеров подсетей, у которых все биты установлены в единицы или нули. Причиной такого ограничения является необходимость устранения возможных проблем при работе тех протоколов маршрутизации, которые не переносят в своих служебных сообщениях ни маску подсети, ни длину расширенного сетевого префикса. Например, если используется протокол маршрутизации RIP (его первая версия — обозначается как RIP-1), который не переносит маску подсети и длину расширенного сетевого префикса, маршруты в разные подсети с адресами 193.1.1.0 /27 и 193.1.1.0 /24 будут рассматриваться как идентичные. То есть без указания маски подсети маршрутизатор не делает различий между маршрутом в одну подсеть и маршрутом во всю сеть. Похожая проблема, но только с определением направления широковещания возникает и в случае равенства всех битов единице. Например, один адрес 193.1.1.255 используется как широковещательный для всей сети 193.1.1.0/24 и для подсети 193.1.1.224/27. Рисунок 2.13 иллюстрирует обе рассмотренные ситуации.
С разработкой протоколов маршрутизации, переносящих маску подсети (OSPF, IS-IS) с каждым рекламируемым маршрутом, стало возможно вопреки документу RFC 950 использовать подсети, все биты которых установлены в единицу и ноль. По этой причине производители позволяют настраивать подсети с такими номерами на портах своих маршрутизаторов. При этом нужно учитывать следующие два фактора: используемые в корпоративной сети протоколы маршрутизации, относящиеся к классу IGP, должны поддерживать маску подсети или расширенный сетевой префикс; необходима поддержка номеров подсетей со всеми единичными и нулевыми битами всеми маршрутизаторами в сети. Кроме того, иногда важно учитывать номер версии программного обеспечения маршрутизатора.
В рассматриваемом примере (табл. 2.6) остается 5 бит для задания адресов хостов в каждой подсети. В результате каждая подсеть может содержать блок из 30 адресов хостов (25 - 2 = 30), которые нумеруются от 1 до 30. Для определения адреса хоста N в сети администратор помещает
двоичноевракпввеяне числа N в поле номера хоста. Например, для определения адреса, иин^ийигпйипщшп присвоить хосту #28 в подсети #2, администратор просто ппмицаит дрииинпр представление 28 (111002) в пятибитовое поле подсети #2. В табл. 25 •оказаны некоторые возможные комбинации номеров хостов в подсети #2.
Для того чтобы проверить корректность широковещательного адреса для определенной подсети, можно использовать следующее простое правило: во всег случаях широковещательный адрес для подсети #N на единицу меньше, чем базовый адрес для подсети #(N+1). Например, широковещательный адрес для подсети #2 (193.1.1.95) на единицу меньше базового адреса подсети #3 (193.1.1.96).
Перед передачей дейтаграммы хосту необходимо определить:
1. Располагается ли получатель в той же подсети, что и отправитель?
2. Если существует более чем один маршрутизатор, имеющий маршрут в нужную сеть, какой маршрутизатор необходимо использовать отправителю?
До введения подсетей процесс передачи выполнялся путем выделения поля сетевого номера из IP-адреса получателя, содержащегося в заголовке IP-дейтаграммы, и последующего сравнения с собственным IP-адресом хоста. Если сетевые номера адреса отправителя и получателя совпадают, то они располагаются в одной локальной сети, и дейтаграмма может быть передана напрямую. Если номера сетей разные, то дейтаграмму необходимо посылать получателю, используя маршрутизатор по умолчанию.
После введения подсетей этот процесс значительно усложнился, так как получатель может располагаться в другой подсети той же самой сети, что и получатель. Для осуществления процесса передачи в этом случае используется маска подсети. Выполняется операция «логическое И» между IP-адресом получателя и маской подсети. Результат сравнивается с результатом выполнения той же операции, но для собственного IP-адреса хоста и той же маски подсети. Если результаты этих двух операций идентичны, то отправитель и получатель находятся в одной подсети и дейтаграмма может быть послана напрямую. Если результаты различны, то получатель находится в другой подсети. В этом случае дейтаграмма посылается маршрутизатору.
В табл. 2.7 и 2.8 представлены некоторые возможные (и наиболее часто используемые) варианты выделения подсетей для сетей классов В и С.
При рассмотрении примера разделения на подсети сети класса С 193.1.1.0 /24 была отмечена рекомендация относительно порядка битов при выделении подсетей. В документе RFC 1219 есть основное правило, которому желательно следовать при присвоении номеров подсетям и хостам. Номера подсетей назначают таким образом, чтобы старшие биты в номере подсети устанавливались первыми. Например, если поле номера подсети состоит из 4 бит, то первые несколько номеров подсетей должны быть следующими: 8 (10002), 4 (01002), 12 (11002), 2 (00102), 6 (01102) и т. д. Иными словами, единичные биты номеров подсетей рекомендуется устанавливать, начиная с крайней левой позиции. В то время как единичные биты номеров хостов рекомендуется устанавливать, начиная с крайней правой позиции (табл. 2.9).
Если следовать этому правилу, то на границе между номером подсети и номером хоста будут существовать нулевые биты. Это позволяет менять маску подсети без изменения IP-адреса, присвоенного хосту. Необходимость в изменении маски подсети может возникнуть при расширении числа хостов в каждой подсети, с учетом того, что планируемое число возможных подсетей обычно больше необходимого в настоящий момент. В этом случае существует возможность «заимствования» под номера подсетей некоторых битов из числа зарезервированных. Достоинством описанного правила является то, что администратору достаточно изменить маску подсети на каждом хосте и не нужно переконфигурировать IP-адреса хостов во всей организации. Изменение адресов потребует больших усилий от администратора, так как в данном случае может потребоваться изменение почтовых сервисов, статических таблиц маршрутизации и т. д.
В сети, которая была разбита на подсети, можно использовать два типа широковещательной передачи информации: направленное широковещание и ограниченное. Направленное широковещание используется для передачи дейтаграммы всем хостам в определенной подсети. Для посылки дейтаграммы всем хостам во всех подсетях необходимо использовать ограниченное широковещание с адресом 255.255.255.255. Однако необходимо учесть, что маршрутизаторы не пропускают дейтаграммы с таким адресом. Существует одно ограничение, накладываемое на направленное широковещание в средах с подсетями. Биты, назначенные для формирования номеров подсетей, обычно являются частью поля номера хоста и не могут быть все установлены в нули или единицы. Например, если есть адрес класса В, в котором третий байт выделен под номера подсетей — 128.1.<Номер подсе-ти>.<Номер хоста>, то в этом случае адрес направленного широковещания не может быть равен 128.1.255.255,128.1.0.255,128.1.255.0 и 128.1.0.0.
Существуют теоретические и практические аргументы, призывающие не использовать верхние (все биты единичные) и нижние подсети (все биты нулевые) в распределенных сетях (можно также встретить термин «граничные подсети»). Как уже не раз отмечалось, теоретически битовое поле содержит два специальных значения: все биты установлены в ноль, что обычно означает «данный», например «данное устройство» или «данная сеть», и все биты установлены в единицу, что
Если следовать этому правилу, то на границе между номером подсети и номером хоста будут существовать нулевые биты. Это позволяет менять маску подсети без изменения IP-адреса, присвоенного хосту. Необходимость в изменении маски подсети может возникнуть при расширении числа хостов в каждой подсети, с учетом того, что планируемое число возможных подсетей обычно больше необходимого в настоящий момент. В этом случае существует возможность «заимствования» под номера подсетей некоторых битов из числа зарезервированных. Достоинством описанного правила является то, что администратору достаточно изменить маску подсети на каждом хосте и не нужно переконфигурировать IP-адреса хостов во всей организации. Изменение адресов потребует больших усилий от администратора, так как в данном случае может потребоваться изменение почтовых сервисов, статических таблиц маршрутизации и т. д.
В сети, которая была разбита на подсети, можно использовать два типа широковещательной передачи информации: направленное широковещание и ограниченное. Направленное широковещание используется для передачи дейтаграммы всем хостам в определенной подсети. Для посылки дейтаграммы всем хостам во всех подсетях необходимо использовать ограниченное широковещание с адресом 255.255.255.255. Однако необходимо учесть, что маршрутизаторы не пропускают дейтаграммы с таким адресом. Существует одно ограничение, накладываемое на направленное широковещание в средах с подсетями. Биты, назначенные для формирования номеров подсетей, обычно являются частью поля номера хоста и не могут быть все установлены в нули или единицы. Например, если есть адрес класса В, в котором третий байт выделен под номера подсетей — 128.1.<Номер подсети>.<Номер хоста>, то в этом случае адрес направленного широковещания не может быть равен 128.1.255.255,128.1.0.255,128.1.255.0 и 128.1.0.0.
Существуют теоретические и практические аргументы, призывающие не использовать верхние (все биты единичные) и нижние подсети (все биты нулевые) в распределенных сетях (можно также встретить термин «граничные подсети»). Как уже не раз отмечалось, теоретически битовое поле содержит два специальных значения: все биты установлены в ноль, что обычно означает «данный», например «данное устройство» или «данная сеть», и все биты установлены в единицу, что
означает «все», например «все устройства» или «все сети». Ранние документы, регламентирующие адресацию в Интернете, рекомендовали оставлять эти значения неиспользуемыми. Это определяло запрет на использование адреса нижней сети из всех нулей и адреса верхней сети из всех единиц. В результате программное обеспечение, обслуживающее протокол IP на сетевых устройствах, проверяло факт настройки пользователем адресации в обход этих правил. На практике использование этих подсетей может быть проблематичным, так как не все устройства, особенно выпущенные давно, поддерживают такую настройку. Для того чтобы избежать проблем, следует быть хорошо осведомленным о конкретном устройстве и выяснить, какое адресное пространство оно позволяет настроить. Маршрутизаторы фирмы Cisco Systems допускают настройку на использование рассматриваемых подсетей, так что в свое распоряжение можно получить еще одну подсеть. Для того чтобы использовать нижнюю подсеть, нужно выполнить команду ip subnet-zero в глобальном режиме конфигурации.
Routerfconfigure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#ip subnet-zero
В том случае, если администратор сети не вводил эту команду на маршрутизаторе, попытка настроить интерфейс с адресом нижней подсети приведет к появлению сообщения об ошибке:
Routerfconfigure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#no ip subnet-zero
Router(config)#interface sen all
Router(config-if)#ip address 192.168.1.2 255.255.255.224
Bad mask /27 for address 192.168.1.2
Практика выделения IP-подсетей
Рассмотрим практические примеры выделения подсетей и назначения адресов устройствам в этих подсетях. Предположим, что организации для ее корпоративной сети назначен сетевой адрес 140.25.0.0/16 (или адрес 140.25.0.0 класса В — в существующей технической литературе автор не нашел устоявшегося определения). При этом организация планирует разделить сеть на несколько подсетей, каждая из которых должна поддерживать до 60 устройств. На первом шаге необходимо определить число битов, требуемых для идентификации 60 устройств в подсети. Адрес конкретного устройства имеет определенное двоичное представление, и верхняя граница адресного пространства для устройств одной подсети представляется степенью числа 2. Это, в частности, означает, что невозможно выделить адресное пространство точно для 60 устройств, так как 60 не является степенью двойки. Ближайшая большая степень двойки — это 64 = 26. На самом деле, к числу устройств нужно прибавить 2, так как адреса, содержащие только нули или только единицы, не используются для адресации отдельных устройств. Выбрав эту степень двойки, мы ввели два запасных адреса:
(60+2=62) < 64. Однако, удовлетворяя существующие на сегодня потребности по числу рабочих мест, такой выбор не оставляет адресного пространства для возможного роста подсети. И хотя следующая степень двойки равна 128 (27) и число адресов устройств будет равно 27- 2 = 126, то есть намного больше требуемого в настоящий момент, сетевому администратору необходимо выбрать именно это адресное пространство и получить 66 (126 - 60) дополнительных адресов для каждой подсети. Такой выбор означает, что поле адреса устройства займет 7 бит.
На втором шаге определяется маска подсети и длина расширенного сетевого префикса. Так как для идентификации устройств из 32-разрядного IP-адреса решено выделить 7 бит, получаем расширенный сетевой префикс /25 (32 - 7 = 25). Такой 25-разрядный расширенный сетевой префикс может быть выражен в точечно-десятичном представлении маской подсети 255.255.255.128. Рисунок 2.14 показывает запись маски подсети и расширенного сетевого префикса.
Как видно, 25-разрядный расширенный префикс предполагает выделение 9 бит для идентификации подсетей. Теперь можно вычислить количество идентифицируемых подсетей: 29= 512, то есть 9 бит позволяют назначить адреса 512 подсетям. Понятно, что администратор сети получает в этом случае некоторую свободу действий при определении соотношения числа идентифицируемых устройств и числа подсетей. Выделяя большее число битов в поле идентификации устройств, администратор может включать в подсеть больше устройств. С другой стороны, чем меньше битов выделено для идентификации устройств, тем больше подсетей может создать администратор. Все зависит от текущих требований организации.
Выделенные 512 подсетей пронумеруем от 0 до 511. Если выделить 9 разрядов для двоичного представления десятичных чисел от 0 до 511, то получим:
0(0000000002). 1(0000000012). 2(0000000102). 3(0000000112),.....,511(1111111112).
Например, для определения подсети номер 3 (#3) сетевой администратор размещает двоичное представление числа 3 (000000011)2 в 9 битах номера подсети. Номера подсетей для рассматриваемого примера приводятся ниже. В каждом адресе курсивом выделен расширенный сетевой префикс всего адреса, в то время как 9-битовое представление поля номера подсети выделено полужирным шрифтом:
Базовая сеть: 10001100.00011001.00000000.00000000 = 140.25.0.0/16 Подсеть #0: 10001100.0001100.00000000.00000000 = 140.25.0.0/25
Подсеть #1: 10001100.00011001.00000000.10000000 = 140.25.0.128/25
Подсеть #2: 10001100.00011001.00000001.00000000 - 140.25.1.0/25
Подсеть #3: 10001100.00011001.00000001.10000000 = 140.25.1.128/25
Подсеть #4: 10001100.00011001.00000010.00000000 = 140.25.2.0/25
Подсеть #5: 10001100.00011001.00000010.10000000 = 140.25.2.128/25
Подсеть #6: 10001100.00011001.00000011.00000000 = 140.25.3.0/25
Подсеть #7: 10001100.00011001.00000011.10000000 = 140.25.3.128/25
Подсеть #8: 10001100.00011001.00000100.00000000 = 140.25.4.0/25
Подсеть #9: 10001100.00011001.00000100.l0000000 = 140.25.4.128/25
Подсеть #510: 10001100.00011001.11111111.00000000 = 140.25.255.0/25
Подсеть #511: 10001100.00011001.11111111.10000000 = 140.25.255.128/25
Итак, администратор выделил 7 бит для идентификации устройств в каждой подсети. Это означает, что каждая подсеть имеет 126 адресов для идентификации устройств. Устройства в подсети нумеруются от 1 до 126. Приведем перечень адресов устройств для подсети #3. При этом курсивом выделен расширенный сетевой префикс, а жирным шрифтом показано 7-разрядное поле номера устройства:
Подсеть #3: 10001100.00011001.00000001.10000000= 140.25.1.128/25
Устройство #1: 10001100.00011001.00000001. 10000001 = 140.25.1.129/25
Устройство #2: 10001100.00011001.00000001. 10000010= 140.25.1.130/25
Устройство #3: 10001100.00011001.00000001. 10000011 = 140.25.1.131/25
Устройство #4: 10001100.00011001.00000001.10000100 - 140.25.1.132/25
Устройство #5: 10001100.00011001.00000001.10000101 = 140.25.1.133/25
Устройство #6: 10001100.00011001.00000001.10000110 = 140.25.1.134/25
Устройство #62: 10001100.00011001.00000001. 10111110 = 140.25.1.190/25
Устройство #63: 10001100.00011001.00000001. 10111111 - 140.25.1.191/25
Устройство #64: 10001100.00011001.00000001.11000000= 140.25.1.192/25
Устройство #65: 10001100.00011001.00000001.10000001 = 140.25.1.193/25
Устройство #123: 10001100.00011001.00000001. 11111011 = 140.25.1.251/25
Устройство #124: 10001100.00011001.00000001.11111100 = 140.25.1.252/25
Устройство #125: 10001100.00014001.00000001.11111101 = 140.25.1.253/25
Устройство #126: 10001100.00011001.00000001.11111110 = 140.25.1.254/25
Для подсети #3 широковещательным адресом будет адрес, в котором все биты поля номера устройства установлены в единицу:
10001100.00011001.00000001.11111111 = 140.25.1.255.
Следует отметить, что широковещательный адрес для подсети #3 ровно на единицу меньше базового адреса подсети #4 (140.25.2.0).
Рассмотрим другую ситуацию. Пусть организации назначен сетевой адрес 132.45.0.0/16. Администратору поручено сформировать 8 подсетей. Для идентификации такого количества подсетей требуется 3 бита. В этом случае расширенный сетевой префикс будет равен /19 (маска подсети 255.255.224.0). Приведем адреса этих подсетей в двоичном и десятичном представлениях:
Подсеть #0: 10000100.00101101.00000000.00000000 = 132.45.0.0/19
Подсеть #1: 10000100.00101101.00100000.00000000 = 132.45.32.0/19
Подсеть #2: 10000100.00101101.01000000.00000000 = 132.45.64.0/19
Подсеть #3: 10000100.00101101.01100000.00000000 = 132.45.96.0/19
Подсеть #4: 10000100.00101101.10000000.00000000 = 132.45.128.0/19
Подсеть #5: 10000100.00101101.10100000.00000000 = 132.45.160.0/19
Подсеть #6: 10000100.00101101.11000000.00000000 = 132.45.192.0/19
Подсеть #7: 10000100.00101101.11100000.00000000=132.45.224.0/19
Теперь определим адреса устройств для подсети #3 (132.45.96.0/19, или 10000100.00101101.01100000.00000000):
Подсеть #3: 10000100.00101101.01100000.00000000 = 132.45.96.0/19
Устройство #1: 10000100.00101101.01100000.00000001 = 132.45.96.1/19
Устройство #2: 10000100.00101101.01100000.00000010 = 132.45.96.2/19
Устройство #3: 10000100.00101101.01100000.00000011 = 132.45.96.3/19
Устройство #8190: 10000100.00101101.01111111.11111110= 132.45.127.254/19
Определим широковещательный адрес для подсети #3 (132.45.96.0/19): 10000100.00101101.01111111.11111111 - 132.45.127.255/19
Проделаем те же операции для сетевого адреса 200.35.1.0/24. Пусть также в каждой подсети необходимо предусмотреть адресное пространство для 20 устройств. Требуется определить расширенный сетевой префикс. Для идентификации устройств требуется минимум 5 бит. Поэтому расширенный сетевой префикс будет равен /27 (32-5=27). При этом максимальное количество устройств в каждой подсети равно 30 (32-2=30), а максимальное число подсетей равно 8 (23).
Приведем номера получившихся подсетей в двоичном и десятичном представлениях:
Подсеть #0: 11001000.00100011.00000001.00000000 = 200.35.1.0/27
Подсеть #1: 11001000.00100011.00000001.00100000 = 200.35.1.32/27
Подсеть #2: 11001000.00100011.00000001.01000000 = 200.35.1.64/27
Подсеть #3: 11001000.00100011.00000001.01100000 = 200.35.1.96/27
Подсеть #4: 11001000.00100011.00000001.10000000 = 200.35.1.128/27
Подсеть #5: 11001000.00100011.00000001.10100000 = 200.35.1.160/27
Подсеть #6: 11001000.00100011.00000001.11000000 = 200.35.1.192/27
Подсеть #7: 11001000.00100011.00000001.11100000 = 200.35.1.224/27
Приведем список адресов устройств, которые могут быть определены в подсети #6 (200.35.1.192/27):
Подсеть #6: 11001000.00100011.00000001.11000000= 200.35.1.192/27
Устройство #1: 11001000.00100011.00000001.11000001= 200.35.1.193/27
Устройство #2: 11001000.00100011.00000001.11000010= 200.35.1.194/27
Устройство #3: 1001000.00100011.00000001.11000011 = 200.35.1.195/27
Устройство #29: 11001000.00100011.00000001.11011101= 200.35.1.221/27
Устройство #30: 11001000.00100011.00000001.11011110= 200.35.1.222/27
Широковещательный адрес для подсети 200.35.1.192/27 равен: 11001000.00100011.00000001.11011111 = 200.35.1.223/27