Цель работы: научится работать с адресаций в сетях TCP/IP.
Лабораторная работа 3.
Разбиение на подсети.
Цель работы: научится работать с адресаций в сетях TCP/IP.
Маски подсети.
Адрес подсети - это адрес, который используется для организации маршрутизации между несколькими подсетями. При получении IP-адреса хоста маршрутизатор накладывает на него маску и определяет адрес подсети, затем по этому адресу определяется адрес шлюза на который нужно отправить пакет.
Адреса хостов в подсети - это набор IP-адресов, которые могут быть выданы хостам. Чтобы подсчитать количество адресов, нужно от общего количества адресов подсети отнять два адреса. При обмене пакетами между хостами в одной подсети маршрутизатор и шлюз не нужны.
Широковещательный адрес (Broadcast) - это адрес, который не присвоен ни одному хосту в подсети. Данный адрес используется для отправки широковещательных пакетов, которые предназначены каждому хосту подсети.
Здесь нужно понимать, что широковещательный адрес необязательно должен иметь на конце цифру 255 (например, 192.168.111.255), а адрес сети 0 (например, 192.168.111.0). Это заблуждение связано с тем, что в большинстве примеров, которые приводятся в различных учебных материалах, выбирается самая простая маска подсети - 255.255.255.0, и в данном случае broadcast действительно будет иметь на конце цифру 255, а адрес сети заканчиваться на 0. Но для других масок адрес подсети и broadcast могут принимать другие значения, например для ранее приведенного вопроса адрес подсети - 192.168.111.64, а широковещательный адрес - 192.168.111.127.
Конечно, в голове применять побитовые вычисления может не каждый, но для сетей класса “С” эта задача вполне выполнима. Если же эти вычисления ну никак не даются, то аналогичные результаты можно получить аналитическим путем. Например, 256-192 = 64 (здесь 192 - это последняя тетрада маски подсети) следовательно в каждой подсети всего 64 адреса из которых 62 адреса могут быть присвоены хостам, а 2 будут использоваться для широковещательных пакетов и адреса подсети. Отсюда IP-адреса 192.168.111.0, 192.168.111.64, 192.168.111.128, 192.168.111.192 будут адресами подсетей (в качестве адреса подсети всегда используется первый ip-адрес подсети). Очевидно, что раз максимальное количество IP-адресов в сетях класса “C” равно 256, то можно получить только 4 подсети.
У маски подсети существует две наиболее часто используемые формы записи:
десятичный вид (255.255.255.192) - данный вид записи, наверное, знаком каждому, поэтому никаких дополнительных пояснений не требует.
двоичный вид (11111111.11111111.11111111.11000000) - Здесь я немного искажаю действительность, потому что на практике используют запись следующего вида: 192.168.111.0/26, где 192.168.111.0 - адрес подсети, а /26 - количество единиц в двоичном представлении маски.
В двоичном виде маска подсети, как правило, представляет собой единицы идущие подряд слева направо. При таком разбиении существует всего 8 возможных окончаний для масок в сетях класса “C” (для упрощения дальнейшего изложения, я буду использовать только последнюю тетраду маски). Очевидно, что маска 11111111 определяет “пустую” подсеть, поэтому использовать ее бессмысленно, маска 11111110 определять подсеть из двух адресов, один из которых - адрес подсети, другой - широковещательный адрес. Создавать такую подсеть так же не имеет никакого смысла. Следующая возможная маска - 11111100 определяет сеть из 4-х адресов, два из которых используются под адрес сети и boradcast, а два могут быть адресами хоста. Обычно в такой подсети один адрес - это адрес шлюза (gateway), а другой адрес хоста.
Маска /32 используется ОЧЕНЬ часто. Маска подсети включает в себя 32 бита. Если бит в маске подсети равен "1", то соответствующий бит IP-адреса является частью номера сети. Если бит в маске подсети равен "0", то соответствующий бит IP-адреса является частью идентификатора хоста.
Таблица 1. Пример выделения номера сети и идентификатора хоста в IP-адресе
1-ый октет: (192) | 2-ой октет: (168) | 3-ий октет: (1) | 4-ый октет: (2) | |
IP-адрес (двоичный) | ||||
Маска подсети (двоичная) | ||||
Номер сети | ||||
Идентификатор хоста |
Маску подсети можно определить, как количество бит в адресе, представляющих номер сети (количество бит со значением "1"). Например, "8-битной маской" называют маску, в которой 8 бит – единичные, а остальные 24 бита – нулевые.
Маски подсети записываются в формате десятичных чисел с точками, как и IP-адреса. В следующих примерах показаны двоичная и десятичная запись 8-битной, 16-битной, 24-битной и 29-битной масок подсети.
Таблица 2. Маски подсети
Двоичная1-ый октет: | Двоичная2-ой октет: | Двоичная3-ий октет: | Двоичная4-ый октет: | Десятичная | ||
8-битная маска | 255.0.0.0 | |||||
16-битная маска | 255.255.0.0 | |||||
24-битная маска | 255.255.255.0 | |||||
29-битная маска | 255.255.255.248 |
Размер сети.
Количество разрядов в номере сети определяет максимальное количество хостов, которые могут находиться в такой сети. Чем больше бит в номере сети, тем меньше бит остается на идентификатор хоста в адресе.
IP-адрес с идентификатором хоста из всех нулей представляет собой IP-адрес сети (192.168.1.0 с 24-битной маской подсети, например). IP-адрес с идентификатором хоста из всех единиц представляет собой широковещательный адрес данной сети (192.168.1.255 с 24-битной маской подсети, например).
Так как такие два IP-адреса не могут использоваться в качестве идентификаторов отдельных хостов, максимально возможное количество хостов в сети вычисляется следующим образом:
Таблица 3. Максимально возможное число хостов
Маска подсети | Размер идентификатора хоста | Максимальное количество хостов | ||
8 бит | 255.0.0.0 | 24 бит | 224 – 2 | |
16 бит | 255.255.0.0 | 16 бит | 216 – 2 | |
24 бит | 255.255.255.0 | 8 бит | 28 – 2 | |
29 бит | 255.255.255.248 | 3 бит | 23 – 2 |
Формат записи
Поскольку маска всегда является последовательностью единиц слева, дополняемой серией нулей до 32 бит, можно просто указывать количество единиц, а не записывать значение каждого октета. Обычно это записывается как "/" после адреса и количество единичных бит в маске.
Например, адрес 192.1.1.0 /25 представляет собой адрес 192.1.1.0 с маской 255.255.255.128. Некоторые возможные маски подсети в обоих форматах показаны в следующей таблице.
Таблица 4. Альтернативный формат записи маски подсети
Маска подсети | Альтернативный формат записи | Последний октет (в двоичном виде) | Последний октет (в десятичном виде) |
255.255.255.0 | /24 | 0000 0000 | |
255.255.255.128 | /25 | 1000 0000 | |
255.255.255.192 | /26 | 1100 0000 | |
255.255.255.224 | /27 | 1110 0000 | |
255.255.255.240 | /28 | 1111 0000 | |
255.255.255.248 | /29 | 1111 1000 | |
255.255.255.252 | /30 | 1111 1100 |
Формирование подсетей.
С помощью подсетей одну сеть можно разделить на несколько. В приведенном ниже примере администратор сети создает две подсети, чтобы изолировать группу серверов от остальных устройств в целях безопасности.
В этом примере сеть компании имеет адрес 192.168.1.0. Первые три октета адреса (192.168.1) представляют собой номер сети, а оставшийся октет – идентификатор хоста, что позволяет использовать в сети максимум 28 – 2 = 254 хостов.
Сеть компании до ее деления на подсети показана на следующем рисунке.
Рисунок 1. Пример формирования подсетей: до разделения на подсети
Чтобы разделить сеть 192.168.1.0 на две отдельные подсети, можно "позаимствовать" один бит из идентификатора хоста. В этом случае маска подсети станет 25-битной (255.255.255.128 или /25).
"Одолженный" бит идентификатора хоста может быть либо нулем, либо единицей, что дает нам две подсети: 192.168.1.0 /25 и 192.168.1.128 /25.
Сеть компании после ее деления на подсети показана на следующем рисунке. Теперь она включает в себя две подсети, A и B.
Рисунок 2. Пример формирования подсетей: после деления на подсети
В 25-битной подсети на идентификатор хоста выделяется 7 бит, поэтому в каждой подсети может быть максимум 27 – 2 = 126 хостов (идентификатор хоста из всех нулей – это сама подсеть, а из всех единиц – широковещательный адрес для подсети).
Адрес 192.168.1.0 с маской 255.255.255.128 является адресом подсети А, а 192.168.1.127 с маской 255.255.255.128 является ее широковещательным адресом. Таким образом, наименьший IP-адрес, который может быть закреплен за действительным хостом в подсети А – это 192.168.1.1, а наибольший – 192.168.1.126.
Аналогичным образом диапазон идентификаторов хоста для подсети В составляет от 192.168.1.129 до 192.168.1.254.
Пример: четыре подсети.
В предыдущем примере было показано использование 25-битной маски подсети для разделения 24-битного адреса на две подсети. Аналогичным образом для разделения 24-битного адреса на четыре подсети потребуется "одолжить" два бита идентификатора хоста, чтобы получить четыре возможные комбинации (00, 01, 10 и 11). Маска подсети состоит из 26 бит (11111111.11111111.11111111.11000000), то есть 255.255.255.192.
Каждая подсеть содержит 6 битов идентификатора хоста, что в сумме дает 26 – 2 = 62 хоста для каждой подсети (идентификатор хоста из всех нулей – это сама подсеть, а из всех единиц – широковещательный адрес для подсети).
Таблица 5. Подсеть 1
IP-адрес/маска подсети | Номер сети | Значение последнего октета |
IP-адрес (десятичный) | 192.168.1. | |
IP-адрес (двоичный) | 11000000.10101000.00000001. | 00000000 |
Маска подсети (двоичная) | 11111111.11111111.11111111. | 11000000 |
Адрес подсети 192.168.1.0 | Наименьший идентификатор хоста: 192.168.1.1 | |
Широковещательный адрес 192.168.1.63 | Наибольший идентификатор хоста: 192.168.1.62 |
Таблица 6. Подсеть 2
IP-адрес/маска подсети | Номер сети | Значение последнего октета |
IP-адрес | 192.168.1. | |
IP-адрес (двоичный) | 11000000.10101000.00000001. | 01000000 |
Маска подсети (двоичная) | 11111111.11111111.11111111. | 11000000 |
Адрес подсети 192.168.1.64 | Наименьший идентификатор хоста: 192.168.1.65 | |
Широковещательный адрес 192.168.1.127 | Наибольший идентификатор хоста: 192.168.1.126 |
Таблица 7. Подсеть 3
IP-адрес/маска подсети | Номер сети | Значение последнего октета |
IP-адрес | 192.168.1. | |
IP-адрес (двоичный) | 11000000.10101000.00000001. | 10000000 |
Маска подсети (двоичная) | 11111111.11111111.11111111. | 11000000 |
Адрес подсети 192.168.1.128 | Наименьший идентификатор хоста: 192.168.1.129 | |
Широковещательный адрес 192.168.1.191 | Наибольший идентификатор хоста: 192.168.1.190 |
Таблица 8. Подсеть 4
IP-адрес/маска подсети | Номер сети | Значение последнего октета |
IP-адрес | 192.168.1. | |
IP-адрес (двоичный) | 11000000.10101000.00000001. | 11000000 |
Маска подсети (двоичная) | 11111111.11111111.11111111. | 11000000 |
Адрес подсети 192.168.1.192 | Наименьший идентификатор хоста: 192.168.1.193 | |
Широковещательный адрес 192.168.1.255 | Наибольший идентификатор хоста: |
Пример: восемь подсетей.
Аналогичным образом для создания восьми подсетей используется 27-битная маска (000, 001, 010, 011, 100, 101, 110 и 111).
Значения последнего октета IP-адреса для каждой подсети показаны в следующей таблице.
Таблица 9. Восемь подсетей
Подсеть | Адрес подсети | Первый адрес | Последний адрес | Широковещательный адрес |
Планирование подсетей.
Сводная информация по планированию подсетей для сети с 24-битным номером сети приводится в следующей таблице.
Таблица 10. Планирование подсетей для сети с 24-битным номером
Количество "одолженных" битов идентификатора хоста | Маска подсети | Количество подсетей | Количество хостов в подсети |
255.255.255.128 (/25) | |||
255.255.255.192 (/26) | |||
255.255.255.224 (/27) | |||
255.255.255.240 (/28) | |||
255.255.255.248 (/29) | |||
255.255.255.252 (/30) | |||
255.255.255.254 (/31) |
Пример расчета количества подсетей и хостов в подсети на основе IP-адреса и маски подсети.
Приведем пример расчета количества подсетей и хостов для сети 59.124.163.151/27.
/27 - префикс сети или сетевая маска. В формате двоичных чисел 11111111 11111111 11111111 11100000, В формате десятичных чисел 255.255.255.224.
В четвертом поле (последний октет) 11100000 первые 3 бита определяют число подсетей, в нашем примере 23 = 8. В четвертом поле (последний октет) 11100000 последние 5 бит определяют число хостов подсети, в нашем примере 25 = 32.
Диапазон IP первой подсети 0~31 (32 хоста), но 0 - это подсеть, а 31 - это Broadcast. Таким образом, максимальное число хостов данной подсети - 30.
Первая подсеть: 59.124.163.0. Broadcast первой подсети: 59.124.163.31
Диапазон IP второй подсети с 59.124.163.32 по 59.124.163.63.
Вторая подсеть: 59.124.163.32, Broadcast второй подсети: 59.124.163.63
Мы можем высчитать диапазон IP восьмой подсети с 59.124.163.224 по 59.124.163.255
Восьмая подсеть: 59.124.163.224, Broadcast восьмой подсети: 59.124.163.255.
В нашем примере IP-адрес 59.124.163.151 находится в пятой подсети.
Пятая подсеть: 59.124.163.128/27
Диапазон IP пятой подсети с 59.124.163.128 по 59.124.163.159, Broadcast пятой подсети: 59.124.163.159.
Префикс сети показывает количество бит, отводимых под номер сети. Оставшиеся биты отведены под номер хоста. Например, префикс /24 говорит о том, что старшие 24 бита адреса отводятся под номер сети, а оставшиеся (32-24)=8 бит – под номер хоста.
Исходя из количества бит, отводимых под номер хоста, можно определить максимальное количество компьютеров в подсети. Так, с помощью восьми бит можно закодировать 256 различных чисел, однако первое и последнее число не могут использоваться в качестве номеров хостов, поскольку им назначена особая роль. Если в номере хоста все биты равны нулю, то такой адрес называется адресом сети. Если же в номере хоста все биты равны единице, то такой адрес является широковещательным адресом для данной сети.
Пример:
IP-адрес: 192.168.1.18 /24
В двоичном виде: 11000000 10101000 00000001 00010010
Номер сети: 11000000 10101000 00000001 00000000
Широковещательный адрес: 11000000 10101000 00000001 11111111
Кроме номера сети и широковещательного адреса подсеть обычно содержит шлюз, роль которого, как правило, выполняет один из интерфейсов маршрутизатора. Часто шлюз получает первый либо последний адрес сети, который можно назначить хосту.
Подсеть разбивается на более мелкие подсети увеличением префикса подсети. Поскольку префикс задаёт количество бит в номере сети, такая операция всегда делит общее количество адресов подсети, на число, кратное степени двойки.
Пример:
Исходная подсеть: 192.168.1.0 /24
В двоичном виде: 11000000 10101000 00000001 00000000
Новые подсети: 192.168.1.0 /25
192.168.1.128 /25
В двоичном виде: 11000000 10101000 00000001 00000000
11000000 10101000 00000001 10000000
Таким образом, процесс разбиения исходной сети на нужное количество подсетей сводится к дихотомическому делению исходной подсети до тех пор, пока для каждого набора компьютеров не будет найдена сеть минимально необходимого размера.
Каждая пара маршрутизаторов также соединяется между собой отдельной подсетью. Поскольку такая подсеть содержит только два хоста, для неё достаточно использовать префикс подсети /30.
Методика выполнения
Исходную сеть и её подсети можно представить в виде графа, вершиной которого будет исходная сеть, а каждый дочерний узел получается в результате разбиения сети на две подсети:
Деление продолжается до тех пор, пока для каждой физической подсети не будет найдена подходящая по размерам подсеть.
Другой наглядный метод разбиения на подсети заключается в использовании программ для работы с электронными таблицами, например, Microsoft Excel. Каждая ячейка представляет некоторый диапазон адресов, например, подсеть с префиксом /30. Объединенные ячейки представляют собой более крупные сети, которые затем можно делить пополам в следующих столбцах:
Задание 1:Разбить сети класса A, B, С. D, E на подсети (как в примере 4 подсети).
Таблица 12. Варианты заданий
№ | Класс сети | |
A | ||
B | ||
C | ||
D | ||
E | ||
A | ||
B | ||
C | ||
D | ||
E | ||
A | ||
B | ||
C | ||
D | ||
E |
Задание 2:
Используя схему сети, приведенную на следующем рисунке, а также информацию о количестве компьютеров в отделах предприятия, разбейте сеть на соответствующее количество подсетей. Разбиение должно быть оптимальным, то есть не следует использовать для отдела подсеть, если достаточно будет половины подсети.
В отчете привести:
1. схему сети с подписанными подсетями
2. параметры каждой подсети:
a. адрес сети (в двоичном и десятичном виде);
b. префикс;
c. маска (в двоичном и десятичном виде);
d. широковещательный адрес
e. адрес шлюза;
f. максимальное количество хостов;
g. количество неиспользуемых адресов хостов.
Рисунок 1. Схема сети предприятия
Таблица 12. Варианты заданий
№ | Исходная сеть | Количество компьютеров в отделах | ||
А | Б | В | ||
34.178.0.0 /16 | ||||
118.7.50.0 /24 | ||||
39.221.98.0 /24 | ||||
88.27.252.0 /23 | ||||
81.104.216.0 /21 | ||||
7.50.128.0 /19 | ||||
89.151.32.0 /19 | ||||
126.61.74.0 /23 | ||||
36.121.96.0 /19 | ||||
28.54.64.0 /19 | ||||
67.253.0.0 /16 | ||||
77.75.0.0 /18 | ||||
5.63.168.0 /21 | ||||
85.123.72.0 /21 | ||||
72.241.3.0 /25 | ||||
87.228.68.0 /22 | ||||
46.41.64.0 /18 | ||||
57.214.86.0 /23 | ||||
74.30.128.0 /19 | ||||
88.61.128.0 /20 | ||||
10.58.180.0 /22 | ||||
112.56.76.0 /22 | ||||
2.78.160.0 /19 | ||||
30.182.64.0 /18 | ||||
75.39.128.0 /19 |
Контрольные вопросы:
1. Адрес и маска подсети?
2. Широковещательный адрес?
3. Записи маски подсети и IP адреса?
4. Размер сети?
5. Методы разбиения сети на подсети?