Меню Закрыть

Маска подсети по умолчанию

Содержание

Маска подсети — битовая маска для определения по IP-адресу адреса подсети и адреса узла (хоста, компьютера, устройства) этой подсети. В отличие от IP-адреса маска подсети не является частью IP-пакета.

Благодаря маске можно узнать, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети.

Например, узел с IP-адресом 11.34.56.78 и маской подсети 255.255.255.0 находится в сети 11.34.56.0 с длиной префикса 24 бита. В случае адресации IPv6 адрес 2001:0DB8:1:0:6C1F:A78A:3CB5:1ADD с длиной префикса 32 бита (/32) находится в сети 2001:0DB8::/32.

Другой вариант определения — это определение подсети IP-адресов. Например, с помощью маски подсети можно сказать, что один диапазон IP-адресов будет в одной подсети, а другой диапазон соответственно в другой подсети.

Чтобы получить адрес сети, зная IP-адрес и маску подсети, необходимо применить к ним операцию поразрядной конъюнкции (побитовое И). Например, в случае более сложной маски (битовые операции в IPv6 выглядят аналогично):

  • часть маски, определяющая адрес сети и состоящая из единиц;
  • адрес сети, который определяется маской подсети;
  • диапазон адресов устройств в этой сети.

Разбиение одной большой сети на несколько маленьких подсетей позволяет упростить маршрутизацию. Например, пусть таблица маршрутизации некоторого маршрутизатора содержит следующую запись:

Сеть назначения Маска сети Адрес шлюза
192.168.1.0 255.255.255.0 10.20.30.1

Пусть теперь маршрутизатор получает пакет данных с адресом назначения 192.168.1.2. Обрабатывая построчно таблицу маршрутизации, он обнаруживает, что при наложении (применении операции «побитовое И») на адрес 192.168.1.2 маски 255.255.255.0 получается адрес сети 192.168.1.0. В таблице маршрутизации этой сети соответствует шлюз 10.20.30.1, которому и отправляется пакет.

Содержание

Маски при бесклассовой маршрутизации (CIDR) [ править | править код ]

Маски подсети являются основой метода бесклассовой маршрутизации (англ. CIDR ). При этом подходе маску подсети записывают вместе с IP-адресом в формате «IP-адрес/количество единичных бит в маске». Число после знака дроби ( т. н. длина префикса сети) означает количество единичных разрядов (бит) в маске подсети.

Рассмотрим пример записи диапазона IP-адресов в виде 10.96.0.0/11. В этом случае маска подсети будет иметь двоичный вид 1111_1111.1110_0000.0000_0000.0000_0000, или то же самое в десятичном виде: 255.224.0.0. 11 разрядов IP-адреса отводятся под адрес сети, а остальной 32-11=21 разряд полного адреса ( 1111_1111.1110_0000.0000_0000.0000_0000) — под локальный адрес в этой сети. Итого, 10.96.0.0/11 означает диапазон адресов от 10.96.0.0 до 10.127.255.255.

IPv4 CIDR

CIDR Последний IP-адрес в подсети Маска подсети Количество адресов в подсети Количество хостов в подсети Класс подсети
a.b.c.d/32 0.0.0.0 255.255.255.255 1 1* 1/256 C
a.b.c.d/31 0.0.0.1 255.255.255.254 2 2* 1/128 C
a.b.c.d/30 0.0.0.3 255.255.255.252 4 2 1/64 C
a.b.c.d/29 0.0.0.7 255.255.255.248 8 6 1/32 C
a.b.c.d/28 0.0.0.15 255.255.255.240 16 14 1/16 C
a.b.c.d/27 0.0.0.31 255.255.255.224 32 30 1/8 C
a.b.c.d/26 0.0.0.63 255.255.255.192 64 62 1/4 C
a.b.c.d/25 0.0.0.127 255.255.255.128 128 126 1/2 C
a.b.c.0/24 0.0.0.255 255.255.255.000 256 254 1 C
a.b.c.0/23 0.0.1.255 255.255.254.000 512 510 2 C
a.b.c.0/22 0.0.3.255 255.255.252.000 1024 1022 4 C
a.b.c.0/21 0.0.7.255 255.255.248.000 2048 2046 8 C
a.b.c.0/20 0.0.15.255 255.255.240.000 4096 4094 16 C
a.b.c.0/19 0.0.31.255 255.255.224.000 8192 8190 32 C
a.b.c.0/18 0.0.63.255 255.255.192.000 16 384 16 382 64 C
a.b.c.0/17 0.0.127.255 255.255.128.000 32 768 32 766 128 C
a.b.0.0/16 0.0.255.255 255.255.000.000 65 536 65 534 256 C = 1 B
a.b.0.0/15 0.1.255.255 255.254.000.000 131 072 131 070 2 B
a.b.0.0/14 0.3.255.255 255.252.000.000 262 144 262 142 4 B
a.b.0.0/13 0.7.255.255 255.248.000.000 524 288 524 286 8 B
a.b.0.0/12 0.15.255.255 255.240.000.000 1 048 576 1 048 574 16 B
a.b.0.0/11 0.31.255.255 255.224.000.000 2 097 152 2 097 150 32 B
a.b.0.0/10 0.63.255.255 255.192.000.000 4 194 304 4 194 302 64 B
a.b.0.0/9 0.127.255.255 255.128.000.000 8 388 608 8 388 606 128 B
a.0.0.0/8 0.255.255.255 255.000.000.000 16 777 216 16 777 214 256 B = 1 A
a.0.0.0/7 1.255.255.255 254.000.000.000 33 554 432 33 554 430 2 A
a.0.0.0/6 3.255.255.255 252.000.000.000 67 108 864 67 108 862 4 A
a.0.0.0/5 7.255.255.255 248.000.000.000 134 217 728 134 217 726 8 A
a.0.0.0/4 15.255.255.255 240.000.000.000 268 435 456 268 435 454 16 A
a.0.0.0/3 31.255.255.255 224.000.000.000 536 870 912 536 870 910 32 A
a.0.0.0/2 63.255.255.255 192.000.000.000 1 073 741 824 1 073 741 822 64 A
a.0.0.0/1 127.255.255.255 128.000.000.000 2 147 483 648 2 147 483 646 128 A
0.0.0.0/0 255.255.255.255 000.000.000.000 4 294 967 296 4 294 967 294 256 A

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

Возможных узлов подсети меньше количества адресов на два: начальный адрес сети резервируется для идентификации подсети, последний адрес используется в качестве широковещательного адреса (возможны исключения в виде адресации в IPv4 сетей /32 и /31).

Выбор маски для подсети [ править | править код ]

Если n <displaystyle n> — количество компьютеров в подсети, округлённое до ближайшей большей степени двойки, и n ⩽ 254 <displaystyle nleqslant 254> (для сетей класса C), то маска подсети вычисляется по следующей формуле: 2 8 − n − 2 <displaystyle 2^<8>-n-2> , где двойка вычитается, так как один IP-адрес (первый в задаваемом маской диапазоне) является IP-адресом подсети и ещё один IP-адрес (последний в задаваемом маской диапазоне) является широковещательным адресом (для отправки данных всем узлам подсети). Для 254>"> n > 254 <displaystyle n>254> 254>"/> будет другая формула.

Пример: в некой подсети класса C есть 30 компьютеров; маска для такой сети вычисляется следующим образом:

Наверное, каждый, кто хоть раз сталкивался с настройкой интернет соединения слышал о таком понятии — Маска подсети, но не все знают, что это такое, да и информация в интернете по этому запросу довольно устарела и сложна в понимании.

Читайте также:  Сломалась индукционная варочная панель

Давайте закроем этот пробел знаний в работе сети и интернета в целом и выясним, что это такое и зачем она в принципе нужна. Информация будет изложена самым доступным и понятным языком.

Итак, вот мы и отметили день программиста, продолжим обучение компьютерной грамотности и разберем по полочкам, что такое маска подсети, для чего она нужна и как вообще это работает.

Что такое маска подсети

Маска подсети (network mask, subnet mask) — это битовая маска (bitmask), которая используется для определения к какой подсети принадлежит определенный ИП адрес. Она не отправляется в заголовках IP-пакетов, т.е. не является ее частью, поэтому по айпи узнать ее просто никак нельзя.

Как и IP-адрес в IPv4 имеет размер в 32-бита. В двоичном формате, ноли и единицы не должны в ней чередоваться, так вначале всегда идут единички, а уже потом ноли.

Чаще всего пишется префиксом, например, 192.168.11.4/19. Посчитать префикс довольно легко, например, у 255.255.224.000, префикс будет — 19. Посчитайте просто все первые единички в двоичном формате.

Также, можно посчитать и в обратную сторону. Напишите столько единичек и сколько нужно, например, 15, потом допишите 17 нолей, чтобы получилось 32 и переведите это в десятичный формат, получится: 255.254.000.000. Не забывайте, после каждой 8 цифры ставить точку.

Интересно! Как и протокол IPv4 маска сети состоит тоже из 32 бит. И для запоминания, протокол IPv6 состоит из 128 бит.

Сам префикс означает вот что, например, возьмем префикс 20, это означает, что из 32 бит, 20 будут хранить информацию о самой сети, а 12 уже информацию о хосте. Посчитаем сколько это возможных IP адресов. 220 — 2 = 4 094. Убираем два адреса, т.к. они всегда зарезервированы под свои цели.

Для чего нужна маска сети

Она позволяет определить, кто находится с вами в одной (под)сети, а кто не в ней. Компьютеры, находящиеся внутри одной сети, обмениваются данными между собой напрямую, например, в локальной. Но если нужно выйти в глобальную паутину, то запрос идет уже через роутер — шлюз по умолчанию.

Она позволяет понять сеть нахождения IP-адреса, к примеру, адрес 193.150.14.87 и с маской 255.255.255.0 располагается в сети 193.150.14.0/24.

Рассчитывается это так: Используется функция поразрядной конъюнкции (побитовое И). Это просто, переводим все в бинарную/двоичную систему счисления. Ставим ИП-адрес и маску подсети друг над другом и считаем поочередно сверху и снизу. Если единички совпадают — то ставим 1, если есть хотя бы один ноль, то ставим 0. Потом переводим назад в десятичную и смотрим результат. Вот пример.

193.150.14.0/24 предполагает 256 айпи и как мы помним 2 мы от них убираем, т.к. они зарезервированы, остается 254.

Важно! Главное не ошибиться в расчетах и вообще указать ее правильно, так, например, если вы укажите 0.0.0.0 — то компьютер будет считать абсолютно все адреса локальными и даже не будет пытаться соединится с внешним интернетом. Это же работает и в обратную сторону — укажите не правильный префикс, то компьютер будет считать другой хост, который по сути находится с ним же в связке — внешним, и будет пытаться подключиться к нему через сетевой шлюз.

Как вычислить маску подсети для определенного количества ПК

При ее выборе, также стоит учитывать и класс сети, вот наглядная картинка с диапазонами IP-адресов:

Например, нам нужно выделить 30 IP-адресов для компьютеров в определенной фирме. Вычисляется все так: 28 — 30 — 2 = 256 — 30 — 2 = 224. Т.е. у нас получается: 255.255.255.224. Естественно для этих целей мы берем сеть класса C. Так, вы можете рассчитать ее для любого количества компьютеров.

Интересно! Также, с помощью нее можно разбивать большие сетки на несколько более маленьких. Это очень удобно, особенно в больших корпорациях.

В заключение

Надеюсь все объяснил, как можно в более понятном виде, чтобы вы точно усвоили материал. В дальнейших публикациях продолжим тему работы с глобальной паутиной, так что приходите еще.

Вопрос о том, что такое *маска IP-адреса*, из чего она состоит и как используется, приходится слышать довольно часто. Самое неприятное, что в Интернете есть много непроверенной, устаревшей и не соответствующей действительности информации. Поэтому постараюсь ответить максимально подробно.

Из скольки бит состоит IP-адрес?

Для вас это простой вопрос, на который вы отвечаете не задумываясь? И ответите правильно, даже если вас разбудят среди ночи? Значит, вы профессиональный айтишник — сетевой инженер или, например, администратор. Если вы засомневались, не беда. Дочитав статью до конца, вы наверняка узнаете много интересного.

Для удобства информация разделена на шесть порций, или небольших глав. Есть мудрая поговорка, что нельзя съесть слона целиком, но можно съесть его по частям. Поехали.

Маска ip адреса общие понятия.

IP-адрес (v4) состоит из 32-бит. Это можно взять в рамочку, как в школьных учебниках. Желательно запомнить и про IPv6 тоже: 128 бит.

Теоретически IPv4-адресов может быть: 2 32 = 2 10 *2 10 *2 10 *2 2 = 1024*1024*1024*4 ≈ 1000*1000*1000*4 = 4 млрд.

Всего 4 миллиарда. Но дальше будет рассмотрено, сколько из них не используется, грубо говоря, съедается.

Как записывается IPv4-адрес? Он состоит из четырёх октетов и записывается в десятичном представлении без начальных нулей, октеты разделяются точками: например, "192.168.11.10".

Читайте также:  Как вернуть родную прошивку tp link

Если что, октет — это ровно то же самое, что байт. Но если вы скажете "октет" в среде профессионалов, они вас сразу зауважают и вам легче будет сойти за своего.

В заголовке IP-пакета есть поля "source IP" и "destination IP". Это адреса источника: кто посылает и назначения: кому отправлено. Почти как на почтовом конверте. Внутри пакетов у IP-адресов нет никаких масок, и разделителей между октетами тоже нет. Просто 32 бита для адреса назначения и еще 32 для адреса источника.

Однако, когда IP-адрес присваивается интерфейсу — ещё говорят, сетевому адаптеру — компьютера или маршрутизатора, то, кроме самого адреса этого устройства, ему присваивают еще и маску подсети.

Можно повторить, это важно: *маска IP-адреса* НЕ передается в заголовках IP-пакетов.

Компьютерам маска подсети нужна для определения границ. угадайте, чего именно. подсети. Это нужно, чтобы каждый мог определить, кто находится с ним в одной (под)сети, а кто — за ее пределами. Вообще-то можно говорить просто "сети", часто этот термин используют именно в значении "IP-подсеть". Внутри одной сети компьютеры обмениваются пакетами напрямую, но если нужно послать пакет в другую сеть, шлют их шлюзу по умолчанию (это третий параметр, настраиваемый в сетевых свойствах). Вот как это происходит.

Маска подсети — это тоже 32-бита. Но, в отличие от IP-адреса, нули и единицы в ней не могут чередоваться. Всегда сначала идут единицы, потом нули.

  • Не может быть маски 120.22.123.12=01111000.00010110.01111011.00001100.
  • Но может быть маска 255.255.248.0=11111111.11111111.11111000.00000000.

Сначала N единиц, потом 32-N нулей. Легко догадаться, что такая форма записи избыточна. Вполне хватило бы числа N, называемого длиной маски. Так и делают: пишут 192.168.11.10/21 вместо 192.168.11.10 255.255.248.0. Обе формы имеют один и тот же смысл, но первая заметно удобнее.

Чтобы определить границы подсети, компьютер делает побитовое умножение (логическое И) между IP-адресом и маской, а на выходе получает адрес с обнулёнными битами в позициях нулей маски.

Рассмотрим пример 192.168.11.10/21:

Маска ip адреса, адрес подсети.

Владение двоичной арифметикой обязательно для любого профессионального администратора. Нужно уметь безошибочно переводить IP-адреса из десятичной формы в двоичную и обратно. Это может делаться в уме или на бумажке. Обходиться в таких вопросах без калькулятора — это требование суровой действительности.

Адрес 192.168.8.0 называется адресом подсети. Обратите внимание на все обнулённые биты на позициях, которые соответствуют нулям в маске. Адрес подсети обычно нельзя использовать в качестве адреса для интерфейса того или иного хоста.

Если, наоборот эти же биты превратить в единицы, то получится адрес 192.168.15.255. Такой адрес называется направленным бродкастом (то есть широковещательным) для данной сети. Сейчас особого смысла в нём нет, но когда-то раньше считалось, что все хосты в подсети должны на него откликаться. Сейчас это неактуально, однако этот адрес тоже (обычно) нельзя использовать как адрес хоста.

Получается, из каждой подсети выбрасывается два адреса. Остальные адреса в диапазоне от 192.168.8.1 до 192.168.15.254 включительно — это полноправные адреса хостов внутри подсети 192.168.8.0/21. Их, все без исключения, можно использовать для назначения на компьютерах.

Зрительно адрес как бы делится на две части. Та часть адреса, которой соответствуют единицы в маске, является идентификатором подсети — или адресом подсети. Обычно её называют "префикс".

Вторая часть, которой соответствуют нули в маске — это идентификатор хоста внутри подсети.

Очень часто встречается адрес подсети в таком виде:

Когда маршрутизатор прокладывает в сети маршруты для передачи трафика, он оперирует именно префиксами.

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

Главное: в отрыве от подсети адрес хоста не используется совсем.

Длина маски подсети.

Количество хостов в подсети определяется как 232-N-2, при этом N — длина маски.

Логичный вывод: чем длиннее маска, тем меньше в ней хостов.

Ещё один полезный логический вывод: максимальной длиной маски для подсети с хостами будет N=30.

Именно сети /30 чаще всего используют для адресации на point-to-point-линках между маршрутизаторами.

Большинство маршрутизаторов сегодня отлично работает и с масками /31, используя адрес подсети (нуль в однобитовой хостовой части) и бродкаст (единица) в качестве адресов интерфейсов. Однако администраторы и сетевые инженеры иногда просто боятся такого подхода, согласно проверенному принципу "мало ли что".

А вот *маска IP-адреса* /32 используется гораздо чаще. С ней удобно работать, во-первых, при адресации так называемых loopback-интерфейсов. Во-вторых, практически невозможно ничего напутать: /32 — это подсеть, состоящая из одного хоста, то есть по сути никакая и не сеть.

Если администратору сети приходится оперировать не группами хостов, а индивидуальными машинами, то с каждым разом сеть становится всё менее масштабируемой, в ней резко увеличивается вероятность всяческого бардака и никому не понятных правил. За исключением, наверное, только написания файрвольных правил для серверов: вот там специфичность ценится и котируется.

Другими словами, с пользователями лучше обращаться не индивидуально, а массово, целыми подсетями, иначе сеть быстро станет неуправляемой.

Интерфейс, на котором настроен IP-адрес, иногда могут называть IP-интерфейсом или L3-интерфейсом ("эл-три", тема "модель OSI").

До того как послать IP-пакет, компьютер определяет, попадёт ли адрес назначения в "свою" подсеть. Если ответ положительный, то он шлёт пакет "напрямую", если отрицательный — направляет его шлюзу по умолчанию, то есть маршрутизатору.

Читайте также:  Как на айфоне поставить напоминание каждый час

Адресом шлюза по умолчанию обычно назначают первый адрес хоста в подсети, хотя это и вовсе не обязательно. В нашем примере адрес шлюза 192.168.8.1 — для красоты.

Маршрутизатор и шлюз подсети.

Наверное, лучше повторить: шлюз и маршрутизатор — это одно и то же!

Из того, о чём говорилось только что, следует достаточно ясный вывод. Маршрутизатор с адресом интерфейса 192.168.8.1 ничего не знает о трафике, передаваемом, например, между хостами 192.168.8.5 и 192.168.8.7.

У начинающих администраторов одна из самых типичных ошибок — желание заблокировать или как-то иначе проконтролировать с помощью шлюза трафик между хостами в одной подсети. На самом деле, чтобы трафик проходил через маршрутизатор, адресат и отправитель должны находиться в разных подсетях.

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

Важный следующий шаг: разбиение подсетей на более мелкие подсети.

Сеть из нашего примера 192.168.8.0/21 можно разбить на две подсети /22, четыре подсети /23, восемь /24 и так далее. Общее правило, как можно догадаться, такое:

при этом K — количество подсетей с длиной маски Y, которые умещаются в подсеть с длиной маски X.

Агрегация.

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

Есть такой процесс, называемый агрегацией. Это значит объединение мелких префиксов — с длинной маской подсети, в которых мало хостов — в крупные, с короткой маской подсети, в которых много хостов. Второе название этого же процесса — суммаризация. Запомните, не суммирование!

Агрегация необходима, чтобы минимизировать количество информации, которую использует маршрутизатор для поиска пути передачи в сети.

Пример: провайдеры выдают клиентам множество маленьких блоков по типу /29. При этом весь остальной Интернет об этом даже не подозревает. За каждым провайдером закреплены префиксы намного крупнее — от /19 и выше. Благодаря такой системе в Глобальную таблицу Интернет-маршрутизации заносится намного меньше записей: их число сократилось на несколько порядков.

Составление адресного плана.

Мы помним, что *маска IP-адреса* бывает разной длины. Чем больше длина маски, тем меньше хостов может быть в подсети. Одновременно увеличивается доля "съеденных" адресов на адреса подсети, шлюза по умолчанию и направленного бродкаста.

Пример. Подсеть с маской /29 (232-29 = 8 комбинаций). Здесь остаётся всего пять доступных для реального использования адресов, в процентах это будет 62,5%. Легко поставить себя на место провайдера, которому необходимо выдать тысячам корпоративных клиентов блоки /29. Для него грамотная разбивка IP-пространства на подсети жизненно необходима.

Эту науку ещё называют составлением адресного плана. Каждый, кто разбивает IP-пространство на подсети, должен уметь не только видеть и учитывать множество факторов, но и искать разумные компромиссы.

Если используется большой диапазон адресов, удобно работать с масками, совпадающими по длине с границами октетов.

Пример. Адреса из блоков частного сектора: 10.0.0.0/8, 172.16.0.0/12 и 192.168.0.0/16.

*Маска IP-адреса*: /8, /16, /24 или, соответственно, по-другому 255.0.0.0, 255.255.0.0, 255.255.255.0.

Такой подход серьёзно облегчает работу мозга и снижает нагрузку на калькулятор: не надо постоянно переходить на двоичную систему и биты. Ничего плохого в этом методе нет. Кроме одного: возможности чересчур сильно расслабиться. и наделать ошибок.

Итоги по маске IP-адреса.

Само понятие "классы адресов", о котором нет-нет да и приходится читать/слышать, давно устарело. Уже больше 20 лет назад выяснилось, что длина префикса может быть любой. Если же раздавать адреса блоками по /8, то никакого Интернета не получится. Итак: "классов адресов" не существует!

Другой, мягко говоря, странный термин. Иногда говорят "сеть класса такого-то" по отношению к подсети с той или иной длиной маски. Например, "сеть класса C" про 10.1.2.0/24. или что-то подобное. Знайте, так никогда не скажет серьёзный специалист. Класс сети, когда он ещё существовал, не имел отношения к длине маски и определялся совсем другими факторами — а именно комбинациями битов в адресе. Если классовая адресация использовалась, то длина масок тоже была строго регламентирована. Каждому классу соответствовали маски только строго определённой длины. Хотя бы поэтому подсеть 10.1.2.0/24, как в примере, никогда не принадлежала и не могла принадлежать к классу C.

Но лучше об этом не вспоминать. Важно только вот что. "Под одной крышей" в RFC3330 собраны все существующие глобальные конвенции, которые посвящены специальным значениям разнообразных блоков адресов.

В них блоки 10/8, 172.16/12 и 192.168/16 (написание сокращённое) определяются как диапазоны для частного использования, запрещённые к маршрутизации в интернете. Другими словами, каждый может использовать их по своему усмотрению, в частных целях.

Пусть вас не удивляет способ написания префиксов, когда полностью отбрасывается хостовая часть: он широко применяется и не вызывает разночтений или недоразумений.

Далее, блок 224.0.0.0/4 зарезервирован для мультикаста, и так далее. Но конвенции — это не совсем законы в полном юридическом смысле слова. Их цель — сделать проще и легче административное взаимодействие. Конвенции крайне не рекомендуется нарушать, но до поры до времени никем не запрещено использовать любые адреса для любых целей. Ровно до того момента, пока вы не встречаетесь с внешним миром

Рекомендуем к прочтению

Добавить комментарий

Ваш адрес email не будет опубликован.