Найти в Дзене
eleday

Сети и подсети — как это работает

Серия WEB с нуля Это пробная статья в Дзене. Мне очень не хватает возможности добавлять картинки в тг, без них объяснение получается сухим и менее понятным. Хочу проверить, будет ли здесь лучше. В конце есть ссылка на опрос, можете оставить свое мнение Мы с вами говорили об адресации с помощью IP. В комментариях меня попросили рассказать про сети и маски, рассказываю Итак, есть одна большая сеть Интернет, в ней множество устройств со своими адресами А давайте для удобства разобьем эти устройства на группы — подсети. Например, выделим подсети для двух разных кабинетов информатики Пока мы сделали это логически, теперь давайте изменим IP-адреса, чтобы можно было понять, к какой подсети относится хост. Пускай адреса всех синих компьютеров начинаются с 10.10.10., а зеленых с 20.20.20. Вспомним, что IP-адрес — это двоичное число. Переведем "префикс" синих адресов в двоичный вид 10.10.10 - 00001010.00001010.00001010 Дополним нулями до 32 бит и получим адрес сети 00001010.00001010.00001010.0
Оглавление

Серия WEB с нуля

Это пробная статья в Дзене. Мне очень не хватает возможности добавлять картинки в тг, без них объяснение получается сухим и менее понятным. Хочу проверить, будет ли здесь лучше. В конце есть ссылка на опрос, можете оставить свое мнение

Мы с вами говорили об адресации с помощью IP. В комментариях меня попросили рассказать про сети и маски, рассказываю

Как всё устроено

Итак, есть одна большая сеть Интернет, в ней множество устройств со своими адресами

А давайте для удобства разобьем эти устройства на группы — подсети. Например, выделим подсети для двух разных кабинетов информатики

-2

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

-3

Вспомним, что IP-адрес — это двоичное число. Переведем "префикс" синих адресов в двоичный вид

10.10.10 - 00001010.00001010.00001010

Дополним нулями до 32 бит и получим адрес сети

00001010.00001010.00001010.00000000

Если посмотреть на все синие адреса, они будут иметь этот адрес сети

10.10.10.1 - 00001010.00001010.00001010.00000001

10.10.10.2 - 00001010.00001010.00001010.00000010

10.10.10.3 - 00001010.00001010.00001010.00000011

А давайте посмотрим на оставшиеся биты, это номера хоста в нашей подсети

10.10.10.1 - .00000001 - 1

10.10.10.2 - .00000010 - 2

10.10.10. - .00000011 - 3

То есть теперь адрес разбивается на две части: адрес сети и номер хоста внутри этой сети. Как-то нужно это разделение зафиксировать, потому что тут за адрес сети отвечают первые 24 бита, а в другой схеме мы захотим взять 15 бит

Для этого используется маска подсети. Это просто набор единичек и нулей, который показывает (единицами), какая часть IP-адреса является адресом сети, а какая (нулями) номером хоста

Для 10.10.10.1 в нашем случае маска будет такая:

11111111.11111111.11111111.00000000

Так как адрес сети всегда первый, а номер хоста второй, маска будет состоять сначала из единиц, потом из нулей. Чтобы каждый раз не записывать эту маску таким количеством символов, можно заменить её на количество единиц в ней. Например, для нашей схемы — 24

Такая запись называется CIDR и выглядит так:

10.10.10.1/24

Такой адрес говорит о том, что адрес сети, в которой находится устройство:

00001010.00001010.00001010.00000001 - 10.10.10.0

А номер устройства в этой сети:

00001010.00001010.00001010.00000001 - 1

Небольшие ограничения

Внутри подсети мы не можем использовать все доступные номера хостов, потому что два зарезервированы:

1. 0. Логично, если мы выдадим устройству номер 0, мы не сможем понять, 10.10.10.0 — это адрес сети или адрес этого устройства

2. 255. Этот адрес является широковещательным. То есть если отправить что-то на адрес 10.10.10.255, то это сообщение получат все компьютеры с синими адресами

Зачем это надо

Подсети — это способ сделать сеть управляемой и масштабируемой.

1. Чтобы изолировать широковещательные запросы

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

2. Чтобы маршрутизаторы могли работать эффективно

Интернет — это миллиарды устройств. Маршрутизаторы (устройства, которые направляют трафик) не смогли бы хранить путь к каждому IP отдельно. Без подсетей глобальная маршрутизация была бы невозможна

3. Чтобы разделять зоны доступа

И настраивать правила: кто к кому может обращаться

Краткое резюме

Сети можно делить на подсети. IP-адрес может показывать не только конкретное устройство, но и подсеть, в которой оно находится. Чтобы отделять адрес подсети от номера устройства в этой подсети, существуют маски

Как вам такой формат статьи? Проголосуйте в этом опросе, там же, в комментариях, можно оставить текстовый отзыв, обязательно прочитаю