что такое маска подсети и для чего она нужна
Маска подсети
Из Википедии — свободной энциклопедии
Маска подсети — битовая маска для определения по IP-адресу адреса подсети и адреса узла (хоста, компьютера, устройства) этой подсети. В отличие от IP-адреса маска подсети не является частью IP-пакета.
Благодаря маске можно узнать, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети.
Например, узел с IP-адресом 12.34.56.78 и маской подсети 255.255.255.0, с длиной префикса 24 бита (/24), находится в сети 12.34.56.0.
В случае адресации IPv6 адрес 2001:0DB8:1:0:6C1F:A78A:3CB5:1ADD с длиной префикса 32 бита (/32) находится в сети 2001:0DB8::/32.
Другой вариант определения — это определение подсети IP-адресов. Например, с помощью маски подсети можно сказать, что один диапазон IP-адресов будет в одной подсети, а другой диапазон соответственно в другой подсети.
Чтобы получить адрес сети, зная IP-адрес и маску подсети, необходимо применить к ним операцию поразрядной конъюнкции (побитовое И). Например, в случае более сложной маски:
Разбиение одной большой сети на несколько маленьких подсетей позволяет упростить маршрутизацию. Например, пусть таблица маршрутизации некоторого маршрутизатора содержит следующую запись:
Сеть назначения | Маска сети | Адрес шлюза |
---|---|---|
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, которому и отправляется пакет.
Битовые операции при расчёте адреса сети в IPv6 выглядят аналогично. Но в IPv6 можно просто рассчитать адрес сети по длине префикса, применив формулу: «длина префикса в битах» / 4 = «кол-во 0xF у адреса сети». Взяв полученное количество 0xF из адреса узла, получаем адрес сети.
Маска подсети – как узнать: виды сетей
Опубликовано admin в 18 декабря, 2019 18 декабря, 2019
Что такое маска подсети.
Чтобы понять, что такое маска подсети, сначала нужно узнать, что такое IP-адрес (Интернет-протокол). Каждое устройство, которое подключается к сети, нуждается в своем собственном уникальном идентификаторе, чтобы они могли взаимодействовать друг с другом. IP-адрес – это строка чисел, разделенных точками, например: 172.16.81.100.
Маска подсети тоже является числом, и она определяет диапазон IP-адресов, которые может использовать сеть. С ее помощью сети могут делиться на небольшие подсети, которые подключаются к Интернету. Маска подсети будет обозначать эти подсети.
Устройства, расположенные в одной подсети, могут взаимодействовать друг с другом. Если устройства одной подсети хотят обмениваться данными с другой, им потребуется маршрутизатор для маршрутизации коммутации между ними. Это можно использовать для разделения многочисленных сетей и, следовательно, для ограничения связи между ними.
Задача маски подсети, если простыми словами, – скрыть сетевой элемент адреса. Виден только элемент хоста. Одна из наиболее распространенных масок класса C – 255.255.255.0.
Каждый раздел адреса маски подсети может содержать любые числа от 0 до 255. Для 255.255.255.0 первые 3 раздела заполнены, что означает, что IP-адреса устройств в этой подсети должны совпадать с начальными 3 разделами. Последний раздел может быть любым числом от 0 до 255.
Пример лучше всего объясняет это. Два IP-адреса 12.0.1.101 и 12.0.1.102 расположены в одной подсети, а номер 12.0.2.101 будет находиться уже в другой.
С маской 255.255.255.0 существует 256 IP-адресов, но только 254 из них могут использоваться для хостов. Это связано с тем, что шлюз (обычно первый адрес – 0) и широковещательный адрес (обычно последний адрес – 255) зарезервированы.
Почему подсеть так важна
Одной из наиболее важных причин является безопасность. Когда вы находитесь в той же подсети, что и другие устройства, существует свободная связь, но устройства в других подсетях не смогут получить прямой доступ к вам.
Хорошим примером этого является домашняя сеть. У вас есть маршрутизатор, который будет использовать подсеть для безопасности. Ваш провайдер выделит вам публичный статический IP-адрес. Этот номер будут видеть все веб-сайты и всё, к чему вы подключаетесь. Однако, если вы проверите идентификатор вашего компьютера, он, скорее всего, будет отличаться от общедоступного.
Это связано с тем, что на домашней стороне маршрутизатора имеется подсеть, на которую нельзя войти извне. Входящий трафик проходит через маршрутизатор, который затем транслирует и направляет его на правильное устройство. Таким образом, все по-прежнему связано, но не подключено напрямую.
Подсеть увеличит количество устройств, которые могут выходить в Интернет. В стандартной сети IPv4 доступно только около трех миллиардов адресов. Этого недостаточно, чтобы удовлетворить глобальный спрос на подключение.
Таким образом, подсеть используется, чтобы позволить множеству устройств подключаться к Интернету с одним IP-адресом через маршрутизатор (как у вас дома или в офисе), и таким образом намного больше трех миллиардов устройств может иметь доступ к интернету.
Типичная маска подсети для домашних сетей – 255.255.255.0. Это 24-битная маска, которая позволяет использовать до 256 уникальных номеров. Однако возможны «только» 254 хоста, которых должно быть достаточно для большинства квартир. Но в больших масштабах этого очень мало. Хорошо, что 255.255.255.0 можно изменить на что-то другое. Это увеличит сеть и пропускную способность хостов. Например, 255.255.0.0, который является 16-битной маской, может иметь 65 536 хостов.
В чем разница между IP-адресом и маской
Это кажется немного запутанным. Как узнать разницу между маской подсети и IP? Давайте использовать пример, чтобы устранить путаницу.
Лучший способ сделать это – подумать об обычном адресе, таком как домашний или физический адрес вашей компании. Итак, допустим, что один из ваших друзей хочет отправить вам письмо. Он пишет ваш адрес на конверте, затем добавляет штамп и помещает в свой почтовый ящик.
Почтовый работник получает письмо и, если адрес получателя является локальным, отправляет его прямо в ваш почтовый ящик. Если адрес находится в другом городе или поселке, письмо отправляется в центральное почтовое отделение, где работники его сортируют и отправляют туда, куда оно должно дойти. IP-адрес работает аналогичным образом.
Итак, если ваш IP – 20.0.0.1, а маска подсети – 255.0.0.0, это означает, что адреса в диапазоне 20.x.x.x находятся в вашей локальной сети. Однако, если вы хотите отправить что-либо на IP-адрес за пределами вашей подсети, например, 30.0.0.1, вы не можете сделать это напрямую (по аналогии с почтой это будет в другом городе).
В этом случае почта отправляет сообщение в местный центральный офис, а затем в местный центральный офис предполагаемого получателя. И только после этого почтовый работник доставляет его.
Таким образом, IP-адрес – это номер, который имеет номер сети, номер подсети (это необязательно) и номер хоста. Номера сети и подсети используются при маршрутизации, а номер хоста является адресом хоста.
Маска подсети численно определяет формат IP-адреса, где биты сети и подсети, которые формируют адрес, имеют значения битов маски 1, а компонент узла адреса использует значение бита маски 0.
Виды сетей – что такое сеть класса A, класса B и C
IP-адреса делятся на отдельные классы. Наиболее распространенными являются адреса классов A, B и C.
Каждый из этих классов по умолчанию использует разные маски подсети, и вы можете легко определить класс IP-адреса по первому октету, который он использует.
Класс А
В сети класса A вы увидите маску по умолчанию 255.0.0.0. Это означает, что первый октет IP-адресов класса A будет находиться в диапазоне от 0 до 127. Пример IP-адреса класса A будет 12.48.24.9.
Сети класса A имеют 8-битный префикс с максимальным битом, установленным на 0. Существует 7-битный номер сети, а номер хоста – 24-битный.
С классом А существует максимум 126 сетей.
Класс B
В сети класса B вы увидите маску по умолчанию 255.255.0.0. Это означает, что первый октет IP-адресов класса B будет находиться между 128 и 191. Пример IP-адреса класса B будет 171.17.51.64.
Сети класса B имеют 16-битный префикс с самым высоким битовым порядком. Номер сети – 14 бит, а номер хоста – 16 бит.
Класс С
В сети класса C вы увидите маску по умолчанию 255.255.255.0. Это означает, что первый октет IP-адресов класса C будет между 192 и 223. Примером IP-адреса класса C будет 194.166.124.133.
Сети класса C имеют 24-битный префикс с наивысшим битовым порядком, установленным в 1-1-0. Номер сети 24 бит, а номер хоста 8 бит.
Как узнать свою маску
Это будет отличаться в зависимости от того, используете ли вы Windows, Mac или Linux.
Откройте командную строку, выполнив поиск CMD
Введите ipconfig и нажмите ввод
Там будет строка с именем «Маска подсети», которая сообщит вам маску, а так же шлюз вашего компьютера.
Маска подсети для Windows
Для пользователей Mac и Linux:
Введите ifconfig и нажмите ввод.
Там будет строка с именем «Маска подсети», которая сообщит вам маску и шлюз вашего компьютера.
Пишите в комментариях ниже, какую информацию добавить или убрать по данной теме. Открыт для предложений по оформлению и наполнению страницы.
Как узнать маску сети: что это такое и зачем она нужна
С понятием «маска подсети» сталкивался каждый, кто хоть раз делал настройки интернета на телефоне или компьютере. Объяснить же суть определения, сможет не каждый. Эта статья поможет ответить на все основные вопросы по данной теме.
Определение
Всего существует пять категорий маршрутизации. В соответствии с нуждами потребителя могут быть зарезервированы адреса классов A, B, C, D, E. Например, адреса категории В могут отдавать только организациям и фирмам, которые имеют большое количество вычислительной техники. Предоставлять их потребителям домашнего интернета нецелесообразно. Это слишком дорого и нерентабельно.
Классическому пользователю вряд ли понадобится более 65000 адресов, именно столько хостов может объединять адрес типа В. В этом случае и понадобится распределить их по подразделам.
«Маска подсети – это битовая маска, которая используется для отслеживания принадлежности конкретного IP-адреса к определенной подсети».
Этот параметр необходим для определения девайсом его локации по отношению к другим устройствам, принадлежности к определенной сети. Сам процесс осуществляется путем перевода IP и маски в двоичный код и побитовым поочередным перемножением двух этих чисел.
Для лучшего понимания возьмем маску 255.255.248.0 и переведем ее в двоичный код, получится 11111111.11111111.11111000.00000000. Обратите внимание, что первыми в списке идут единицы, а потом нули, эти цифры не должны чередоваться. Для примера будем использовать IP-адрес 192.168.11.10, его двоичный код выглядит так – 11000000.10101000.00001011.00001010. Компьютер выполняет поочередное побитовое перемножение, считать просто (1*1=1; 1*0=0; 0*0=0), и в резуультате получается следующее число – 11000000.10101000.00001000.00000000 – 192.168.8.0/21, это и есть айпи подсети (21 – количество бит, выделенное для подсети).
Назначение маски подсети, IP-адреса, шлюза
Любой девайс, который имеет возможность выхода в сеть, должен быть обозначен своим уникальным кодом, IP-адресом. Встречаются и локальные (внутрисетевые) IP-адреса, не предназначенные для выхода в интернет, но в данном случае нас интересуют устройства с присутствием этой функции. Это может быть не только компьютер, но и роутер, принтер и любое другое устройство, которое имеет возможность выйти в интернет.
Каждая единица такой техники в сети называется хостом. Лучше объединить несколько IP-адресов, которые смогут использовать сеть в рамках определенной подсети. Локация или местоположение хоста определяется при помощи протокола сетевого взаимодействия. Наиболее распространенным является протокол версии CP/IPv4.
Сама маска содержит 4 раздела, каждый из которых может быть числом от 0 до 255. У хостов, находящихся в одной подсети, первые октеты одинаковые (та часть, где в двоичной системе стоят единицы), отличаться могут лишь концовки. Например:
В данном случае, число в четвертом разделе – это идентификатор хоста. Как адрес дома состоит из названия улицы и номера дома, так и IP-адрес в своем числовом значении имеет адрес сети и адрес хоста. Подробное описание и расчет IP-адресов даны в следующем видео:
Если объяснить доступным для чайников языком, получится следующее сравнение: двум живущим в одном дворе людям проще передать пакет друг другу, для передачи в другой город понадобятся, например, услуги почты. В сети все устроено аналогично. Два устройства в одной сети получают пакеты данных напрямую, а зарегистрированные в разных сетях устройства для передачи данных используют шлюз.
Это практично с точки зрения безопасности. В отдельных случаях в разных сетях необходимо осуществлять подключение разного количества девайсов, в одном месте 40 компьютеров, в другом 5. Для этого и создаются подсети, обобщенные одним маршрутизатором.
Приведем пример: в доме есть один маршрутизатор, который предоставляет трафик другим девайсам (компьютер, ноутбук, планшет или телефон). Провайдер выделяет статический IP-адрес, а сам маршрутизатор использует подсеть для ограничения доступа извне. Так вы можете выходить в интернет с разных устройств при использовании роутером функции трансляции сигнала.
Префикс
«Префикс создан для удобства графического отображения сетевой маски, он определяет количество бит порции сети».
Выглядит он следующим образом: 252.154.130.150/5. Ниже представлена таблица, которая наглядно отображает принцип формирования значений префикса. Количество единиц в двоичном коде маски и есть значение префикса.
Если известны IP-адрес сети и префикс, можно без труда определить маску подсети (или взять ее значение из таблицы), далее на основе этих данных можно узнать адрес сети и адрес хоста. Все математически легко высчитывается. Сам префикс показывает, сколько бит выделено в рамках одной сети. Провайдер может сокращать или расширять хостовую часть, тем самым контролируя количество возможных подключений дополнительных IP-адресов.
Число адресов
Маска подсети дает информацию о количестве доступных хостов, которые можно использовать. Выделяемое число адресов зависит от потребностей пользователя.
Рассчитать количество хостов или подсетей в пределах одной сети несложно. Для этого возьмем сеть в десятичной записи 232.154.120.4/26. Префикс равен 26, значит формат двоичных чисел будет следующим:
В последнем разделе 11000000 первые 2 бита – единицы, значит вычисление числа подсетей будет выглядеть так:
В этом же разделе считаем нули, их 6, вычисляем количество хостов:
Следовательно, число IP-адресов первой подсети – 62 (0 – подсеть, 61 – broadcast)
Таким образом можно вычислить диапазон IP для каждой из шести подсетей.
Обратная маска
«Обратная маска – это инверсия маски подсети, образ, где единицы заменяются нулями, а нули единицами».
Допустим, у нас есть прямая маска (subnet mask)
Ее инверсия (wildcard mask) будет выглядеть так:
Для чего же нужна маска сети в обратном виде? Она позволяет отфильтровать узлы или группы в разных подсетях, а также реализовать другие задачи. Такая технология отображения удобна, например, для выявления хостов с определенными адресами и объединения их в одну систему с целью предоставления общего доступа.
Вычисление маски подсети
Иногда возникает потребность определить маску подсети, нужно это, как правило, для определения количества IP-адресов в пределах одной подсети или для настройки оборудования, например, роутера.
Числовое значение маски подсети в двоичной системе счисления определяет количество бит. Всего по умолчанию имеется 32 бита в значении, это стандартный размер, в его составе есть единицы и нули. Биты со значением единицы представляют адрес сети, а биты с нулями относятся к адресу хоста. Если в коде 8 единиц, тогда перед нами восьмибитная маска.
Для определения значения маски на компьютере с ОС Windows используем следующую технологию: вводим «ipconfig» в командной строке и жмем Enter. Также эту информацию можно получить в разделе «Сетевые подключения». Выбираем действующее подключение, вызываем диалоговое меню и выбираем «Состояние».
В появившемся окне кликаем «Сведения», откроется вкладка с нужными данными. Эти способы подойдут, если необходимо определить маску подсети для внутреннего IP. Для определения маски внешнего айпи, можно воспользоваться онлайн калькулятором.
Необходимо ввести нужный айпи и нажать «Подсчитать», система выведет результат. Такие онлайн-калькуляторы присутствуют на тематических сайтах.
Для удобства и экономии времени можно использовать и другие утилиты, которые быстро рассчитают и проанализируют числовые данные.
Маска подсети — что это такое в деталях
Наверное, каждый, кто хоть раз сталкивался с настройкой интернет соединения слышал о таком понятии — Маска подсети, но не все знают, что это такое, да и информация в интернете по этому запросу довольно устарела и сложна в понимании.
Давайте закроем этот пробел знаний в работе сети и интернета в целом и выясним, что это такое и зачем она в принципе нужна. Информация будет изложена самым доступным и понятным языком.
Итак, вот мы и отметили день программиста, продолжим обучение компьютерной грамотности и разберем по полочкам, что такое маска подсети, для чего она нужна и как вообще это работает.
Что такое маска подсети
Маска подсети (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 адресов. 2^12 = 4 096. Убираем два адреса, т.к. они всегда зарезервированы под свои цели и получаем 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 адреса общие понятия.
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».
Если что, октет — это ровно то же самое, что байт. Но если вы скажете «октет» в среде профессионалов, они вас сразу зауважают и вам легче будет сойти за своего.
В заголовке IP-пакета есть поля «source IP» и «destination IP». Это адреса источника: кто посылает и назначения: кому отправлено. Почти как на почтовом конверте. Внутри пакетов у IP-адресов нет никаких масок, и разделителей между октетами тоже нет. Просто 32 бита для адреса назначения и еще 32 для адреса источника.
Однако, когда IP-адрес присваивается интерфейсу — ещё говорят, сетевому адаптеру — компьютера или маршрутизатора, то, кроме самого адреса этого устройства, ему присваивают еще и маску подсети.
Можно повторить, это важно: *маска IP-адреса* НЕ передается в заголовках IP-пакетов.
Компьютерам маска подсети нужна для определения границ. угадайте, чего именно. подсети. Это нужно, чтобы каждый мог определить, кто находится с ним в одной (под)сети, а кто — за ее пределами. Вообще-то можно говорить просто «сети», часто этот термин используют именно в значении «IP-подсеть». Внутри одной сети компьютеры обмениваются пакетами напрямую, но если нужно послать пакет в другую сеть, шлют их шлюзу по умолчанию (это третий параметр, настраиваемый в сетевых свойствах). Вот как это происходит.
Маска подсети — это тоже 32-бита. Но, в отличие от IP-адреса, нули и единицы в ней не могут чередоваться. Всегда сначала идут единицы, потом нули.
Сначала 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 зарезервирован для мультикаста, и так далее. Но конвенции — это не совсем законы в полном юридическом смысле слова. Их цель — сделать проще и легче административное взаимодействие. Конвенции крайне не рекомендуется нарушать, но до поры до времени никем не запрещено использовать любые адреса для любых целей. Ровно до того момента, пока вы не встречаетесь с внешним миром