Что такое сетевые адреса
Как устроен 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-адрес может выглядеть примерно так:
2601: 7c1: 100: ef69: b5ed: ed57: dbc0: 2c1e
Дело в том, что нехватка адресов 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, который обеспечивает бесперебойную работу.
Понимание основ TCP/IP-адресов и подсети
Эта статья предназначена как общее введение к понятиям сетей и подсетей протокола Интернета (IP). В конце статьи включается глоссарий.
Применяется к: Windows 10 — все выпуски
Исходный номер КБ: 164015
Сводка
При настройке протокола TCP/IP на компьютере Windows, параметры конфигурации TCP/IP требуют:
Чтобы правильно настроить TCP/IP, необходимо понять, как адресованы сети TCP/IP и разделены на сети и подсети.
Успех TCP/IP как сетевого протокола Интернета во многом объясняется его способностью подключать сети разных размеров и системы разных типов. Эти сети произвольно определяются на три основных класса (наряду с несколькими другими), которые имеют заранее определенные размеры. Каждая из них может быть разделена системными администраторами на более мелкие подсети. Маска подсети используется для разделения IP-адреса на две части. Одна часть определяет хост (компьютер), другая — сеть, к которой она принадлежит. Чтобы лучше понять, как работают IP-адреса и подсети, посмотрите IP-адрес и узнайте, как он организован.
IP-адреса: сети и хосты
IP-адрес — это 32-битный номер. Он уникально идентифицирует хост (компьютер или другое устройство, например принтер или маршрутизатор) в сети TCP/IP.
IP-адреса обычно выражаются в формате dotted-decimal с четырьмя номерами, разделенными периодами, такими как 192.168.123.132. Чтобы понять, как подсети используются для различия между хостами, сетями и подсетями, изучите IP-адрес в двоичной нотации.
Например, ip-адрес 192.168.123.132 (в двоичной нотации) — это 32-битный номер 110000000101000111101110000100. Это число может быть трудно понять, поэтому разделите его на четыре части из восьми двоичных цифр.
Эти 8-битные разделы называются octets. В этом примере IP-адрес становится 11000000.10101000.01111011.10000100. Это число имеет немного больше смысла, поэтому для большинства применений преобразуем двоичный адрес в формат dotted-decimal (192.168.123.132). Десятичные числа, разделенные периодами, — это октеты, преобразованные из двоичных в десятичные.
Чтобы сеть TCP/IP широкой области (WAN) эффективно работала в качестве коллекции сетей, маршрутизаторы, которые передают пакеты данных между сетями, не знают точного расположения хоста, для которого предназначен пакет информации. Маршрутизаторы знают только о том, какая сеть является членом хоста, и используют сведения, хранимые в таблице маршрутов, чтобы определить, как получить пакет в сеть принимающего пункта назначения. После доставки пакета в сеть назначения пакет доставляется соответствующему хосту.
Маска subnet
Второй элемент, необходимый для работы TCP/IP, — это маска подсети. Маска подсети используется протоколом TCP/IP для определения того, находится ли хост в локальной подсети или в удаленной сети.
В TCP/IP части IP-адреса, используемые в качестве сетевых и хост-адресов, не исправлены. Если у вас нет дополнительных сведений, то сетевые и хост-адреса выше не могут быть определены. Эта информация предоставляется в другом 32-битовом номере, называемом подсетевой маской. В этом примере маска подсети — 255.255.255.0. Это не очевидно, что это число означает, если вы не знаете 255 в двоичной нотации равно 11111111. Таким образом, подсетевая маска 1111111.1111111.11111111.000000000.
Разделять IP-адрес и подсетевую маску вместе, можно разделять сетевые и хост-части адреса:
Первые 24 бита (количество из них в подсети) определены как сетевой адрес. Последние 8 битов (количество оставшихся нулей в маске подсети) определены как адрес хоста. Он дает следующие адреса:
Итак, в этом примере с помощью маски подсети 255.255.255.0 используется сетевой ID 192.168.123.0, а адрес хоста — 0.0.0.132. Когда пакет поступает в подсеть 192.168.123.0 (из локальной подсети или удаленной сети) и имеет адрес назначения 192.168.123.132, компьютер получает его из сети и обрабатывает его.
Почти все маски десятичных подсетей преобразуются в двоичные числа, которые являются слева, и все нули справа. Некоторые другие распространенные подсети маски:
Десятичный двоичный 255.255.255.192 1111111.11111111.1111111.11000000 0 255.255.255.224 1111111.11111111.1111111.11100000
Internet RFC 1878 (доступна в InterNIC-Public Information Regarding Internet Domain Name Registration Services)описывает допустимые подсети и подсети, которые можно использовать в сетях TCP/IP.
Классы сети
Интернет-адреса выделяются организацией InterNIC,управляющей Интернетом. Эти IP-адреса делятся на классы. Наиболее распространенными из них являются классы A, B и C. Классы D и E существуют, но не используются конечными пользователями. Каждый из классов адресов имеет другую подсетевую маску по умолчанию. Класс IP-адреса можно определить, посмотрев его первый октет. Ниже следующую следующую линейку адресов Интернета класса A, B и C, каждый из которых имеет пример:
Сети класса A используют маску подсети по умолчанию 255.0.0.0 и имеют 0-127 в качестве первого октета. Адрес 10.52.36.11 — это адрес класса А. Его первый octet — 10, то есть от 1 до 126 включительно.
Сети класса B используют маску подсети по умолчанию 255.255.0.0 и имеют 128-191 в качестве первого октета. Адрес 172.16.52.63 — это адрес класса B. Его первый octet — 172, который составляет от 128 до 191 включительно.
Сети класса C используют маску подсети по умолчанию 255.255.255.0 и имеют 192-223 в качестве первого октета. Адрес 192.168.123.132 — это адрес класса C. Его первый octet 192, который находится между 192 и 223, включительно.
В некоторых сценариях значения маски подсети по умолчанию не соответствуют потребностям организации по одной из следующих причин:
В следующем разделе рассказывается, как можно разделить сети с помощью масок подсети.
Subnetting
Сеть TCP/IP класса A, B или C может быть дополнительно разделена системным администратором или подсети. Это становится необходимым при согласовании логической адресной схемы Интернета (абстрактного мира IP-адресов и подсетей) с физическими сетями, которые используются в реальном мире.
Системный администратор, которому выделен блок IP-адресов, может управлять сетями, которые не организованы таким образом, чтобы легко вписываться в эти адреса. Например, у вас есть широкая сеть с 150 хостами в трех сетях (в разных городах), подключенных маршрутизатором TCP/IP. Каждая из этих трех сетей имеет 50 хостов. Вам выделена сеть класса C 192.168.123.0. (Для иллюстрации этот адрес на самом деле из диапазона, который не выделяется в Интернете.) Это означает, что для 150 хостов можно использовать адреса 192.168.123.1 по 192.168.123.254.
Два адреса, которые не могут использоваться в вашем примере, являются 192.168.123.0 и 192.168.123.255, так как двоичные адреса с хост-частью всех и все нули недействительны. Нулевой адрес недействителен, так как используется для указания сети без указания хоста. 255-й адрес (в двоичной нотации— хост-адрес всех) используется для передачи сообщения каждому хосту в сети. Просто помните, что первый и последний адрес в любой сети или подсети не может быть назначен любому отдельному хосту.
Теперь вы можете предоставить IP-адреса 254 хостов. Он отлично работает, если все 150 компьютеров находятся в одной сети. Однако 150 компьютеров находятся в трех отдельных физических сетях. Вместо того, чтобы запрашивать дополнительные блоки адресов для каждой сети, вы разделите сеть на подсети, которые позволяют использовать один блок адресов в нескольких физических сетях.
В этом случае вы разделите сеть на четыре подсети, используя подсетевую маску, которая делает сетевой адрес больше и возможный диапазон адресов хостов меньше. Другими словами, вы «заимствуете» некоторые биты, используемые для хост-адреса, и используете их для сетевой части адреса. Подсетевая маска 255.255.255.192 предоставляет четыре сети по 62 хостов каждая. Он работает, так как в двоичной нотации 255.255.255.192 то же самое, что и 11111111.1111111.110000000. Первые две цифры последнего октета становятся сетевыми адресами, поэтому вы получаете дополнительные сети 00000000 (0), 010000000 (64), 10000000 (128) и 110000000 (192). (Некоторые администраторы будут использовать только две подсети с использованием 255.255.255.192 в качестве маски подсети. Дополнительные сведения по этому вопросу см. в разделе RFC 1878.) В этих четырех сетях последние шесть двоичных цифр можно использовать для хост-адресов.
Используя подсетевую маску 255.255.255.192, сеть 192.168.123.0 становится четырьмя сетями 192.168.123.0, 192.168.123.64, 192.168.123.128 и 192.168.123.192. Эти четыре сети будут иметь допустимые хост-адреса:
192.168.123.1-62 192.168.123.65-126 192.168.123.129-190 192.168.123.193-254
Помните, что двоичные хост-адреса со всеми или всеми нулями являются недействительными, поэтому нельзя использовать адреса с последним октетом 0, 63, 64, 127, 128, 191, 192 или 255.
Вы можете увидеть, как это работает, глядя на два хост-адреса, 192.168.123.71 и 192.168.123.133. Если используется маска подсети класса C по умолчанию 255.255.255.0, оба адреса находятся в сети 192.168.123.0. Однако, если вы используете подсетевую маску 255.255.255.192, они находятся в разных сетях; 192.168.123.71 на сети 192.168.123.64, 192.168.123.133 — на сети 192.168.123.128.
Шлюзы по умолчанию
Если компьютер tCP/IP должен общаться с хостом в другой сети, он обычно общается с помощью устройства, называемого маршрутизатором. В терминах TCP/IP маршрутизатор, указанный в хосте, который связывает подсеть хостов с другими сетями, называется шлюзом по умолчанию. В этом разделе объясняется, как TCP/IP определяет, отправлять ли пакеты в шлюз по умолчанию для достижения другого компьютера или устройства в сети.
Когда хост пытается взаимодействовать с другим устройством с помощью TCP/IP, он выполняет процесс сравнения с помощью определенной подсети и IP-адреса назначения по сравнению с подсети и собственным IP-адресом. В результате этого сравнения компьютеру сообщается, является ли назначение локальным хостом или удаленным хостом.
Если в результате этого процесса определяется назначение локального хоста, компьютер отправляет пакет в локальной подсети. Если в результате сравнения определяется назначение удаленного хоста, компьютер перенаправлен пакет в шлюз по умолчанию, определенный в свойствах TCP/IP. После этого маршрутизатор несет ответственность за перенаправку пакета в правильную подсеть.
Устранение неполадок
Проблемы сети TCP/IP часто возникают из-за неправильной конфигурации трех основных записей в свойствах TCP/IP компьютера. Понимая, как ошибки в конфигурации TCP/IP влияют на сетевые операции, можно решить множество распространенных проблем TCP/IP.
Неправильная маска подсети. Если сеть использует подсетевую маску, не подлежащую маске по умолчанию для своего класса адресов, и клиент по-прежнему настроен с помощью маски подсети по умолчанию для класса адресов, связь не будет работать с некоторыми соседними сетями, но не с удаленными. Например, если вы создаете четыре подсети (например, в примере подсетей), но используете неправильную подсетевую маску 255.255.255.0 в конфигурации TCP/IP, хосты не смогут определить, что некоторые компьютеры находятся на разных подсетях, чем их собственные. В этой ситуации пакеты, предназначенные для хостов различных физических сетей, которые являются частью одного и того же адреса класса C, не будут отправлены в шлюз по умолчанию для доставки. Распространенным симптомом этой проблемы является то, что компьютер может общаться с хостами, которые находятся в локальной сети, и может общаться со всеми удаленными сетями, за исключением тех сетей, которые находятся поблизости и имеют один и тот же адрес класса A, B или C. Чтобы устранить эту проблему, просто введите правильную подсетевую маску в конфигурации TCP/IP для этого хоста.
Неправильный IP-адрес. Если вы ставите компьютеры с IP-адресами, которые должны быть на отдельных подсетях в локальной сети друг с другом, они не смогут общаться. Они будут пытаться отправлять пакеты друг другу с помощью маршрутизатора, который не может переадретировать их правильно. Симптомом этой проблемы является компьютер, который может общаться с хостами в удаленных сетях, но не может общаться с некоторыми или всеми компьютерами в локальной сети. Чтобы устранить эту проблему, убедитесь, что все компьютеры одной физической сети имеют IP-адреса в одной подсети IP. Если в одном сегменте сети иссякли IP-адреса, существуют решения, которые выходят за рамки этой статьи.
Неправильный шлюз по умолчанию: компьютер, настроенный с неправильным шлюзом по умолчанию, может взаимодействовать с хостами в своем сетевом сегменте. Но он не сможет общаться с хостами в некоторых или всех удаленных сетях. Хост может общаться с некоторыми удаленными сетями, но не с другими, если верны следующие условия:
Эта проблема распространена, если в организации есть маршрутизатор к внутренней сети TCP/IP и другой маршрутизатор, подключенный к Интернету.
Ссылки
Две популярные ссылки на TCP/IP:
Рекомендуется, чтобы системный администратор, отвечающий за сети TCP/IP, мог иметь хотя бы одну из этих ссылок.
Глоссарий
Адрес трансляции— IP-адрес с хост-частью, которая является всеми.
Host—A computer or other device on a TCP/IP network.
Internet—Глобальная коллекция сетей, подключенных друг к другу и общих IP-адресов.
InterNIC—Организация, ответственная за администрирование IP-адресов в Интернете.
IP—Сетевой протокол, используемый для отправки сетевых пакетов через сеть TCP/IP или Интернет.
IP-адрес — уникальный 32-битный адрес для хоста в сети TCP/IP или в Интернете.
Network—Существует два использования сети терминов в этой статье. Одна из них — это группа компьютеров в одном физическом сегменте сети. Другой — диапазон адресов IP-сети, выделенный системным администратором.
Сетевой адрес— IP-адрес с хост-частью, которая имеет все нули.
Octet—8-bit number, 4 из которых состоят из 32-битного IP-адреса. Они имеют диапазон 000000000-1111111, соответствующий десятичных значениям 0-255.
RFC (Запрос на комментарий)—Документ, используемый для определения стандартов в Интернете.
Маршрутизатор— устройство, которое передает сетевой трафик между различными IP-сетями.
Subnet Mask — 32-битный номер, используемый для разграничеть сетевые и хост-части IP-адреса.
Subnet или Subnetwork — это сеть меньшего размера, созданная путем деления более крупной сети на равные части.
TCP/IP—Используется широко, набор протоколов, стандартов и утилит, обычно используемых в Интернете и крупных сетях.
Широкая сеть области (WAN)—Большая сеть, которая является коллекцией небольших сетей, разделенных маршрутизаторами. Интернет — пример большого WAN.