IPv4 Практика

Введение

Это статья про деление IPv4 сетей на подсети

Задача 1

Условие

От провайдера мы получили сеть

172.23.96.0/20

Нужно разбить её на 8 подсетей.

Одна сеть на 750 хостов. Одна на 500. Три на 250. Одна на 200. Две на 100.

Сети попарно подключены к четырём роутерам. Эти четыре роутера попарно подлючены к ещё двум роутерам. Всего шесть роутеров и пять сетей на два хоста.

Итого у нас тринадцать сетей.

Решение

Изучим нашу сеть и посмотрим где заканчивается маска.

172.23.96.0/20
172 23 96 0
10101100 00010111 01100000 00000000

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

Маска в 20 бит означает, что на хост остается 12 бит. Все наши адреса будут иметь первые два байта 172.23

172.23.01100000.00000000

Для краткости записи пока можем про них забыть. Работаем с

01100000.00000000

На 750 хостов требуется 10 бит, на 500 - 9 бит т.д. Выпишем это в таблицу

Число хостов Необходимо бит Адрес сети Маска
750 10
500 9
250 8
250 8
250 8
200 8
100 7
2 2
2 2
2 2
2 2
2 2

Начнём с самой большой сети в 750 хостов. Будем рассматривать последние 16 бит из которых 4 заняты маской а 12 мы можем использовать свободно.

Выделим необходимые для 750 хостов 10 бит

01100000.00000000

Мы не трогали два бита поэтому отдадим их под новую маску. Она теперь будет равна 20 + 2, то есть 22

172.23.96.0/22

Первый хост

01100000.00000001

172.23.96.1/22

Последний хост

01100011.11111110

172.23.99.254/22

Широковещательный адрес будет следующим

01100011.11111111

172.23.99.255/22

Вот такие адреса 172.23.96.0/22 - 172.23.99.255/22 мы заняли. Маска выделена светло синим цветом

01100000.00000000
01100000.00000001
…
01100011.11111110
01100011.11111111

Перейдём к следующей подсети на 500 хостов.

Выделим необходимые для 500 хостов 9 бит

Под новую маску останется 32 - 9, то есть 23 бита

Если бы мы не выделяли адреса под предыдущие 750 хостов, то сейчас начали бы с

01100000.00000000

172.23.96.0/23

Но напоминаю, что адреса

01100000.00000000
01100000.00000001
…
01100011.11111110
01100011.11111111

Уже заняты и простая замена маски с 22 на 23 приведет к конфликту.

Следующий свободный адрес это

01100100.00000000

Учитывая, что новая маска равна 23 адрес сети на 500 хостов это

172.23.100.0/23

Первый хост

01100100.00000001

172.23.100.1/23

Последний хост

01100101.11111110

172.23.101.254/23

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

01100101.11111111

172.23.101.255/23

Теперь заняты следующие адреса

01100000.00000000
…
01100011.11111111

01100100.00000000
…
01100101.11111111

Первая сеть на 250 хостов.

На 250 хостов нужно 8 бит, поэтому мы используем маску в 24 бита.

Следующий свободный адрес это

01100110.00000000

172.23.102.0/24

Первый хост

01100110.00000001

172.23.102.1/24

Последний хост

01100110.11111110

172.23.102.254/24

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

01100110.11111111

172.23.102.255/24

Теперь заняты следующие адреса

01100000.00000000
01100011.11111111

01100100.00000000
01100101.11111111

01100110.00000000
01100110.11111111

Вторая сеть на 250 хостов.

Следующий свободный адрес это

01100111.00000000

172.23.103.0/24

Первый хост

01100111.00000001

172.23.103.1/24

Последний хост

01100111.11111110

172.23.103.254/24

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

01100111.11111111

172.23.103.255/24

Теперь заняты следующие адреса

01100000.00000000
01100011.11111111

01100100.00000000
01100101.11111111

01100110.00000000
01100110.11111111

01100111.00000000
01100111.11111111

Третья сеть на 250 хостов.

Следующий свободный адрес это

01101000.00000000

172.23.104.0/24

Первый хост

01101000.00000001

172.23.104.1/24

Последний хост

01101000.11111110

172.23.104.254/24

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

01101000.11111111

172.23.104.255/24

Теперь заняты следующие адреса

01100000.00000000
01100011.11111111

01100100.00000000
01100101.11111111

01100110.00000000
01100110.11111111

01100111.00000000
01100111.11111111

01101000.00000000
01101000.11111111

Сеть на 200 хостов.

На 200 хостов, как и на 250 нужно 8 бит, поэтому маску оставляем 24.

Следующий свободный адрес это

01101001.00000000

172.23.105.0/24

Первый хост

01101001.00000001

172.23.105.1/24

Последний хост

01101001.11111110

172.23.105.254/24

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

01101001.11111111

172.23.105.255/24

Теперь заняты следующие адреса (напоминаю, что первая половина адреса это 10101100.00010111 и она везде одинаковая)

01100000.00000000
01100011.11111111

01100100.00000000
01100101.11111111

01100110.00000000
01100110.11111111

01100111.00000000
01100111.11111111

01101000.00000000
01101000.11111111

01101001.00000000
01101001.11111111

Первая сеть на 100 хостов.

На 100 хостов, нужно 7 бит, поэтому маску делаем равной 25.

Следующий свободный адрес это

01101010.00000000

172.23.106.0/25

Первый хост

01101010.00000001

172.23.106.1/25

Последний хост

01101010.01111110

172.23.106.126/25

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

01101010.01111111

172.23.106.127/25

Теперь заняты следующие адреса (напоминаю, что первая половина адреса это 10101100.00010111 и она везде одинаковая)

01100000.00000000
01100011.11111111

01100100.00000000
01100101.11111111

01100110.00000000
01100110.11111111

01100111.00000000
01100111.11111111

01101000.00000000
01101000.11111111

01101001.00000000
01101001.11111111

01101010.00000000
01101010.01111111

Вторая сеть на 100 хостов.

Следующий свободный адрес это

01101010.10000000

172.23.106.128/25

Первый хост

01101010.10000001

172.23.106.129/25

Последний хост

01101010.11111110

172.23.106.254/25

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

01101010.11111111

172.23.106.255/25

Теперь заняты следующие адреса (напоминаю, что первая половина адреса это 10101100.00010111 и она везде одинаковая)

01100000.00000000
01100011.11111111

01100100.00000000
01100101.11111111

01100110.00000000
01100110.11111111

01100111.00000000
01100111.11111111

01101000.00000000
01101000.11111111

01101001.00000000
01101001.11111111

01101010.00000000
01101010.01111111

01101010.10000000
01101010.11111111

На 2 хоста, нужно 2 бита, поэтому маску делаем равной 30.

Первая сеть на 2 хоста
Бинарный Десятичный
Адрес сети 01101011.10000000 172.23.107.0/30
Первый хост 01101011.10000001 172.23.107.1/30
Последний хост 01101011.10000010 172.23.107.2/30
Широковещательный адрес 01101011.10000011 172.23.107.3/30
Вторая сеть на 2 хоста
Бинарный Десятичный
Адрес сети 01101011.10000100 172.23.107.4/30
Первый хост 01101011.10000101 172.23.107.5/30
Последний хост 01101011.10000110 172.23.107.6/30
Широковещательный адрес 01101011.10000111 172.23.107.7/30
Третья сеть на 2 хоста
Бинарный Десятичный
Адрес сети 01101011.10001000 172.23.107.8/30
Первый хост 01101011.10001001 172.23.107.9/30
Последний хост 01101011.100001010 172.23.107.10/30
Широковещательный адрес 01101011.10001011 172.23.107.11/30
Четвёртая сеть на 2 хоста
Бинарный Десятичный
Адрес сети 01101011.10001100 172.23.107.12/30
Первый хост 01101011.10001101 172.23.107.13/30
Последний хост 01101011.100001110 172.23.107.14/30
Широковещательный адрес 01101011.10001111 172.23.107.15/30
Пятая сеть на 2 хоста
Бинарный Десятичный
Адрес сети 01101011.10010000 172.23.107.16/30
Первый хост 01101011.10010001 172.23.107.17/30
Последний хост 01101011.10010010 172.23.107.18/30
Широковещательный адрес 01101011.10010011 172.23.107.19/30

Заполненная таблица будет выглядеть следюущим оригинальным образом.

Число хостов Необходимо бит Адрес сети Маска
750 10 172.23.96.0/22 255.255.252.0
500 9 172.23.100.0/23 255.255.254.0
250 8 172.23.102.0/24 255.255.255.0
250 8 172.23.103.0/24 255.255.255.0
250 8 172.23.104.0/24 255.255.255.0
200 8 172.23.105.0/24 255.255.255.0
100 7 172.23.106.0/25 255.255.255.128
100 7 172.23.106.128/25 255.255.255.128
2 2 172.23.107.0/30 255.255.255.252
2 2 172.23.107.4/30 255.255.255.252
2 2 172.23.107.8/30 255.255.255.252
2 2 172.23.107.12/30 255.255.255.252
2 2 172.23.107.16/30 255.255.255.252

Автор статьи: Андрей Олегович