+7 (812) 929-8183,
+7 (812) 929-8283

IP

IP (англ. Internet Protocol - межсетевой протокол) - маршрутизируемый сетевой протокол, основа стека протоколов TCP/IP.

Протокол IP (RFC 791) используется для ненадёжной доставки данных (разделяемых на так называемые пакеты) от одного узла сети к другому. Это означает, что на уровне этого протокола не даётся гарантий надёжной доставки пакета до адресата. В частности, пакеты могут прийти не в том порядке, в котором были отправлены, оказаться повреждёнными или не прибыть вовсе. Гарантии безошибочной доставки пакетов дают протоколы более высокого (транспортного) уровня - например, TCP - которые используют IP в качестве транспорта.

В современной сети Интернет используется IP четвёртой версии, также известный как IPv4. В протоколе IP этой версии каждому узлу сети ставится в соответствие IP-адрес длиной 4 октета (иногда говорят «байта», подразумевая распространённый восьмибитовый минимальный адресуемый фрагмент памяти ЭВМ). При этом компьютеры в подсетях объединяются общими начальными битами адреса. Количество этих бит, общее для данной подсети, называется маской подсети (ранее использовалось деление пространства адресов по классам - A, B, C; класс сети определялся диапазоном значений старшего октета и определял число адресуемых узлов в данной сети, сейчас используется бесклассовая адресация).

В настоящее время проходит тестирование шестая версия - IPv6, которая позволяет адресовать значительно большее количество узлов, чем IPv4. Эта версия отличается повышенной разрядностью адреса, встроенной возможностью шифрования и некоторыми другими особенностями.

Структура IP-датаграммы (пакета)

Версия (4 бит) Длина (4 бит) Тип обслуживания (8 бит)
Длина пакета
Идентификатор
0 DF MF Смещение фрагмента
Число переходов (TTL) Протокол
Контрольная сумма заголовка
IP-адрес отправителя
(32 бита)
IP-адрес получателя
(32 бита)
Параметры (до 320 бит)
Данные (до 65535 байт минус заголовок)
  • Версия - в протоколе версии 4 значение данного поля равно 4.
  • Длина - длина заголовка IP-пакета в 32-битных словах (dword). Именно это поле указывает на начало блока данных в пакете. Минимальное корректное значение для этого поля равно 5.
  • Идентификатор - значение, определяемое отправителем пакета и предназначенное для определения корректной последовательности пакетов.
  • 3 бита флагов. Первый бит должен быть всегда равен нулю, второй бит DF (don't fragment) определяет возможность фрагментации пакета и третий бит MF (more fragments) показывает, не является ли этот пакет последним в цепочке пакетов.
  • Смещение фрагмента - значение, определяющее позицию фрагмента в потоке данных.
  • Протокол - идентификатор интернет-протокола следующего уровня. В IPv6 называется "Next Header".

Диапазоны для локальных сетей

При подключении пользовательского компьютера к интернету, IP-адреса выбираются из диапазона, предоставленного провайдером. Компьютеры, не имеющие IP-адреса, выданного провайдером, могут (при правильной настройке маршрутизации) работать с другими локальными компьютерами, имея IP-адреса из диапазонов, зарезервированных для локальных сетей:

  • 192.168.0.1 - 192.168.255.254
  • 172.16.0.1 - 172.31.255.254
  • 10.0.0.1 - 10.255.255.254

Компьютеры с такими адресами могут получать доступ к интернету посредством прокси-серверов или NAT.

При построении сетей, составляющих Интернет (например сетей провайдеров), выбираются строго определённые диапазоны адресов, назначенные организацией ICANN. ICANN является «высшей инстанцией» в вопросах резервирования диапазонов и имеет свои представительства по всему миру - например, в Европе распределение адресов координирует RIPE NCC.