IPv4

IPv4
IPv4
Название:

Internet Protocol version 4

Уровень (по модели OSI):

Сетевой

Семейство:

TCP/IP

Назначение протокола:

Адресация

Спецификация:

RFC 791

Основные реализации (клиенты):

реализации стека TCP/IP в Windows, Linux и BSD

Основные реализации (серверы):

реализации стека TCP/IP в Windows, Linux и BSD

IPv4 (англ. Internet Protocol version 4) — четвёртая версия IP-протокола, первая широко используемая версия. Протокол описан в RFC 791 (сентябрь 1981 года), заменившем RFC 760 (январь 1980 года).

Содержание

Адресация

IPv4 использует 32-битные (четырёхбайтные) адреса, ограничивающие адресное пространство 4 294 967 296 (232) возможными уникальными адресами.

Удобной формой записи IP-адреса (IPv4) является запись в виде четырёх десятичных чисел (от 0 до 255), разделённых точками, например, 192.168.0.1. (или 128.10.2.30 — традиционная десятичная форма представления адреса)

Представление адреса

Форма записи Пример Преобразование из десятичной нотации с точками
Десятичная с точками (англ.) 192.0.2.235
Шестнадцатеричная с точками 0xC0.0x00.0x02.0xEB Каждый октет преобразуется в шестнадцатеричную форму
Восьмеричная с точками 0300.0000.0002.0353 Каждый октет преобразуется в восьмеричную форму
Шестнадцатеричная 0xC00002EB Конкатенация октетов из шестнадцатеричной нотации с точками
Десятичная 3221226219 32-битное число в десятичной форме
Восьмеричная 030000001353 32-битное число в восьмеричной форме

Зарезервированные адреса

Некоторые адреса IPv4 зарезервированы для специальных целей и не предназначены для глобальной маршрутизации.[1]

Подсеть Назначение
0.0.0.0/8[2] Адреса источников пакетов «этой» («своей») сети, предназначены для локального использования на хосте при создании сокетов IP. Адрес 0.0.0.0/32 используется для указания адреса источника самого хоста.[1]
10.0.0.0/8[3] Для использования в частных сетях.
127.0.0.0/8[2] Подсеть для коммуникаций внутри хоста (см.: localhost).
169.254.0.0/16[4] Канальные (link-local) адреса, подсеть используется для автоматического конфигурирования адресов IP в случае отсутствия сервера DHCP.
172.16.0.0/12[3] Для использования в частных сетях.
100.64.0.0/10[5] Для использования в сетях сервис-провайдера.
192.0.2.0/24[6] Для примеров в документации.
192.168.0.0/16[3] Для использования в частных сетях.
198.51.100.0/24[6] Для примеров в документации.
198.18.0.0/15[7] Для стендов тестирования производительности.
203.0.113.0/24[6] Для примеров в документации.
240.0.0.0/4[2] Зарезервировано для использования в будущем.
255.255.255.255[8] Ограниченный широковещательный адрес.

Есть также зарезервированные адреса, которые маршрутизируются глобально.

Подсеть Назначение
192.88.99.0/24[1] «Любой» адрес (anycast). Адрес 192.88.99.1/32 используется для туннелирования IPv6 через IPv4.[9]
224.0.0.0/4[10] Используется для многоадресной рассылки.

Структура пакета

Пакет IP содержит 14 полей, из которых 13 являются обязательными. Четырнадцатое поле предназначено для необязательных опций. Поля используют порядок байтов от старшего к младшему, старшие биты идут первыми. Первый бит имеет номер 0. Таким образом, например, поле с версией находится в четырёх старших битах первого байта.

Смещение в битах 0-3 4-7 8-13 14-15 16-18 19-31
0 Версия Размер заголовка Differentiated Services Code Point Explicit Congestion Notification Размер пакета
32 Идентификатор Флаги Смещение фрагмента
64 Время жизни Протокол Контрольная сумма заголовка
96 Адрес источника
128 Адрес назначения
160 Опции (если размер заголовка > 5)
160 или 192+ Данные
Версия 
Первым полем пакета является версия протокола размером в четыре бита. Для IPv4 это 4.
Размер заголовка 
Следующие четыре бита содержат размер заголовка пакета в 32-битных словах. Поскольку число опций не постоянно, указание размера важно для отделения заголовка от данных. Минимальное значения равно 5 (5×32=160 бит, 20 байт), максимальное — 15 (60 байт).
Differentiated Services Code Point (DSCP)
Изначально называлось «тип обслуживания» (Type of Service, ToS), в настоящее время определяется RFC 2474 как «Differentiated Services». Используется для разделения трафика на классы обслуживания, например для установки чувствительному к задержкам трафику, такому как VoIP большего приоритета.
Указатель перегрузки (Explicit Congestion Notification, ECN) 
Предупреждение о перегрузке сети без потери пакетов. Является необязательной функцией и используется только если оба хоста её поддерживают.
Размер пакета 
16-битный полный размер пакета в байтах, включая заголовок и данные. Минимальный размер равен 20 байтам (заголовок без данных), максимальный — 65535 байт. Хосты должны поддерживать передачу пакетов размером до 576 байт, но современные реализации обычно поддерживают гораздо больший размер. Пакеты большего размера, чем поддерживает канал связи, фрагментируются.
Идентификатор 
Преимущественно используется для идентификации фрагментов пакета если он был фрагментирован. Существуют эксперименты по его использованию для других целей, таких как добавление информации о трассировке пакета для упрощения отслеживания пути пакета с подделанным адресом источника.[11]
Флаги 
Поле размером три бита содержащее флаги контроля над фрагментацией. Биты, от старшего к младшему, означают:
  • 0: Зарезервирован, должен быть равен 0.[12]
  • 1: Не фрагментировать
  • 2: У пакета ещё есть фрагменты
Если установлен флаг «не фрагментировать», то в случае необходимости фрагментации такой пакет будет уничтожен. Может использоваться для передачи данных хостам, не имеющим достаточных ресурсов для обработки фрагментированных пакетов.
Флаг «есть фрагменты» должен быть установлен в 1 у всех фрагментов пакета, кроме последнего. У нефрагментированных устанавливается в 0 — такой пакет считается собственным последним фрагментом.
Смещение фрагмента 
Поле размером в 13 бит, указывает смещение текущего фрагмента от начала передачи фрагментированного пакета в блоках по 8 байт. Позволяет (213−1)×8=65528 байт смещения, что превышает максимальный размер пакета. Первый фрагмент в последовательности имеет нулевое смещение.
«Время жизни» (Time to Live, TTL) пакета. 
Позволяет предотвратить закольцовывание пакетов в сети путем уничтожения пакетов, превысивших время жизни. Указывается в секундах, интервалы менее секунды округляются до одной секунды. На практике каждый маршрутизатор уменьшает время жизни пакетов на единицу (что справедливо при существующих типичных задержках в сети). Пакеты, время жизни которых стало равно нулю уничтожаются, а отправившему посылается сообщение ICMP Time Exceeded. На отправке пакетов с разным временем жизни основана трассировка их пути прохождения (traceroute).
Протокол 
Указывает, данные какого протокола содержит пакет (например, TCP или ICMP). Присвоенные номера протоколов можно найти на сайте IANA.[13]
Контрольная сумма заголовка 
16-битная контрольная сумма, используемая для проверки целостности заголовка. Каждый хост или маршрутизатор сравнивает контрольную сумму заголовка со значением этого поля и отбрасывает пакет, если они не совпадают. Целостность данных IP не проверяет — она проверяется протоколами более высоких уровней (такими, как TCP или UDP), которые тоже используют контрольные суммы.
Поскольку TTL уменьшается на каждом шаге прохождения пакета, сумма тоже должна вычисляться на каждом шаге. Метод пересчета контрольной суммы определён в RFC 1071.[14]
Адрес источника 
32-битный адрес отправителя пакета. Может не совпадать с настоящим адресом отправителя из-за трансляции адресов.
Адрес назначения 
32-битный адрес получателя пакета.
Опции 
За адресом назначения может следовать поле дополнительных опций, но оно используется редко. Размер заголовка в этом случае должен быть достаточным чтобы вместить все опции (с учетом дополнения до целого числа 32-битных слов).
Если список опций не является концом заголовка, он должен оканчиваться опцией 0x00. Опции имеют следующий формат:
Поле Размер в битах Описание
Копировать 1 Устанавливается в 1 если требуется копировать опции в заголовки всех фрагментов.
Класс опции 2 0 для «управляющих» опций и 2 для опций «измерений и отладки». 1 и 3 зарезервированы.
Номер опции 5 Указывает опцию.
Размер опции 8 Указывает размер опции (с учетом этого поля). Может не указываться для опций без аргументов.
Аргументы опции Переменный Дополнительные данные, используемые опцией.
  • Замечание: Размер заголовка более 5 слов указывает на присутствие опций и необходимость их обработки.
  • Замечание: Поля «копировать», «класс опции» и «номер опции» иногда называют одним восьмибитным полем «тип опции».

Исчерпание адресного пространства

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

В феврале 2011 года IANA выделила 5 последних блоков адресов RIRам. Блоки свободных IP-адресов начали заканчиваться у региональных регистраторов с 2011 года.[15]

См. также

Примечания



Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Полезное


Смотреть что такое "IPv4" в других словарях:

  • IPv4 — im TCP/IP‑Protokollstapel: Anwendung HTTP IMAP SMTP DNS … Transport TCP UDP Internet IPv4 Netzzugang …   Deutsch Wikipedia

  • Ipv4 — Pile de protocoles 7 • Application 6 • Présentation 5 • Session 4 • Transport …   Wikipédia en Français

  • IPv4 — es la versión 4 del Protocolo IP (Internet Protocol). Esta fue la primera versión del protocolo que se implemento extensamente, y forma la base de Internet. IPv4 usa direcciones de 32 bits, limitándola a 4.294.967.296 direcciones únicas, muchas… …   Enciclopedia Universal

  • IPv4 —   [Abk. für Internet Protocol Version 4], IP Adresse …   Universal-Lexikon

  • Ipv4 — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. IPv4 im TCP/IP‑Protokollstapel: Anwendung HTTP …   Deutsch Wikipedia

  • IPv4 — Internet Protocol version 4 (IPv4) is the fourth revision in the development of the Internet Protocol (IP) and it is the first version of the protocol to be widely deployed. Together with IPv6, it is at the core of standards based internetworking …   Wikipedia

  • IPv4 — Pile de protocoles 7.  Application 6.  Présentation 5.  Session 4.  Tr …   Wikipédia en Français

  • IPv4 — Este artículo trata sobre la cuarta versión del protocolo Internet Protocol (IP). Para otros usos de este término, véase IP4 (desambiguación). El Internet Protocol version 4 (IPv4) (en español: Protocolo de Internet versión 4) es la cuarta… …   Wikipedia Español

  • IPv4 mapped address — IPv4 mapped addresses constitute a special class of IPv6 addresses. This address type has its first 80 bits set to zero, the next 16 set to one, while its last 32 bits represent an IPv4 address. For example, ::ffff:c000:280 is the IPv4 mapped… …   Wikipedia

  • IPv4-compatible address — IPv4 compatible IPv6 addresses used to constitute a special class of IPv6 addresses. Such an IPv6 address has its first 96 bits set to zero, while its last 32 bits represents an IPv4 address.This address type has been deprecated by RFC 4291.The… …   Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»