Маски подсети и разбиение на подсети
💻 Информатика · 11 класс
Что такое маска подсети
Маска подсети — это 32-битное число, которое делит IP-адрес на две части: адрес сети и адрес узла внутри этой сети. Маска состоит из непрерывной последовательности единиц, за которой идут нули. Единицы отмечают разряды, относящиеся к номеру сети, а нули — разряды, выделенные под номера компьютеров.
Чтобы получить адрес сети, IP-адрес и маску накладывают друг на друга и выполняют поразрядную операцию И (логическое умножение). Там, где в маске стоит единица, разряд адреса сохраняется, где ноль — обнуляется.
Запись маски
Маску записывают двумя способами. Первый — десятичный с точками, например 255.255.255.0. Второй — префиксный: после адреса ставят дробь и число единиц в маске, например /24. Запись 192.168.1.0/24 означает, что под номер сети отведено 24 старших бита, а под узлы — 8 младших.
| Префикс | Маска | Узлов в сети |
|---|---|---|
| /24 | 255.255.255.0 | 254 |
| /25 | 255.255.255.128 | 126 |
| /26 | 255.255.255.192 | 62 |
| /30 | 255.255.255.252 | 2 |
Число доступных адресов узлов равно 2^n - 2, где n — количество нулей в маске. Два адреса вычитают потому, что адрес из одних нулей в части узла — это адрес самой сети, а из одних единиц — широковещательный адрес.
Разбор примера
Пусть дан адрес 192.168.10.130 и маска /26 (255.255.255.192). Последний байт маски равен 11000000. Наложим операцию И на последний байт адреса:
130 = 10000010
192 = 11000000
И -> 10000000 = 128
Адрес сети: 192.168.10.128
Значит, узел находится в сети 192.168.10.128, диапазон узлов — от 129 до 190, широковещательный адрес — 191. Так одно физическое пространство адресов делят на несколько независимых подсетей.
Классы и бесклассовая адресация
Раньше адреса делили на жёсткие классы: класс A с маской /8, класс B с маской /16 и класс C с маской /24. Такой подход расходовал адреса нерационально: организации, которой нужно 300 узлов, приходилось брать целую сеть класса B на 65 тысяч адресов. Поэтому перешли к бесклассовой адресации, где маска может иметь любую длину префикса, а не только 8, 16 или 24. Это позволяет нарезать сеть на части нужного размера.
Зачем нужно дробление
- уменьшение широковещательного трафика — каждая подсеть изолирована, и широковещательные сообщения не выходят за её границы;
- безопасность — отделы организации помещают в разные подсети и ограничивают доступ между ними;
- экономия адресов — выделяют ровно столько адресов, сколько нужно узлов в конкретном сегменте;
- упорядочивание сети — по адресу сразу видно, к какому сегменту относится узел.
Частые ошибки. Забывают вычесть два служебных адреса. Путают адрес сети (все нули в части узла) с широковещательным (все единицы). Считают, что маска может содержать единицы и нули вперемешку — нет, единицы всегда идут подряд слева.
Кратко о главном
- Маска подсети делит IP-адрес на номер сети и номер узла.
- Адрес сети получают операцией поразрядного И адреса и маски.
- Маску пишут как
255.255.255.0или префиксом/24. - Число узлов равно
2^n - 2, где n — количество нулей маски. - Дробление сети повышает управляемость, безопасность и экономит адреса.