- Маска подсети — что это такое в деталях
- Что такое маска подсети
- Для чего нужна маска сети
- Как вычислить маску подсети для определенного количества ПК
- В заключение
- Твой Сетевичок
- Все о локальных сетях и сетевом оборудовании
- Маска подсети: что это такое, и как рассчитать маску подсети?
- Расчет маски подсети
- Таблица масок подсетей
- Как узнать маску подсети в Windows
- Основные принципы TCP/IP-адресов и подсетей
- Аннотация
- IP-адреса: сети и hosts
- Маска подсети
- Классы сети
- Subnetting
- Шлюзы по умолчанию
- Устранение неполадок
- Ссылки
- Глоссарий
Маска подсети — что это такое в деталях
Наверное, каждый, кто хоть раз сталкивался с настройкой интернет соединения слышал о таком понятии — Маска подсети, но не все знают, что это такое, да и информация в интернете по этому запросу довольно устарела и сложна в понимании.
Давайте закроем этот пробел знаний в работе сети и интернета в целом и выясним, что это такое и зачем она в принципе нужна. Информация будет изложена самым доступным и понятным языком.
Итак, вот мы и отметили день программиста, продолжим обучение компьютерной грамотности и разберем по полочкам, что такое маска подсети, для чего она нужна и как вообще это работает.
Что такое маска подсети
Маска подсети (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. Так, вы можете рассчитать ее для любого количества компьютеров.
Интересно! Также, с помощью нее можно разбивать большие сетки на несколько более маленьких. Это очень удобно, особенно в больших корпорациях.
В заключение
Надеюсь все объяснил, как можно в более понятном виде, чтобы вы точно усвоили материал. В дальнейших публикациях продолжим тему работы с глобальной паутиной, так что приходите еще.
Твой Сетевичок
Все о локальных сетях и сетевом оборудовании
Маска подсети: что это такое, и как рассчитать маску подсети?
Под маской подсети понимают 32-разрядное число, составленное из единиц и нулей. Начинается маска из последовательности единиц, а завершается последовательностью нулей. Ее накладывают на IP-адрес. Ту часть адреса, на которую накладываются единицы, определяют адресом сети. На остальную часть накладываются нули — она отводится под адресацию хостов.
Расчет маски подсети
Сетевой адрес составлен из двух частей — адреса сети и хоста. До появления масок специалисты применяли методы классового разделения сетей. Но число хостов в сети стало очень велико, а число выделяемых для них адресов сетей оказалось сильно ограниченным. Поэтому понадобилась дополнительная идея, которая была воплощена в маске. Она позволила в разных классах сетей выделить множество подсетей с разным количеством хостов.
Администратор сети, получив в распоряжение некий сетевой адрес, имеет возможность разделить его на ряд подсетей (а может использовать и без разделения). Зачем делить полученный адрес? В разных сетях нужно подключать различное число компьютеров — где-то надо подключить только 10 хостов, а где-то более 30.
Будет гораздо удобнее, если эти «количества» будут подключены в разных подсетях с общением через маршрутизатор.
Например, определим маску для сети класса С. Из соглашения известно, что под адрес сетей такого класса отводят первый, второй и третий байты 32-разрядного числа. Четвертый остается для распределения хостов. Тогда запись маски в точечно-двоичной нотации выглядит так:
Как видим, первые 24 бита установлены, а последние 8 сброшены. Таким образом, маска в десятичном формате получит такой вид: 255.255.255.0. Идентичной записью станет следующая /24 — префиксная.
Таблица масок подсетей
Маска позволяет выделить целое множество сетей класса С, как и сетевых адресов других типов. В предыдущем примере была показана маска для стандартной сети класса С. Однако если сбросить крайнюю единицу на ноль, тогда получим следующую запись 255.255.254.0 или /23. При такой маске можем получить 2 сети класса С, так как сброшенная единица может быть восстановлена. Запись с 17-ю единицами позволит адресовать сразу 128 сетей класса С.
С целью облегчения понимания бесклассовой адресации (CIDR) создаются целые таблицы соответствия префиксов, масок, количества подключаемых хостов и классов сетей. Сетевому администратору нет нужды рассчитывать маски, число сетей и хостов самостоятельно. Достаточно только заглянуть в список соответствия, чтобы ответить на вопрос какую маску выбрать при необходимости подключить конкретное число рабочих станций.
Так, если администратору надо подключить 30 рабочих станций, тогда маска сети должна завершаться 5-ю нулями. Действительно, для нумерации узлов достаточно 5 нулей, так как 2 в степени 5 равно 32.
При этом узел с пятью нулями отвечает за номер сети, а узел с 5-ю единицами является широковещательным. Соответственно три старшие бита должны заполняться единицами, как и три предшествующих байта, поэтому маска должна принять вид:
1111111.11111111.11111111.11100000 или 255.255.255.224.
Вместо вычислений администратор может воспользоваться данными из таблиц соответствий.
Как узнать маску подсети в Windows
Маску подсети по ip-адресу однозначно определить нельзя. Однако информация о маске хранится на маршрутизаторах, в операционных системах. В Windows определить ее можно несколькими способами. Много информации о сетевой конфигурации компьютера можно извлечь через командную строку.
Если в терминале текстовой строки выполнить команду ipconfig, то сетевая утилита выведет всю информацию о сетевой конфигурации, включая и маску подсети, к которой принадлежит данный ПК.
Узнать маску можно и в графическом режиме. Windows предоставляет для этого специальные инструменты. Для этого нужно пройти в центр управления сетями
и отыскать там адаптер, через который осуществляется соединение с внешней сетью.
Далее понадобится вызвать его сведения о состоянии,
где достаточно открыть окошко сведений о подключении.
В открывшемся списке легко обнаружить пункт маски подсети IPv4.
Здесь записана маска подсети, к которой принадлежит рабочая станция.
Основные принципы TCP/IP-адресов и подсетей
Эта статья предназначена для общего знакомства с понятиями сетей и подсетей протокола IP. Глоссарий включен в конце статьи.
Исходная версия продукта: Windows 10 — все выпуски
Исходный номер КБ: 164015
Аннотация
При настройке протокола TCP/IP на компьютере с Windows параметры конфигурации TCP/IP требуют:
- IP-адрес
- Маска подсети
- Шлюз по умолчанию
Чтобы правильно настроить TCP/IP, необходимо понимать, как сети TCP/IP адресуются и делятся на сети и подсети.
Успех протокола TCP/IP в качестве сетевого протокола Интернета во многом обусловлен возможностью подключения сетей разных размеров и систем разных типов. Эти сети произвольно определяются в три основных класса (наряду с несколькими другими), которые имеют предварительно определенные размеры. Системные администраторы могут разделить каждую из них на подсети меньшего размеров. Маска подсети используется для разделения IP-адреса на две части. Одна часть определяет хост (компьютер), а другая — сеть, к которой он принадлежит. Чтобы лучше понять, как работают IP-адреса и маски подсети, посмотрите на IP-адрес и посмотрите, как он организован.
IP-адреса: сети и hosts
IP-адрес — это 32-битный номер. Он уникальным образом идентифицирует хост (компьютер или другое устройство, например принтер или маршрутизатор) в сети TCP/IP.
IP-адреса обычно выражаются в десятичном формате с точками с четырьмя числами, разделенными точками, например 192.168.123.132. Чтобы понять, как маски подсети используются для разлижения между хостами, сетями и подсетями, проверьте IP-адрес в двоичной нотации.
Например, десятичный IP-адрес 192.168.123.132 (в двоичной нотации) является 32-битным номером 1100000001010001111011101100000100. Это число может быть сложно понять, поэтому разделите его на четыре части из восьми двоичных цифр.
Эти 8-битные разделы называются октетами. Затем пример IP-адреса становится 11000000.10101000.01111011.10000100. Это число имеет смысл, поэтому в большинстве случаев преобразуем двоичный адрес в десятичный формат с точками (192.168.123.132). Десятичные числа, разделенные по точкам, являются октетами, преобразованными из двоичной в десятичную.
Для эффективной работы сети TCP/IP в качестве коллекции сетей маршрутизаторы, которые передают пакеты данных между сетями, не знают точного расположения хоста, для которого предназначен пакет информации. Маршрутизаторы знают только о том, в какой сети входит хост, и используют сведения, хранимые в таблице маршрутов, чтобы определить, как получить пакет в сеть конечного хоста. После доставки пакета в сеть назначения пакет доставляется на соответствующий хост.
Чтобы этот процесс работал, IP-адрес имеет две части. Первая часть IP-адреса используется в качестве сетевого адреса, последняя часть — в качестве адреса хоста. Если взять пример 192.168.123.132 и разделить его на две части, вы получите 192.168.123. Сетевой адрес .132 Host или 192.168.123.0. 0.0.0.132 — адрес хоста.
Маска подсети
Второй элемент, необходимый для работы TCP/IP, — маска подсети. Маска подсети используется протоколом TCP/IP, чтобы определить, находится ли хост в локальной или удаленной сети.
В TCP/IP части IP-адреса, используемые в качестве сетевых и хост-адресов, не исправлены. Если у вас нет дополнительных сведений, сети и адреса хост-адресов, которые были выше, определить нельзя. Эта информация предоставляется в другом 32-битовом номере, называемом маской подсети. В этом примере маска подсети имеет 255.255.255.0. Это число не очевидно, если вы не знаете, что 255 в двоичной нотации равно 11111111. Таким образом, маска подсети — 11111111.11111111.11111111.0000000.
Выровнив IP-адрес и маску подсети вместе, можно разделить часть адреса между сетью и частью адреса.
11000000.10101000.01111011.10000100 — IP-адрес (192.168.123.132)
11111111.11111111.11111111.00000000 маска подсети (255.255.255.0)
Первые 24 бита (количество битов в маске подсети) определены как сетевой адрес. Последние 8 битов (количество оставшихся нулей в маске подсети) определены как адрес хоста. Он предоставляет следующие адреса:
11000000.10101000.01111011.00000000 — Сетевой адрес (192.168.123.0)
00000000.0000000.00000000.10000100 — адрес хоста (000.000.000.132)
Итак, в этом примере с маской подсети 255.255.255.0 вы знаете, что сетевой ИД — 192.168.123.0, а адрес хоста — 0.0.0.132. Когда пакет поступает в подсеть 192.168.123.0 (из локальной подсети или удаленной сети) и имеет адрес назначения 192.168.123.132, компьютер получит его из сети и обработать.
Почти все маски десятичной подсети преобразуются в двоичные числа слева и все нули справа. Некоторые другие распространенные маски подсети:
Decimal Binary 255.255.255.192 1111111.11111111.1111111.1100000 0 255.255.255.224 1111111.11111111.1111111.11100000
Интернет-RFC 1878 (доступно в interNIC-Public Information Относительнослужб регистрации доменных имен Интернета) описывает допустимые подсети и маски подсети, которые можно использовать в сетях TCP/IP.
Классы сети
Интернет-адреса выделяются организацией,которая администрирует Интернет. Эти IP-адреса разделены на классы. Наиболее распространенными из них являются классы A, B и C. Классы D и E существуют, но не используются конечными пользователями. Каждый из классов адресов имеет разную маску подсети по умолчанию. Класс IP-адреса можно определить, изусмотрив его первый октет. Ниже примеры адресов Интернета классов A, B и C, каждый из которых имеет пример адреса:
Сети класса A используют маску подсети по умолчанию 255.0.0.0 и имеют 0-127 в качестве первого октета. Адрес 10.52.36.11 является адресом класса A. Его первый октет — 10, то есть от 1 до 126 включительно.
Сети класса B используют маску подсети по умолчанию 255.255.0.0 и имеют 128-191 в качестве первого октета. Адрес 172.16.52.63 — это адрес класса B. Его первый октет — 172( от 128 до 191 включительно).
Сети класса C используют маску подсети по умолчанию 255.255.255.0 и имеют 192-223 в качестве первого октета. Адрес 192.168.123.132 — это адрес класса C. Его первый октет — 192( от 192 до 223 включительно).
В некоторых сценариях значения маски подсети по умолчанию не соответствуют потребностям организации по одной из следующих причин:
- Физическая топология сети
- Количество сетей (или хостов) не соответствует ограничениям маски подсети по умолчанию.
В следующем разделе объясняется, как можно разделить сети с помощью масок подсети.
Subnetting
Сеть TCP/IP класса A, B или C может быть дополнительно разделена системным администратором или подсети. Она становится необходимой при согласовании логической схемы адресов Интернета (абстрактного мира IP-адресов и подсетей) с физическими сетями, которые используются в реальном мире.
Системный администратор, которому выделен блок IP-адресов, может администрировать сети, которые не организованы таким образом, чтобы легко вместить эти адреса. Например, у вас есть широкая сеть с 150 хостами в трех сетях (в разных городах), подключенных маршрутизатором TCP/IP. Каждая из этих трех сетей имеет 50 хостов. Вы выделяете сеть класса C 192.168.123.0. (Например, этот адрес фактически находится в диапазоне, который не выделяется в Интернете.) Это означает, что для 150 хостов можно использовать адреса от 192.168.123.1 до 192.168.123.254.
Два адреса, которые нельзя использовать в примере, — 192.168.123.0 и 192.168.123.255, так как двоичные адреса с частью ведущего файла всех и всех нулей недопустимы. Недопустимый адрес нулевого адреса, так как он используется для указания сети без указания хоста. 255-адрес (в двоичной нотации — адрес хоста всех адресов) используется для трансляции сообщения на каждый хост в сети. Просто помните, что первый и последний адрес в любой сети или подсети не могут быть назначены отдельному хосту.
Теперь IP-адреса должны быть 254 хост-адреса. Это нормально, если все 150 компьютеров находятся в одной сети. Однако 150 компьютеров находятся в трех отдельных физических сетях. Вместо того чтобы запрашивать дополнительные блоки адресов для каждой сети, вы делите сеть на подсети, которые позволяют использовать один блок адресов в нескольких физических сетях.
В этом случае сеть делится на четыре подсети с помощью маски подсети, которая делает адрес сети больше и диапазон адресов может быть меньше. Другими словами, вы «заимствуете» некоторые биты, используемые для адреса хоста, и используете их для сетевой части адреса. Маска подсети 255.255.255.192 предоставляет четыре сети по 62 хостов в каждой. Он работает, так как в двоичной нотации 255.255.255.192 то же, что и 11111111.11111111.1111111.11000000. Первые две цифры последнего октета становятся сетевыми адресами, поэтому вы получаете дополнительные сети 00000000 (0), 01000000 (64), 10000000 (128) и 11000000 (192). (Некоторые администраторы будут использовать только две подсети, используя 255.255.255.192 в качестве маски подсети. Дополнительные сведения об этой теме см. в разделе RFC 1878.) В этих четырех сетях для адресов хост-адресов можно использовать последние шесть двоичных цифр.
Использование маски подсети 255.255.255.192 сеть 192.168.123.0 становится четырьмя сетями 192.168.123.0, 192.168.123.64, 192.168.123.128 и 192.168.123.192. Эти четыре сети будут иметь допустимые адреса хостов:
192.168.123.1-62 192.168.123.65-126 192.168.123.129-190 192.168.123.193-254
Помните, что двоичные адреса хостов со всеми или всеми нулями недопустимы, поэтому нельзя использовать адреса с последним октетом 0, 63, 64, 127, 128, 191, 192 или 255.
Чтобы узнать, как это работает, посмотрите на два адреса: 192.168.123.71 и 192.168.123.133. Если вы использовали маску подсети класса C по умолчанию 255.255.255.0, оба адреса находятся в сети 192.168.123.0. Однако если вы используете маску подсети 255.255.255.192, они находятся в разных сетях; 192.168.123.71 находится в сети 192.168.123.64, 192.168.123.133 — в сети 192.168.123.128.
Шлюзы по умолчанию
Если компьютеру TCP/IP необходимо взаимодействовать с хостом в другой сети, он обычно взаимодействует с устройством, которое называется маршрутизатором. В терминах TCP/IP маршрутизатор, указанный на хост-сайте, который связывает подсеть хоста с другими сетями, называется шлюзом по умолчанию. В этом разделе объясняется, как TCP/IP определяет, следует ли отправлять пакеты на шлюз по умолчанию для достижения другого компьютера или устройства в сети.
Когда хост пытается связаться с другим устройством с помощью TCP/IP, он выполняет сравнение с использованием определенной маски подсети и ip-адреса назначения и маски подсети и собственного IP-адреса. Результат этого сравнения сообщает компьютеру, является ли назначение локальным или удаленным.
Если в результате этого процесса будет определяться назначение локального хоста, компьютер отправит пакет в локализованную подсеть. Если результат сравнения определяет назначение как удаленный хост, компьютер перенаправление пакета на шлюз по умолчанию, определенный в его свойствах TCP/IP. После этого маршрутизатор перенаправит пакет в правильную подсеть.
Устранение неполадок
Проблемы с сетью TCP/IP часто вызваны неправильной настройкой трех основных записей в свойствах TCP/IP компьютера. Понимая, как ошибки в конфигурации TCP/IP влияют на сетевые операции, можно решить множество распространенных проблем TCP/IP.
Неправильная маска подсети: если в сети для класса адресов используется маска подсети, которая не является маской по умолчанию, а для клиента по-прежнему настроена маска подсети по умолчанию для класса адресов, связь не будет работать с некоторыми ближайшими сетями, но не с удаленными сетями. Например, если создать четыре подсети (например, в примере подсети), но использовать неправильную маску подсети 255.255.255.0 в конфигурации TCP/IP, hosts won’t be able to determine that some computers are on different subnets than their own. В этой ситуации пакеты, предназначенные для хостов в различных физических сетях, которые являются частью одного адреса класса C, не будут отправлены на шлюз по умолчанию для доставки. Распространенным признаком этой проблемы является то, что компьютер может взаимодействовать с хостами в локальной сети и взаимодействовать со всеми удаленными сетями, кроме тех сетей, которые находятся поблизости и имеют один и тот же адрес класса A, B или C. Чтобы устранить эту проблему, просто введите правильную маску подсети в конфигурации TCP/IP для этого хоста.
Неправильный IP-адрес: если компьютеры с IP-адресами должны быть в разных подсетях локальной сети друг с другом, они не смогут взаимодействовать друг с другом. Они попытаются отправить пакеты друг другу через маршрутизатор, который не может переслать их правильно. Признаком этой проблемы является компьютер, который может взаимодействовать с хостами в удаленных сетях, но не может взаимодействовать с некоторыми или всеми компьютерами в локальной сети. Чтобы устранить эту проблему, убедитесь, что все компьютеры в одной физической сети имеют IP-адреса в одной IP-подсети. Если в одном сетевом сегменте иссякает КОЛИЧЕСТВО IP-адресов, существуют решения, которые выходят за рамки данной статьи.
Неправильный шлюз по умолчанию: компьютер, настроенный с неправильным шлюзом по умолчанию, может взаимодействовать с хостами в своем сетевом сегменте. Однако он не сможет связаться с хостами в некоторых или всех удаленных сетях. При следующих условиях хост может взаимодействовать с некоторыми удаленными сетями, но не с другими:
- Одна физическая сеть имеет несколько маршрутизаторов.
- Неправильный маршрутизатор настроен как шлюз по умолчанию.
Эта проблема распространена, если в организации есть маршрутизатор к внутренней сети TCP/IP и другой маршрутизатор, подключенный к Интернету.
Ссылки
Две популярные ссылки на TCP/IP:
- «TCP/IP Illustrated, volume 1: The Protocols», Edison Wesley, 1994
- «Интернет-работа с использованием TCP/IP, том 1: принципы, протоколы и архитектура», Д. Комр, Prentice Зал, 1995
Рекомендуется, чтобы системный администратор, отвечающий за сети TCP/IP, мог иметь хотя бы одну из этих ссылок.
Глоссарий
Адрес вещания — IP-адрес с частью ведущего, которая является всеми.
Host —компьютер или другое устройство в сети TCP/IP.
Интернет — глобальная коллекция сетей, которые связаны друг с другом и совместно имеют общий диапазон IP-адресов.
InterNIC — организация, отвечая за администрирование IP-адресов в Интернете.
IP. Сетевой протокол, используемый для отправки сетевых пакетов через сеть TCP/IP или Интернет.
IP-адрес — уникальный 32-битный адрес для хоста в сети TCP/IP или в Интернете.
Сеть. В этой статье используется два термина сети. Один из них — это группа компьютеров в одном физическом сегменте сети. Другой — это диапазон IP-адресов сети, выделенный системным администратором.
Сетевой адрес — IP-адрес с частью хоста, которая имеет все нули.
Octet — 8-битный номер, 4 из которых составляют 32-битный IP-адрес. Они имеют диапазон от 000000000 до 11111111, соответствующий десятичных значений от 0 до 255.
Пакет — единица данных, передаемая по сети TCP/IP или в широкой сети.
RFC (запрос на комментарий) — документ, используемый для определения стандартов в Интернете.
Маршрутизатор — устройство, которое передает сетевой трафик между различными IP-сетями.
Маска подсети — 32-битное число, используемого для разлищения сетей и частей IP-адреса.
Подсеть или подсеть — небольшая сеть, созданная путем деления большой сети на равные части.
TCP/IP— широко используемый набор протоколов, стандартов и utilities, часто используемых в Интернете и крупных сетях.
Широкая сеть (WAN) — крупная сеть, которая является коллекцией небольших сетей, разделенных маршрутизаторами. Интернет является примером большой сети WAN.