что такое маска подсети и шлюз для чайников
IT Help
информация про сетевые технологии и всё про информационные технологии.
воскресенье, 22 мая 2011 г.
Что же такое IP адрес, основной шлюз и маска подсети.
IP-адреса: сети и узлы.
IP-адрес представляет собой 32-разрядный номер, который уникально идентифицирует узел (компьютер или устройство, например, принтер или маршрутизатор) в сети TCP/IP.
IP-адреса обычно представлены в виде 4-х разрядов, разделенных точками, например 192.168.123.132. Чтобы понять использование масок подсетей для распознавания узлов, сетей и подсетей, обратите внимание на IP-адрес в двоичном обозначении.
Например, в виде разрядов, разделенных точками, IP-адрес 192.168.123.132 – это (в двоичном обозначении) 32-разрядный номер 110000000101000111101110000100. Такой номер сложно интерпретировать, поэтому разбейте его на четыре части по восемь двоичных знаков.
Эти 8-разрядные секции называются «октеты». Тогда данный IP-адрес будет иметь вид: 11000000.10101000.01111011.10000100. Этот номер ненамного понятнее, поэтому в большинстве случаев следует преобразовывать двоичный адрес в формат разделенных точками разрядов (192.168.123.132). Десятичные числа, разделенные точками, и есть октеты, преобразованные из двоичного в десятичное обозначение.
Чтобы глобальная сеть TCP/IP работала эффективно как совокупность сетей, маршрутизаторы, обеспечивающие обмен пакетами данных между сетями, не знают точного расположения узла, для которого предназначен пакет. Маршрутизаторы знают только, к какой сети принадлежит узел, и используют сведения, хранящиеся в таблицах маршрутизации, чтобы доставить пакет в сеть узла назначения. Как только пакет доставлен в необходимую сеть, он доставляется в соответствующий узел.
Для осуществления этого процесса IP-адрес состоит из двух частей. Первая часть IP-адреса обозначает адрес сети, последняя часть – адрес узла. Если рассмотреть IP-адрес 192.168.123.132 и разбить его на эти две части, то получится следующее:
Маска подсети.
Следующий элемент, необходимый для работы протокола TCP/IP, – это маска подсети. Протокол TCP/IP использует маску подсети, чтобы определить, в какой сети находится узел: в локальной подсети или удаленной сети.
В протоколе TCP/IP части IP-адреса, используемые в качестве адреса сети и узла, не зафиксированы, следовательно, указанные выше адреса сети и узла невозможно определить без наличия дополнительных сведений. Данные сведения можно получить из другого 32-разрядного номера под названием «маска подсети». В этом примере маской подсети является 255.255.255.0. Значение этого номера понятно, если знать, что число 255 в двоичном обозначении соответствует числу 11111111; таким образом, маской подсети является номер:
Из данного примера с использованием маски подсети 255.255.255.0 видно, что код сети 192.168.123.0, а адрес узла 0.0.0.132. Когда пакет с конечным адресом 192.168.123.132 доставляется в сеть 192.168.123.0 (из локальной подсети или удаленной сети), компьютер получит его из сети и обработает.
Почти все десятичные маски подсети преобразовываются в двоичные числа, представленные единицами слева и нолями справа. Вот еще некоторые распространенные маски подсети:
Классы сетей
Подсети
TCP/IP-сеть класса A, B или C может еще быть разбита на подсети системным администратором. Образование подсетей может быть необходимо при согласовании логической структуры адреса Интернета (абстрактный мир IP-адресов и подсетей) с физическими сетями, используемыми в реальном мире.
Системный администратор, выделивший блок IP-адресов, возможно, администрирует сети, организованные не соответствующим для них образом. Например, имеется глобальная сеть с 150 узлами в трех сетях (в разных городах), соединенных маршрутизатором TCP/IP. У каждой из этих трех сетей 50 узлов. Выделяем сеть класса C 192.168.123.0. (Для примера, на самом деле этот адрес из серии, не размещенной в Интернете.) Это значит, что адреса с 192.168.123.1 по 192.168.123.254 можно использовать для этих 150 узлов.
Два адреса, которые нельзя использовать в данном примере, – 192.168.123.0 и 192.168.123.255, так как двоичные адреса с составляющей узла из одних единиц и нолей недопустимы. Адрес с 0 недопустим, поскольку он используется для определения сети без указания узла. Адрес с числом 255 (в двоичном обозначении адрес узла, состоящий из одних единиц) используется для доставки сообщения на каждый узел сети. Следует просто запомнить, что первый и последний адрес в любой сети и подсети не может быть присвоен отдельному узлу.
Теперь осталось дать IP-адреса 254 узлам. Это несложно, если все 150 компьютеров являются частью одной сети. Однако в данном примере 150 компьютеров работают в трех отдельных физических сетях. Вместо запроса на большее количество адресных блоков для каждой сети сеть разбивается на подсети, что позволяет использовать один блок адресов в нескольких физических сетях.
В данном случае сеть разбивается на четыре подсети с помощью маски подсети, которая увеличивает адрес сети и уменьшает возможный диапазон адресов узлов. Другими словами, мы «одалживаем» несколько разрядов, обычно используемых для адреса узла, и используем их для составляющей сети в адресе. Маска подсети 255.255.255.192 позволяет создать четыре сети с 62 узлами в каждой. Это возможно, поскольку в двоичном обозначении 255.255.255.192 – то же самое, что и 1111111.11111111.1111111.11000000. Первые две цифры последнего октета становятся адресами сети, поэтому появляются дополнительные сети 00000000 (0), 01000000 (64), 10000000 (128) и 11000000 (192). (Некоторые администраторы применяют только две из этих подсетей, используя номер 255.255.255.192 в качестве маски подсети. Для получения дополнительной информации по этому вопросу см. RFC 1878.) В этих четырех сетях последние 6 двоичных цифр можно использовать в качестве адресов узлов.
Использование маски подсети 255.255.255.192 преобразует сеть 192.168.123.0 в четыре сети: 192.168.123.0, 192.168.123.64, 192.168.123.128 и 192.168.123.192. Эти четыре сети будут иметь следующие действующие адреса узлов:
Не забывайте, что двоичные адреса узлов с одними только единицами и нолями недействительны, поэтому нельзя использовать адреса со следующими числами в последнем октете: 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, узлы не смогут определить, что некоторые компьютеры находятся в других подсетях. В таком случае пакеты, предназначенные для узлов в различных физических сетях, являющихся частью одного адреса класса C, не будут отправлены на основной шлюз для доставки. Общим признаком этого является ситуация, когда компьютер может взаимодействовать с узлами в своей локальной сети и может связаться со всеми удаленными сетями, кроме тех, что расположены рядом и имеют тот же адрес класса A, B или C. Для устранения данной проблемы укажите верную маску подсети в настройке TCP/IP для этого узла.
Неверный IP-адрес. Если поместить компьютеры с IP-адресами, которые должны быть в отдельных подсетях, вместе в локальную сеть, они не смогут установить связь друг с другом. Они будут пытаться послать друг другу пакеты через маршрутизатор, который не сможет направить эти пакеты соответствующим образом. Признаком данной проблемы является ситуация, когда компьютер может установить связь с узлами в удаленных сетях, но не может взаимодействовать с некоторыми или всеми компьютерами в своей локальной сети. Для устранения данной проблемы убедитесь, что все компьютеры в одной физической сети имеют IP-адреса в одной и той же IP-подсети. Если израсходованы все IP-адреса в отдельном секторе сети, есть другие решения, которые в данной статье не описываются.
Неверный основной шлюз. Компьютер с неверно настроенным основным шлюзом сможет взаимодействовать с узлами в своем собственном сегменте сети, однако не сможет установить связь с узлами в некоторых или во всех удаленных сетях. Если одна физическая сеть имеет более одного маршрутизатора и неверный маршрутизатор настроен в качестве основного шлюза, узел сможет взаимодействовать с некоторыми удаленными сетями, но не со всеми. Эта проблема часто возникает, если в организации один маршрутизатор соединен с внутренней сетью TCP/IP, а другой — с Интернетом.
Маска подсети – как узнать: виды сетей
Опубликовано 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 и нажмите ввод.
Там будет строка с именем «Маска подсети», которая сообщит вам маску и шлюз вашего компьютера.
Пишите в комментариях ниже, какую информацию добавить или убрать по данной теме. Открыт для предложений по оформлению и наполнению страницы.
Еще раз про IP-адреса, маски подсетей и вообще
Чуточку ликбеза. Навеяно предшествующими копипастами разной чепухи на данную тему. Уж простите, носинг персонал.
IP-адрес (v4) состоит из 32-бит. Любой уважающий себя админ, да и вообще айтишник (про сетевых инженеров молчу) должен уметь, будучи разбуженным среди ночи или находясь в состоянии сильного алкогольного опьянения, правильно отвечать на вопрос «из скольки бит состоит IP-адрес». Желательно вообще-то и про IPv6 тоже: 128 бит.
Обстоятельство первое. Всего теоретически IPv4-адресов может быть:
2 32 = 2 10 *2 10 *2 10 *2 2 = 1024*1024*1024*4 ≈ 1000*1000*1000*4 = 4 млрд.
Ниже мы увидим, что довольно много из них «съедается» под всякую фигню.
Записывают IPv4-адрес, думаю, все знают, как. Четыре октета (то же, что байта, но если вы хотите блеснуть, то говорите «октет» — сразу сойдете за своего) в десятичном представлении без начальных нулей, разделенные точками: «192.168.11.10».
В заголовке IP-пакета есть поля source IP и destination IP: адреса источника (кто посылает) и назначения (кому). Как на почтовом конверте. Внутри пакетов у IP-адресов нет никаких масок. Разделителей между октетами тоже нет. Просто 32-бита на адрес назначения и еще 32 на адрес источника.
Однако, когда 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:
11000000.10101000.00001011.00001010
11111111.11111111.11111000.00000000
———————————————-
11000000.10101000.00001000.00000000 = 192.168.8.0
Обстоятельство второе. Любой уважающий себя администратор обязан уметь переводить IP-адреса из десятичной формы в двоичную и обратно в уме или на бумажке, а также хорошо владеть двоичной арифметикой.
Адрес 192.168.8.0, со всеми обнуленными битами на позициях, соответствующих нулям в маске, называется адресом подсети. Его (обычно) нельзя использовать в качестве адреса для интерфейса того или иного хоста. Если же эти биты наоборот, установить в единицы, то получится адрес 192.168.15.255. Этот адрес называется направленным бродкастом (широковещательным) для данной сети. Смысл его по нынешним временам весьма невелик: когда-то было поверье, что все хосты в подсети должны на него откликаться, но это было давно и неправда. Тем не менее этот адрес также нельзя (обычно) использовать в качестве адреса хоста. Итого два адреса в каждой подсети — на помойку. Все остальные адреса в диапазоне от 192.168.8.1 до 192.168.15.254 включительно являются полноправными адресами хостов внутри подсети 192.168.8.0/21, их можно использовать для назначения на компьютерах.
Таким образом, та часть адреса, которой соответствуют единицы в маске, является адресом (идентификатором) подсети. Ее еще часто называют словом префикс. А часть, которой соответствуют нули в маске, — идентификатором хоста внутри подсети. Адрес подсети в виде 192.168.8.0/21 или 192.168.8.0 255.255.248.0 можно встретить довольно часто. Именно префиксами оперируют маршрутизаторы, прокладывая маршруты передачи трафика по сети. Про местонахождение хостов внутри подсетей знает только шлюз по умолчанию данной подсети (посредством той или иной технологии канального уровня), но не транзитные маршрутизаторы. А вот адрес хоста в отрыве от подсети не употребляется совсем.
Из данного обстоятельства в частности следует, что максимальной длиной маски для подсети с хостами является N=30. Именно сети /30 чаще всего используются для адресации на point-to-point-линках между маршрутизаторами.
И хотя большинство современных маршрутизаторов отлично работают и с масками /31, используя адрес подсети (нуль в однобитовой хоствой части) и бродкаст (единица) в качестве адресов интерфейсов, администраторы и сетевые инженеры часто попросту боятся такого подхода, предпочитая руководствоваться принципом «мало ли что».
А вот маска /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-подсетей (2+) и маршрутизатор (точнее файрвол, но в данном контексте можно считать эти слова синонимами), маршрутизирующий и контролирующий трафик между подсетями.
Обстоятельство пятое. Как и любому приличному IT-шнику, администратору сети, если только он получает зарплату не за красивые глаза, положено знать наизусть степени двойки от 0 до 16.
Процесс объединения мелких префиксов (с длинной маской, в которых мало хостов) в крупные (с короткой маской, в которых много хостов) называется агрегацией или суммаризацией (вот не суммированием!). Это очень важный процесс, позволяющий минимизировать количество информации, необходимой маршрутизатору для поиска пути передачи в сети. Так, скажем, провайдеры выдают клиентам тысячи маленьких блоков типа /29, но весь интернет даже не знает об их существовании. Вместо этого за каждым провайдером закрепляются крупные префиксы типа /19 и крупнее. Это позволяет на порядки сократить количество записей в глобальной таблице интернет-маршрутизации.
Обстоятельство шестое. Чем больше длина маски, тем меньше в подсети может быть хостов, и тем большую долю занимает «съедение» адресов на адреса подсети, направленного бродкаста и шлюза по умолчанию. В частности в подсети с маской /29 (2 32-29 = 8 комбинаций) останется всего 5 доступных для реального использования адресов (62,5%). Теперь представьте, что вы провайдер, выдающий корпоративным клиентам тысячи блоков /29. Таким образом, грамотное разбиение IP-пространства на подсети (составление адресного плана) — это целая маленькая наука, включающая поиск компромиссов между разными сложными факторами.
При наличии достаточно большого диапазона адресов, как правило из блоков для частного использования 10.0.0.0/8, 172.16.0.0/12 и 192.168.0.0/16, конечно, удобно использовать маски, совпадающие по длине с границами октетов: /8, /16, /24 или, соответственно, 255.0.0.0, 255.255.0.0 и 255.255.255.0. При их использовании можно облегчить работу мозгу и калькулятору, избавившись от необходимости работать с двоичной системой и битами. Это правильный подход, но не стоит забывать, что злоупотребление расслабухой редко доводит до добра.
И последнее. Пресловутые классы адресов. Дорогие товарищи, забудьте это слово вообще! Совсем. Вот уже скоро 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 зарезервирован для мультикаста и т. д. Но все это лишь конвенции, призванные облегчить административное взаимодействие. И хотя лично я крайне не рекомендую вам их нарушать (за исключением надежно изолированных лабораторных тестов), технически никто не запрещает использовать любые адреса для любых целей, покуда вы не стыкуетесь с внешним миром.