Читал статью, как один парень, который запускает свои проекты на серверах в интернете, организовал между ними сеть. Там он мудрил с сетевыми настройками, чтобы его проекты не падали, если какие-то серверы вдруг решат взять отпуск. Он рассказывал про всякие подсети и маски. Честно говоря, я мало что понял про эти маски. Поэтому решил разобраться и сделать себе шпаргалку.
Где прописывается маска ?
Маска подсети прописывается на всех устройствах, которые работают в сети и используют IP-адресацию. Это могут быть:
- Компьютеры и ноутбуки — чтобы они могли правильно взаимодействовать с другими устройствами в сети.
- Сетевые принтеры и другие периферийные устройства — для корректной работы в локальной сети.
- Маршрутизаторы и коммутаторы — они играют ключевую роль в маршрутизации трафика, и правильная настройка маски подсети критична для их работы.
- Серверы — как локальные, так и интернет-серверы, чтобы они могли правильно определять, какие запросы приходят из их собственной сети, а какие — из внешней.
- Виртуальные машины и контейнеры — если они используются в сетевой инфраструктуре, им также нужна правильная маска подсети.
В общем, везде, где есть IP-адресация и нужно разграничивать локальную и внешнюю сети, маска подсети должна быть настроена.
Зачем нужна маска подсети
Маска подсети — это ключевой элемент, определяющий границы сети. Она помогает маршрутизатору или серверу понять, какие IP-адреса относятся к локальной сети, а какие — к внешней. Без правильной маски подсети устройство не сможет корректно направлять трафик, что может привести к ошибкам маршрутизации и замедлению работы сети. По сути, маска подсети отвечает за то, чтобы устройство “знало”, где заканчивается его собственная сеть и начинается чужая.
Собственная сеть устройства может быть как локальной сетью (LAN), так и частью глобальной сети (интернет).
В случае LAN это группа устройств, которые могут обмениваться данными напрямую, без необходимости выходить в интернет. Например, небольшой офис, где несколько компьютеров, принтеров и серверов соединены между собой через роутер. Или группа домашних пользователей – компьютер и несколько телефонов, соединенных через домашний вай-фай роутер. Эти устройства образуют единую сеть, в которой они могут общаться друг с другом, не выходя в Интернет.
Однако собственная сеть может также включать в себя устройства, работающие в интернете, такие как веб-серверы или компьютеры с “белыми” IP-адресами. В этом случае собственная сеть устройства является частью глобальной сети, и маска подсети помогает определить, какие IP-адреса относятся к этой сети, а какие — к другим частям интернета.
В контексте сетевых настроек, собственная сеть устройства определяется маской подсети и IP-адресом. Маска подсети указывает, какие части IP-адреса относятся к сети, а какие — к конкретному устройству в этой сети. Например, если у тебя есть IP-адрес 192.168.1.10
и маска подсети 255.255.255.0
, то все устройства с IP-адресами от 192.168.1.1
до 192.168.1.254
будут считаться частью твоей локальной сети.
Для локальных сетей и для Интернет происывают разные диапазоны адресов
Для устройств в LAN обычно используются частные IP-адреса (например, 192.168.0.0/24
или 10.0.0.0/8
), и маска подсети может быть более узкой, чтобы ограничить доступ только к локальным устройствам. Например, маска 255.255.255.0 (/24)
означает, что все устройства с IP-адресами от 192.168.0.1
до 192.168.0.254
находятся в одной подсети.
Для устройств с “белыми” IP-адресами, которые видны в интернете (например, веб-серверы), используются публичные IP-адреса, и маска подсети может быть более широкой, чтобы охватить больший диапазон адресов. Например, маска 255.255.0.0 (/16)
охватывает гораздо больше адресов, чем /24
.
Что будет, если неправильно настроить маску подсети?
Есть два устройства с IP-адресами 192.168.1.10
и 192.168.2.10
, но с маской 255.255.255.0
. Они будут считать, что находятся в разных подсетях, даже если подключены к одному роутеру. В результате, одно устройство может попытаться отправить данные другому через маршрутизатор, хотя они могли бы общаться напрямую. Это приведет к задержкам и ошибкам маршрутизации.
Как маска подсети показывает роутеру куда отправлять трафик?
Маршрутизатор “знает”, какие адреса находятся за ним, благодаря таблице маршрутизации. Эта таблица содержит информацию о том, какие сети и подсети доступны через каждый из его интерфейсов. Когда маршрутизатор получает пакет данных, он сверяется с этой таблицей, чтобы определить, куда направить трафик. Если в таблице нет записи для конкретного адреса, маршрутизатор может использовать шлюз по умолчанию или отправить пакет на другой маршрутизатор, который, возможно, знает, как добраться до нужного места.
Таблица маршрутизации использует маску подсети для определения, какие адреса принадлежат к одной подсети. Это позволяет маршрутизатору правильно направлять трафик внутри сети и за ее пределами.
Я сижу дома и хочу открыть yandex.ru. Как помогают мне в этом маски подсетей?
Когда компьютер в домашней сети хочет открыть сайт yandex.ru, процесс выглядит следующим образом:
- Компьютер:
- Компьютер определяет, что IP-адрес сайта (например,
77.88.55.55
) не принадлежит его локальной сети, сравнивая его с маской подсети (например,255.255.255.0
моей домашней сети). Если бы адрес сайта совпадал с домашней подсетью, компьютер бы думал, что Яндекс находится у меня дома и попытался бы связаться с ним напрямую. Но в данном случае адрес сайта находится за пределами локальной сети.
- Роутер:
- Компьютер отправляет запрос на домашний роутер, который является шлюзом по умолчанию. Роутер проверяет свою таблицу маршрутизации и использует маску подсети, чтобы определить, куда направить запрос. В данном случае роутер понимает, что адрес сайта находится вне локальной сети и направляет запрос в интернет.
- Интернет-провайдер:
- Запрос попадает к интернет-провайдеру, который также использует маски подсетей для маршрутизации трафика. Провайдер направляет запрос к нужному серверу, используя свои таблицы маршрутизации и маски подсетей.
- Сервер yandex.ru:
- Когда запрос достигает сервера yandex.ru, сервер также использует маску подсети для обработки входящих запросов и определения, откуда они пришли.
- Обратная маршрутизация:
- Ответ от сервера yandex.ru проходит тот же путь в обратном порядке. Каждый маршрутизатор на пути использует свою маску подсети и таблицу маршрутизации, чтобы направить ответ обратно к компьютеру.
Маска подсети играет ключевую роль на каждом этапе этого процесса, помогая участникам сети правильно определять направление трафика и обеспечивать корректную маршрутизацию.
Как определить по маске подсети сколько в ней может быть компьютеров?
Чтобы определить, что это за сеть и сколько в ней может быть компьютеров, нужно учитывать как классовую, так и бесклассовую адресацию (CIDR). Вот как это делается:
- Классовая адресация:
- Маска подсети, такая как
255.255.255.0
, указывает на класс сети. В данном случае это класс C. Маска255.255.0.0
— это класс B, а255.0.0.0
— класс A. - Чтобы определить количество возможных IP-адресов, нужно перевести маску подсети в двоичную систему и посчитать количество нулей. Например, маска
255.255.255.0
в двоичном виде будет11111111.11111111.11111111.00000000
. Здесь 8 нулей, что означает 2^8 – 2 = 254 возможных IP-адреса (минус два адреса для широковещательной и сетевой адресации).
- Бесклассовая адресация (CIDR):
- В CIDR формате маска подсети указывается как число после слэша, например,
192.168.1.0/24
. Это число показывает, сколько бит в маске подсети установлено в 1. При этом все единицы идут по порядку слева направо. Как в предыдущем пункте. - Чтобы определить количество возможных IP-адресов, нужно вычислить количество бит, установленных в 0. Например, для
/24
это будет 32 – 24 = 8 бит. Затем вычисляем 2^8 – 2 = 254 возможных IP-адреса (минус два адреса для широковещательной и сетевой адресации).
Реальная практика:
В настоящее время преимущественно используется бесклассовая адресация (CIDR), так как она более гибкая и позволяет более эффективно использовать IP-адреса. Классовая адресация считается устаревшей и редко применяется в современных сетях.
Как администратор принимает решение какая будет маска у него в подсети?
Администратор сети принимает решение о выборе маски подсети, исходя из нескольких факторов:
- Размер сети: Администратор оценивает, сколько устройств планируется подключить к сети. От этого зависит, сколько IP-адресов потребуется.
- Эффективность использования IP-адресов: Важно выбрать такую маску, чтобы минимизировать количество неиспользуемых IP-адресов. Например, если в сети всего 50 устройств, нет смысла использовать маску
/24
, которая позволяет иметь 254 адреса. - Безопасность и управление: Разделение сети на подсети может улучшить безопасность и упростить управление сетью. Например, можно создать отдельные подсети для различных отделов компании.
- Планирование будущего роста: Администратор учитывает возможные расширения сети в будущем и выбирает маску, позволяющую добавить новые устройства без необходимости изменения всей структуры сети.
- Соответствие стандартам и требованиям: Иногда выбор маски подсети диктуется внешними факторами, такими как требования провайдера или стандарты организации.
Процесс принятия решения включает анализ текущих потребностей и прогнозирование будущих изменений, чтобы обеспечить эффективную и надежную работу сети.
Какие адреса в подсети могут иметь участники, а какие нет?
В каждой подсети существуют определенные правила, которые определяют, какие IP-адреса могут быть назначены устройствам, а какие — нет. Давайте разберем это подробнее.
Адреса, которые могут быть использованы участниками сети
- Хостовые адреса:
- Это адреса, которые назначаются конечным устройствам в сети, таким как компьютеры, серверы, принтеры и т.д. Они формируются путем комбинации сетевого префикса и уникального идентификатора хоста.
- Например, в подсети
192.168.1.0/24
допустимые хостовые адреса будут находиться в диапазоне от192.168.1.1
до192.168.1.254
.
Адреса, которые не могут быть использованы участниками сети
- Сетевой адрес:
- Первый адрес в подсети (например,
192.168.1.0
в подсети192.168.1.0/24
) зарезервирован как сетевой адрес. Этот адрес обозначает саму подсеть и не может быть назначен никакому устройству.
- Широковещательный адрес:
- Последний адрес в подсети (например,
192.168.1.255
в подсети192.168.1.0/24
) используется для широковещательных сообщений. Он также не может быть назначен какому-либо устройству.
- Зарезервированные адреса:
- Некоторые диапазоны IP-адресов зарезервированы для специальных целей, таких как частные сети (например,
10.0.0.0/8
,172.16.0.0/12
,192.168.0.0/16
) или multicast-адреса (224.0.0.0/4
). Эти адреса также не могут быть использованы для обычных устройств.
Пример
Возьмем подсеть 192.168.1.0/24
:
- Сетевой адрес:
192.168.1.0
(нельзя использовать) - Хостовые адреса:
192.168.1.1
–192.168.1.254
(можно использовать) - Широковещательный адрес:
192.168.1.255
(нельзя использовать)
Таким образом, администраторы сетей должны учитывать эти ограничения при назначении IP-адресов, чтобы избежать конфликтов и обеспечить корректную работу сети.
Что будет, если не прописать шлюз. вообще, и можно ли настроить сеть без указания шлюза?
Если не указать шлюз при настройке сети, то устройство сможет работать только в рамках своей локальной сети. Оно сможет обмениваться данными с другими устройствами в этой же подсети, но не сможет выйти в интернет или подключиться к другим сетям.
Например, если у вас есть домашняя сеть с несколькими устройствами, они смогут “видеть” друг друга и обмениваться файлами или печатать на одном принтере. Однако, если вы захотите зайти на сайт или проверить почту, это будет невозможно, потому что устройство не знает, как передавать данные за пределы своей подсети.
Так что да, сеть можно настроить без указания шлюза, но тогда она будет ограничена только локальными функциями.