как составить корректный ip адрес
IP адрес
IP-адрес (Internet Protocol Address, айпи адрес) – это уникальный числовой идентификатор конкретного устройства в составе компьютерной сети, построенной на основе протокола TCP/IP. В этом и есть его основная функция. Для работы в Интернете требуется его глобальная уникальность. Для частной сети достаточно, чтобы были исключены совпадения в локальном пространстве.
Формат IP-адреса и как он выглядит
Правильный IP-адрес в сети Интернет может быть представлен в одном из двух цифровых форматов, который зависит от типа используемого протокола. В зависимости от того, к какому из этих типов принадлежит IP-адрес, будет понятно, сколько бит в нем.
Структура IP-адреса
Разберем, что обозначают цифры. В общем случае IP-адрес состоит из двух частей (ID-номеров): сети и конкретного узла в ее пределах. Чтобы отличать их в полной записи, используют классы или маски.
Для доступа к Интернет необходимо, чтобы IP принадлежал к другому блоку или в пределах локальной сети существовал сервер, на котором происходит подмена внутреннего адреса на внешний. С этой целью используются прокси или NAT. Для доступа к Интернету адрес выдается провайдером или региональным интернет-регистратором.
По умолчанию маршрутизатор может входить в несколько разных сетей. Каждый его порт имеет персональный IP-адрес. Соответственно, такой же принцип работы применим к конкретным компьютерам, которые могут поддерживать различное число сетевых связей.
Типы IP-адресов
В зависимости от способа использования
Внешний. Он же «белый», публичный или глобальный. Используется во время доступа в Интернет. Такой IP-адрес является уникальным и именно под ним устройство видят в сети. Так как количество таких идентификаторов ограничено, задействуют технологию NAT. Она позволяет транслировать сетевые IP-адреса из частных в публичные. Для этого применяются маршрутизаторы определенного типа.
По внешним IP-адресам многие интернет-сервисы отслеживают новых и вернувшихся пользователей. Это позволяет собирать статистику и делать аналитику, важную для продвижения сайта.
Внутренний. Он же «серый», локальный или частный IP-адрес источника. Не используется во время доступа в Интернет. Работает только в пределах локальной сети (домашней или предоставленной провайдером), и доступ к нему можно получить только другим ее участникам. Для этой цели по умолчанию зарезервированы следующие диапазоны частных IP-адресов:
Необходимо понимать, что не всегда внешний IP-адрес является постоянным. Наоборот, IP часто формируется заново от одного подключения к другому.
В зависимости от вариантов определения
Статические. Это IP-адреса, являющиеся неизмененными (постоянными). Они назначаются устройству автоматически в момент его присоединения к компьютерной сети или прописываются пользователем вручную. Статические адреса доступны для использования неограниченное время. Они могут выполнять функцию идентификатора только для одного сетевого узла. Также иногда используется понятие псевдостатических адресов, которые работают в пределах одной частной сети.
Динамические. Это те IP-адреса, которые выдаются устройству на время. Они автоматически присваиваются в момент подключения к сети и имеют ограниченный срок действия (от начала сессии до ее завершения). Динамические IP-адреса – своеобразный способ маскировки. Отследить человека, выходящего в Интернет с помощью такого адреса, сложно технически, в этом случае не обойтись без профессиональных инструментов.
Что дает статический IP-адрес
Статический IP-адрес полезен благодаря следующим возможностям:
Как узнать IP-адрес
Зачем знать свой реальный IP-адрес? Он понадобится вам для того, чтобы начать работать с некоторыми сервисами, требующими его указания вручную. Каким образом получить информацию об IP? Есть как минимум два способа:
Помните, что вместе с IP-адресом другим устройствам (и, соответственно, лицам) будет доступна и иная информация, а именно: названия и данные провайдера интернет-услуг, название и версия установленной операционной системы и браузера, географическая привязка. Сторонние сервисы видят, используете ли вы прокси-сервер или средства защиты данных.
Как устроен IP-адрес – главный идентификатор в мире сетей TCP/IP
Если вы работали с компьютерами какое-то время, то, вероятно, сталкивались с IP-адресами – эти числовые последовательности, которые выглядят примерно как 192.168.0.15. В большинстве случаев нам не нужно иметь дело с ними напрямую, поскольку наши устройства и сети заботятся об их обработке «за кулисами». Когда же нам приходится иметь с ними дело, мы часто просто следуем инструкциям о том, какие и где вписать цифры. Но, если вы когда-либо хотели погрузиться немного глубже в то, что означают эти цифры, эта статья для вас.
Зачем вам это нужно? Понимание того, как работают IP-адреса, жизненно важно, если вы когда-нибудь захотите устранить неполадки в вашей домашней сети или понять, почему конкретное устройство не подключается так, как вы ожидаете. И если вам когда-либо понадобится создать нечто более продвинутое, такое как хостинг игрового сервера или медиа-сервер, к которому могут подключаться друзья из интернета, вам нужно будет что-то знать об IP-адресации. Плюс, это немного увлекательно.
В этой статье мы расскажем об основах IP-адресации, о том, что хотели бы знать люди, которые используют IP-адреса, но никогда не задумывались об их структуре. Мы не собираемся освещать некоторые из более продвинутых или профессиональных уровней, таких как классы IP, бесклассовая маршрутизация и пользовательская подсеть. но вы легко найдёте источники для дальнейшего чтения.
Что такое IP-адрес
IP-адрес однозначно идентифицирует устройство в сети. Вы видели эти адреса раньше; они выглядят примерно как 192.168.1.34.
IP-адрес всегда представляет собой набор из четырех таких чисел. Каждый номер может находиться в диапазоне от 0 до 255. Таким образом, полный диапазон IP-адресов составляет от 0.0.0 до 255.255.255.255.
Компьютеры работают с двоичным форматом, но нам, людям, гораздо проще работать с десятичным форматом. Тем не менее, зная, что адреса фактически являются двоичными числами, нам легче будет понять, почему некоторые вещи, связанные с IP-адресами, работают так, как они это делают.
Две базовые части IP-адреса
IP-адрес устройства состоит из двух отдельных частей:
Чтобы представить всё это немного лучше, давайте обратимся к аналогии. Это очень похоже на то, как уличные адреса работают в городе. Возьмите адрес, такой как Набережная 29/49. Название улицы похоже на идентификатор сети, а номер дома похож на идентификатор хоста. Внутри города никакие две улицы не будут называться одинаково, так же как ни один идентификатор сети в одной сети не будет назван одинаковым. На определенной улице каждый номер дома уникален, так же как все ID хоста в определенном сетевом идентификаторе.
Маска подсети в IP-адресе
Как же ваше устройство определяет, какая часть IP-адреса является идентификатором сети, а какая часть – идентификатор хоста? Для этого они используют второе число, которое называется маской подсети.
В большинстве простых сетей (например, в домашних или офисных) вы увидите маску подсети в формате 255.255.255.0, где все четыре числа равны либо 255, либо 0. Позиция изменения с 255 на 0 указывает на разделение между сетью и идентификатором хоста.
Основные маски подсети, которые мы описываем здесь, известны как маски подсети по умолчанию. В более крупных сетях ситуация становится более сложной. Люди часто используют пользовательские маски подсети (где позиция разрыва между нулями и единицами сдвигается в октете) для создания нескольких подсетей в одной сети.
Адрес шлюза по умолчанию
В дополнение к самому IP-адресу и маске подсети, вы также увидите адрес шлюза по умолчанию, указанный вместе с информацией IP-адресации. В зависимости от используемой платформы, этот адрес может называться по-другому. Его иногда называют «маршрутизатором», «адресом маршрутизатора», «маршрутом по умолчанию» или просто «шлюзом». Это всё одно и то же.
Это стандартный IP-адрес, по которому устройство отправляет сетевые данные, когда эти данные предназначены для перехода в другую сеть (с другим идентификатором сети).
Простейший пример этого можно найти в обычной домашней сети. Если у вас есть домашняя сеть с несколькими устройствами, у вас, вероятно, есть маршрутизатор, подключенный к интернету через модем. Этот маршрутизатор может быть отдельным устройством или может быть частью комбо-модуля модем/маршрутизатор, поставляемого вашим интернет-провайдером.
Маршрутизатор находится между компьютерами и устройствами в вашей сети и более ориентированными на открытый доступ устройствами в интернете, передавая (или маршрутизируя) трафик взад и вперёд.
Скажем, вы запускаете свой браузер и отправляетесь на сайт webznam.ru. Ваш компьютер отправляет запрос на IP-адрес нашего сайта. Поскольку наши серверы находятся в интернете, а не в вашей домашней сети, этот трафик отправляется с вашего ПК на ваш маршрутизатор (шлюз), а ваш маршрутизатор перенаправляет запрос на наш сервер. Сервер отправляет правильную информацию обратно вашему маршрутизатору, который затем перенаправляет информацию обратно на запрашиваемое устройство, и вы видите как наш сайт отображается в нашем браузере.
Как правило, маршрутизаторы настроены по умолчанию, чтобы их частный IP-адрес (их адрес в локальной сети) был первым идентификатором хоста. Так, например, в домашней сети, использующей 192.168.1.0 для сетевого ID, маршрутизатор обычно будет на хосте 192.168.1.1.
Серверы DNS
Существует одна заключительная часть информации, которую вы увидите вместе с IP-адресом устройства, маской подсети и адресом шлюза по умолчанию: адреса одного или двух серверов DNS по умолчанию. Мы – люди – намного лучше работаем с символическими названиями, чем с числовыми адресами. Ввести webznam.ru в адресную строку вашего браузера намного проще, чем запоминать и вводить IP-адреса нашего сайта.
DNS работает как телефонная книга, храня удобные для человека имена веб-сайтов (домены), и преобразуя их в IP-адреса. DNS делает это, сохраняя всю эту информацию в системе связанных DNS-серверов через интернет. Вашим устройствам необходимо знать адреса DNS-серверов, на которые нужно отправлять свои запросы.
В типичной малой или домашней сети IP-адреса DNS-сервера часто совпадают с адресами шлюза по умолчанию. Устройства отправляют свои DNS-запросы на ваш маршрутизатор, а затем перенаправляют запросы на любые DNS-серверы, которые укажет маршрутизатор. По умолчанию, это обычно любые DNS-серверы, предоставляемые вашим провайдером, но вы можете изменить их для использования разных DNS-серверов, если хотите.
В чем разница между IPv4 и IPv6
Возможно, вы также заметили при просмотре настроек другой тип IP-адреса, называемый адресом IPv6. Типы IP-адресов, о которых мы говорили до сих пор, – это адреса, используемые протоколом IP версии 4 (IPv4), разработанным в конце 70-х годов. Они используют 32 бинарных бита, о которых мы говорили (в четырех октетах), чтобы обеспечить в общей сложности 4,29 миллиарда возможных уникальных адреса. Хотя это много, все общедоступные адреса давно были «потреблены» предприятиям. Многие из них сейчас не используются, но они назначены и недоступны для общего использования.
В середине 90-х годов, обеспокоенная потенциальной нехваткой IP-адресов, специальная рабочая группа Internet Engineering Task Force (IETF) разработала IPv6. IPv6 использует 128-битный адрес вместо 32-разрядного адреса IPv4, поэтому общее количество уникальных адресов многократно выросло и стало достаточно большим (вряд ли когда-либо закончится).
В отличие от точечной десятичной нотации, используемой в IPv4, адреса IPv6 выражаются в виде восьми групп номеров, разделенных двоеточиями. Каждая группа имеет четыре шестнадцатеричных цифры, которые представляют 16 двоичных цифр (это называется хекстетом). Типичный IPv6-адрес может выглядеть примерно так:
Дело в том, что нехватка адресов IPv4, вызвавшая беспокойство, в значительной степени смягчалась увеличением использования частных IP-адресов через маршрутизаторы. Всё больше и больше людей создавали свои собственные частные сети, используя частные IP-адреса.
Как устройство получает IP-адрес
Теперь, когда вы знаете основы работы IP-адресов, давайте поговорим о том, как устройства получают свои IP-адреса. Существует два типа IP-назначений: динамический и статический.
Динамический IP-адрес назначается автоматически, когда устройство подключается к сети. Подавляющее большинство сетей сегодня (включая вашу домашнюю сеть) используют Dynamic Host Configuration Protocol (DHCP). Когда устройство подключается к сети, оно отправляет широковещательное сообщение с запросом IP-адреса. DHCP перехватывает это сообщение, а затем назначает IP-адрес этому устройству из пула доступных IP-адресов.
Особенность динамических адресов заключается в том, что они могут иногда меняться. DHCP-серверы арендуют IP-адреса устройствам, и когда этот «срок аренды» заканчиваются, устройства должны получить другой IP-адрес из пула адресов, которые может назначить сервер.
В большинстве случаев это не имеет большого значения, и всё будет как и работало. Однако, вы можете указать устройству IP-адрес, который должен сохраняться. Например, у вас устройство, к которому нужно получать доступ вручную, и вам легче запомнить IP-адрес, чем имя. Или, у вас есть определенные приложения, которые могут подключаться только к сетевым устройствам, используя свой IP-адрес.
В этих случаях вы можете назначить статический IP-адрес для этих устройств. Есть несколько способов сделать это. Вы можете вручную настроить устройство со статическим IP-адресом, хотя иногда это может быть утомительным. Другим, более элегантным решением является настройка маршрутизатора для назначения статических IP-адресов определенным устройствам во время динамического назначения сервером DHCP. Таким образом, IP-адрес никогда не меняется, но вы не прерываете процесс DHCP, который обеспечивает бесперебойную работу.
Всё об IP адресах и о том, как с ними работать
Доброго времени суток, уважаемые читатели Хабра!
Не так давно я написал свою первую статью на Хабр. В моей статье была одна неприятная шероховатость, которую моментально обнаружили, понимающие в сетевом администрировании, пользователи. Шероховатость заключается в том, что я указал неверные IP адреса в лабораторной работе. Сделал это я умышленно, так как посчитал что неопытному пользователю будет легче понять тему VLAN на более простом примере IP, но, как было, совершенно справедливо, замечено пользователями, нельзя выкладывать материал с ключевой ошибкой.
В самой статье я не стал править эту ошибку, так как убрав её будет бессмысленна вся наша дискуссия в 2 дня, но решил исправить её в отдельной статье с указание проблем и пояснением всей темы.
Для начала, стоит сказать о том, что такое IP адрес.
IP-адрес — уникальный сетевой адрес узла в компьютерной сети, построенной на основе стека протоколов TCP/IP (TCP/IP – это набор интернет-протоколов, о котором мы поговорим в дальнейших статьях). IP-адрес представляет собой серию из 32 двоичных бит (единиц и нулей). Так как человек невосприимчив к большому однородному ряду чисел, такому как этот 11100010101000100010101110011110 (здесь, к слову, 32 бита информации, так как 32 числа в двоичной системе), было решено разделить ряд на четыре 8-битных байта и получилась следующая последовательность: 11100010.10100010.00101011.10011110. Это не сильно облегчило жизнь и было решение перевести данную последовательность в, привычную нам, последовательность из четырёх чисел в десятичной системе, то есть 226.162.43.158. 4 разряда также называются октетами. Данный IP адрес определяется протоколом IPv4. По такой схеме адресации можно создать более 4 миллиардов IP-адресов.
Максимальным возможным числом в любом октете будет 255 (так как в двоичной системе это 8 единиц), а минимальным – 0.
Далее давайте разберёмся с тем, что называется классом IP (именно в этом моменте в лабораторной работе была неточность).
IP-адреса делятся на 5 классов (A, B, C, D, E). A, B и C — это классы коммерческой адресации. D – для многоадресных рассылок, а класс E – для экспериментов.
Класс А: 1.0.0.0 — 126.0.0.0, маска 255.0.0.0
Класс В: 128.0.0.0 — 191.255.0.0, маска 255.255.0.0
Класс С: 192.0.0.0 — 223.255.255.0, маска 255.255.255.0
Класс D: 224.0.0.0 — 239.255.255.255, маска 255.255.255.255
Класс Е: 240.0.0.0 — 247.255.255.255, маска 255.255.255.255
Теперь о «цвете» IP. IP бывают белые и серые (или публичные и частные). Публичным IP адресом называется IP адрес, который используется для выхода в Интернет. Адреса, используемые в локальных сетях, относят к частным. Частные IP не маршрутизируются в Интернете.
Публичные адреса назначаются публичным веб-серверам для того, чтобы человек смог попасть на этот сервер, вне зависимости от его местоположения, то есть через Интернет. Например, игровые сервера являются публичными, как и сервера Хабра и многих других веб-ресурсов.
Большое отличие частных и публичных IP адресов заключается в том, что используя частный IP адрес мы можем назначить компьютеру любой номер (главное, чтобы не было совпадающих номеров), а с публичными адресами всё не так просто. Выдача публичных адресов контролируется различными организациями.
Допустим, Вы молодой сетевой инженер и хотите дать доступ к своему серверу всем пользователям Интернета. Для этого Вам нужно получить публичный IP адрес. Чтобы его получить Вы обращаетесь к своему интернет провайдеру, и он выдаёт Вам публичный IP адрес, но из рукава он его взять не может, поэтому он обращается к локальному Интернет регистратору (LIR – Local Internet Registry), который выдаёт пачку IP адресов Вашему провайдеру, а провайдер из этой пачки выдаёт Вам один адрес. Локальный Интернет регистратор не может выдать пачку адресов из неоткуда, поэтому он обращается к региональному Интернет регистратору (RIR – Regional Internet Registry). В свою очередь региональный Интернет регистратор обращается к международной некоммерческой организации IANA (Internet Assigned Numbers Authority). Контролирует действие организации IANA компания ICANN (Internet Corporation for Assigned Names and Numbers). Такой сложный процесс необходим для того, чтобы не было путаницы в публичных IP адресах.
Поскольку мы занимаемся созданием локальных вычислительных сетей (LAN — Local Area Network), мы будем пользоваться именно частными IP адресами. Для работы с ними необходимо понимать какие адреса частные, а какие нет. В таблице ниже приведены частные IP адреса, которыми мы и будем пользоваться при построении сетей.
Из вышесказанного делаем вывод, что пользоваться при создании локальной сеть следует адресами из диапазона в таблице. При использовании любых других адресов сетей, как например, 20.*.*.* или 30.*.*.* (для примера взял именно эти адреса, так как они использовались в лабе), будут большие проблемы с настройкой реальной сети.
Из таблицы частных IP адресов вы можете увидеть третий столбец, в котором написана маска подсети. Маска подсети — битовая маска, определяющая, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети.
У всех IP адресов есть две части сеть и узел.
Сеть – это та часть IP, которая не меняется во всей сети и все адреса устройств начинаются именно с номера сети.
Узел – это изменяющаяся часть IP. Каждое устройство имеет свой уникальный адрес в сети, он называется узлом.
Маску принято записывать двумя способами: префиксным и десятичным. Например, маска частной подсети A выглядит в десятичной записи как 255.0.0.0, но не всегда удобно пользоваться десятичной записью при составлении схемы сети. Легче записать маску как префикс, то есть /8.
Так как маска формируется добавлением слева единицы с первого октета и никак иначе, но для распознания маски нам достаточно знать количество выставленных единиц.
Таблица масок подсети
Высчитаем сколько устройств (в IP адресах — узлов) может быть в сети, где у одного компьютера адрес 172.16.13.98 /24.
172.16.13.0 – адрес сети
172.16.13.1 – адрес первого устройства в сети
172.16.13.254 – адрес последнего устройства в сети
172.16.13.255 – широковещательный IP адрес
172.16.14.0 – адрес следующей сети
Итого 254 устройства в сети
Теперь вычислим сколько устройств может быть в сети, где у одного компьютера адрес 172.16.13.98 /16.
172.16.0.0 – адрес сети
172.16.0.1 – адрес первого устройства в сети
172.16.255.254 – адрес последнего устройства в сети
172.16.255.255 – широковещательный IP адрес
172.17.0.0 – адрес следующей сети
Итого 65534 устройства в сети
В первом случае у нас получилось 254 устройства, во втором 65534, а мы заменили только номер маски.
Посмотреть различные варианты работы с масками вы можете в любом калькуляторе IP. Я рекомендую этот.
До того, как была придумана технология масок подсетей (VLSM – Variable Langhe Subnet Mask), использовались классовые сети, о которых мы говорили ранее.
Теперь стоит сказать о таких IP адресах, которые задействованы под определённые нужды.
Адрес 127.0.0.0 – 127.255.255.255 (loopback – петля на себя). Данная сеть нужна для диагностики.
169.254.0.0 – 169.254.255.255 (APIPA – Automatic Private IP Addressing). Механизм «придумывания» IP адреса. Служба APIPA генерирует IP адреса для начала работы с сетью.
Теперь, когда я объяснил тему IP, становиться ясно почему сеть, представленная в лабе, не будет работать без проблем. Этого стоит избежать, поэтому исправьте ошибки исходя из информации в этой статье.
Еще раз про 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 зарезервирован для мультикаста и т. д. Но все это лишь конвенции, призванные облегчить административное взаимодействие. И хотя лично я крайне не рекомендую вам их нарушать (за исключением надежно изолированных лабораторных тестов), технически никто не запрещает использовать любые адреса для любых целей, покуда вы не стыкуетесь с внешним миром.