Обзорная работа
Протокол передачи данных — набор соглашений интерфейса логического уровня, которые определяют обмен данными между различными программами. Эти соглашения задают единообразный способ передачи сообщений и обработки ошибок при взаимодействии программного обеспечения разнесённой в пространстве аппаратуры, соединённой тем или иным интерфейсом.
Сетевой протокол — набор правил и действий, позволяющий осуществлять соединение и обмен данными между двумя и более включёнными в сеть устройствами.
Сравнение IPv4 и IPv6
В чем же разница между IPv6 и IPv4? Эту таблицу можно использовать для быстрого просмотра краткой информации, функций IP и способов использования IP-адресов в протоколах Internet IPv4 и IPv6.
Адрес
IPv4:
Длина - 32 бита (4 байта). Адрес состоит из адреса сети и адреса хоста. Длина этих компонентов зависит от класса адреса. Адреса делятся на классы A, B, C, D и E. Класс адреса определяется несколькими начальными битами адреса. Общее число адресов IPv4 составляет 4 294 967 296.В текстовом виде адрес IPv4 записывается как nnn.nnn.nnn.nnn, где 0<=nnn<=255, а каждая буква nпредставляет десятичную цифру. Незначащие нули можно не указывать. Максимальная длина адреса составляет 15 символов, без учета маски.
IPv6:
Длина - 128 бит (16 байт). Обычно первые 64 бита задают номер сети, а вторые 64 бита - номер хоста. Часто в качестве номера хоста или его компонента в адресе IPv6 получается на основе MAC-адреса или другого идентификатора интерфейса.
В подсетях с некоторыми префиксами архитектура IPv6 сложнее архитектуры IPv4.
Количество адресов IPv6 в 1028 (79 228 162 514 264 337 593 543 950 336) раз больше числа адресов IPv4. В текстовом виде адрес IPv6 записывается как xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx, где каждая буква x - это шестнадцатиричная цифра, представляющая 4 бита. Незначащие нули можно не указывать. В текстовом формате вместо любого числа нулей в адресе можно указать двойное двоеточие (::). Например, адрес ::ffff:10.120.78.40 представляет собой адрес IPv6, преобразованный в IPv4.
Расположение адреса
IPv4:
Изначально адреса распределялись по классам сетей. Когда число свободных адресов начало стремительно уменьшаться, адреса были разбиты на более мелкие группы с помощью протокола Бесклассовая междоменная маршрутизация (CIDR). Адреса не были равномерно распределены между различными организациями и странами.IPv6:
Распределение адресов пока находится на начальном этапе. Рабочая группа Интернет (IETF) и группа, ответственная за разработку архитектуры Интернет (IAB), рекомендовали предоставить каждой организации, домашнему компьютеру или устройству префикс подсети размером /48 бит. В этом случае еще 16 бит префикса останется для идентификатора подсети. Пространство адресов достаточно велико для того, чтобы предоставить каждому жителю планеты собственный префикс подсети длиной /48 бит.Срок действия адреса
IPv4:
Обычно этот атрибут задается только для адресов IPv4, назначенных службой DHCP.IPv6:
Для адресов IPv6 задается два срока действия: предпочитаемый и допустимый, причем предпочитаемый срок действия всегда <= допустимого.
После истечения предпочитаемого срока действия адрес перестает указываться в качестве IP-адреса отправителя для новых соединений, если доступен настолько же хороший предпочитаемый адрес. После истечения допустимого срока действия адрес перестает применяться (распознаваться) в качестве IP-адреса получателя при приеме пакетов, либо в качестве IP-адреса отправителя.
Для некоторых адресов IPv6, например, адресов уровня линии связи, по умолчанию установлен неограниченный предпочитаемый и допустимый срок действия.
Маска адреса
IPv4:
Применяется для отделения адреса сети от адреса хоста.IPv6:
Не применяетсяПрефикс адреса
IPv4:
Иногда применяется для отделения адреса сети от адреса хоста. В некоторых случаях указывается в адресе в виде суффикса /nn.IPv6:
Применяется для определения префикса подсети в адресе. Указывается в виде суффикса/nnn (максимум 3 десятичные цифры, 0 <= nnn <= 128). Примером может служить адресfe80::982:2a5c/10, в котором первые 10 бит представляют префикс подсети.Протокол преобразования адресов (ARP)
IPv4:
ARP применяется в протоколе IPv4 для определения физического адреса, например, адреса MAC или адреса канала связи, связанного с адресом IPv4.IPv6:
В IPv6 эти функции являются встроенными. Они реализованы в алгоритмах автоматической настройки адресов и поиска соседей, в которых применяется протокол ICMPv6. В связи с этим протокол ARP6 не был разработан.Пространство адресов
IPv4:
К обычным адресам этот термин неприменим. Считается, что существуют диапазоны частных адресов и циклические адреса. Все остальные адреса рассматриваются как глобальные.IPv6:
В IPv6 понятие пространства адресов встроено в архитектуру. Существует два пространства обычных адресов, в том числе адреса уровня линии связи и глобальные адреса. Групповые адреса относятся к 14 различным пространствам. Пространство, к которому относится адрес, учитывается при выборе адреса отправителя и получателя по умолчанию.Зоной называется экземпляр пространства адресов в отдельной сети. Иногда адреса IPv6 необходимо указывать вместе с идентификатором зоны. Этот идентификатор задается в формате %zid, где zid - это номер (обычно короткий) или имя. Идентификатор зоны указывается после адреса, но до префикса. Например, 2ba::1:2:14e:9a9b:c%3/48.
Типы адресов
IPv4:
Адреса IPv4 делятся на три основных типа: обычные адреса, групповые адреса и широковещательные адреса.IPv6:
Адреса IPv6 делятся на три основных типа: обычные адреса, групповые адреса и нечеткие адреса.Трассировка соединений
IPv4:
IPv6:
Настройка
IPv4:
IPv6:
Система имен доменов (DNS)
IPv4:
Кроме того, с помощью DNS приложения могут преобразовать IP-адреса в имена хостов. Для этого применяется API gethostbyaddr().
В IPv4 для обратного преобразования применяется домен in-addr.arpa.
IPv6:
API сокетов gethostbyname() поддерживает только IPv4. В IPv6 применяется новый API getaddrinfo(), с помощью которого приложение по собственному выбору получает информацию либо только для адресов IPv6, либо для адресов IPv4 и IPv6.
Для обратного преобразования в IPv6 применяется домен ip6.arpa. Если с его помощью преобразование выполнить не удается, то применяется домен ip6.int.
Система имен доменов (DNS)
IPv4:
IPv6:
Протокол передачи файлов (FTP)
IPv4:
IPv6:
Фрагменты
IPv4:
IPv6:
Таблица хостов
IPv4:
IPv6:
Интерфейс
IPv4:
Интерфейсы IPv4 запускаются и завершают работу независимо друг от друга и от TCP/IP. Для запуска и завершения работы интерфейса можно воспользоваться командами STRTCPIFC и ENDTCPIFC, а также System i Navigator.
IPv6:
Протокол управляющих сообщений Интернет (ICMP)
IPv4:
IPv6:
Основные типы сообщений остались прежними, например, целевой узел недостижим, эхо-запрос и ответ. Новые типы и коды были добавлены для поддержки функции поиска соседей и других связанных с ней функций.
Протокол Интернет для управления группами (IGMP)
IPv4:
IPv6:
Заголовок IP
IPv4:
IPv6:
Дополнительные параметры заголовка IP
IPv4:
IPv6:
Байт протокола в заголовке IP
IPv4:
IPv6:
Байт Тип сервиса в заголовке IP
IPv4:
IPv6:
Соединение LAN
IPv4:
IPv6:
Протокол L2TP
IPv4:
IPv6:
Циклический адрес
IPv4:
IPv6:
Максимальный блок передачи (MTU)
IPv4:
IPv6:
Netstat
IPv4:
IPv6:
Преобразование сетевых адресов (NAT)
IPv4:
IPv6:
Таблица сетей
IPv4:
IPv6:
Запрос на получение информации об узле
IPv4:
Не поддерживается.IPv6:
Удобная сетевая утилита, похожая на утилиту ping. Она позволяет запросит у другого узла IPv6 его имя хоста, обычный адрес IPv6 или адрес IPv4. В настоящее время эта утилита не поддерживается.Протокол кратчайшего пути (OSPF)
IPv4:
OSPF - это протокол маршрутизатора, который в больших сетях автономных систем более предпочтителен, чем RIP.IPv6:
Та же самая поддержка для IPv6.Фильтрация пакетов
IPv4:
Фильтрация пакетов - это одна из основных функций брандмауэра, встроенная в стек протоколов TCP/IP. Для ее настройки используется System i Navigator.IPv6:
Фильтрация пакетов не поддерживает IPv6.Пересылка пакетов
IPv4:
Стек TCP/IP IBM i можно настроить для пересылки пакетов IP, предназначенные для удаленных адресов сети. Обычно входящий и исходящий интерфейсы подключены к разным локальным сетям.IPv6:
Пересылка пакетов поддерживает IPv6 с ограничениями. Стек TCP/IP i5/OS не поддерживает поиск соседей как маршрутизатор.
PING
IPv4:
PING - это основное средство TCP/IP для проверки достижимости хоста. Вызывается с помощью System i Navigator и текстового интерфейса.IPv6:
Та же самая поддержка для IPv6.
Двухточечный протокол (PPP)
IPv4:
PPP позволяет устанавливать коммутируемые соединения с помощью различных модемов и линий связи.IPv6:
Та же самая поддержка для IPv6.Ограничения на использование портов
IPv4:
В этих меню IBM i пользователь может выбрать номера портов или диапазоны номеров портов TCP или протокола пользовательских дейтаграмм (UDP), которые разрешено использовать только определенному профайлу.IPv6:
Запреты на порты для протокола IPv6 совпадают с запретами для IPv4.Порты
IPv4:
В TCP и UDP применяются разные наборы портов, номера которых находятся в диапазоне от 1 до 65535.IPv6:
В IPv6 применяются аналогичные порты. Поскольку в этом протоколе предусмотрено новое семейство адресов, число наборов портов увеличилось до четырех. Например, предусмотрено два порта TCP с номером 80, к которым могут подключаться приложения: один из них находится в AF_INET, а второй - в AF_INET6.
Адреса делятся на внешние и временные (временные адреса ранее назывались анонимными). Дополнительная информация приведена в RFC 3041. В отличие от внутренних адресов IPv4, временные адреса распознаются в глобальной сети. Они применяются для другой цели. Временный адрес скрывает идентификатор клиента, устанавливающего соединение (по соображениям защиты). Срок действия временного адреса ограничен. Такой адрес не содержит идентификатор интерфейса, то есть адрес канала связи (MAC). Как правило, временный адрес нельзя отличить от обычного внешнего адреса.
В IPv6 также есть понятие ограниченного адресного пространства, связанное с предусмотренным распределением адресов.
Внутренние и внешние адреса
IPv4:
Все адреса IPv4 являются внешними. Исключение составляют три диапазона внутренних адресов, определенных организацией IETF в документе RFC 1918: 10.*.*.* (10/8), 172.16.0.0 - 172.31.255.255 (172.16/12) и 192.168.*.* (192.168/16). Внутренние адреса обычно применяются в различных организациях. Такие адреса не распознаются в Интернет.IPv6:
В IPv6 применяется аналогичная структура адресов, но с некоторыми существенными различиями.Адреса делятся на внешние и временные (временные адреса ранее назывались анонимными). Дополнительная информация приведена в RFC 3041. В отличие от внутренних адресов IPv4, временные адреса распознаются в глобальной сети. Они применяются для другой цели. Временный адрес скрывает идентификатор клиента, устанавливающего соединение (по соображениям защиты). Срок действия временного адреса ограничен. Такой адрес не содержит идентификатор интерфейса, то есть адрес канала связи (MAC). Как правило, временный адрес нельзя отличить от обычного внешнего адреса.
В IPv6 также есть понятие ограниченного адресного пространства, связанное с предусмотренным распределением адресов.
Таблица протоколов
IPv4:
В System i Navigator - таблица, содержащая имена протоколов и связанные с ними номера портов. Например: UDP, 17. По умолчанию в таблице есть записи для следующих протоколов: IP, TCP, UDP, ICMP.IPv6:
Эта таблица может применяться в IPv6 без изменений.
Quality of service (QoS)
IPv4:
Quality of service позволяет задать приоритет пакетов и пропускную способность для приложений TCP/IP.IPv6:
В настоящее время QoS, реализованный для IBM i, не поддерживает IPv6.Изменение адреса
IPv4:
Изменение адреса выполняется вручную или с помощью DHCP. Изменение адресов компьютеров в сети организации представляет собой весьма трудоемкий процесс, который рекомендуется выполнять лишь в случае крайней необходимости.IPv6:
Изменение адреса - это важная встроенная функция протокола IPv6, которая в значительной мере выполняется автоматически, особенно с префиксом /48.
Маршрут по умолчанию называется *DFTROUTE.
Маршрут
IPv4:
Один или несколько IP-адресов, связанных с парой значений, которая включает в себя имя физического интерфейса и IP-адрес следующего транзитного узла. Если адрес получателя пакета IP входит в указанную группу адресов, то этот пакет пересылается указанному транзитному узлу по заданной линии связи. Маршруты IPv4 связаны с интерфейсом IPv4, а значит, и с адресом IPv4.Маршрут по умолчанию называется *DFTROUTE.
IPv6:
Принципиально аналогично IPv4. Есть одно существенное отличие: маршруты IPv6 связаны с физическим интерфейсом (каналом связи, например, ETH03), а не с логическим интерфейсом. Одна из причин связи маршрута с физическим интерфейсом заключается в том, что в IPv6 и в IPv4 применяются разные алгоритмы выбора адреса отправителя.Протокол информации о маршрутизации (RIP)
IPv4:
RIP - протокол маршрутизации, который поддерживается демоном routed.IPv6:
В настоящее время протокол RIP не поддерживает IPv6.
В таблице служб указано большое число стандартных служб. Эта таблица применяется многими приложениями для определения порта службы.
Таблица служб
IPv4:
В IBM i - таблица, содержащая имена служб и связанные с ними номера портов и имена протоколов. Например, имя службы FTP, порт 21, TCP и протокол пользовательских дейтаграмм (UDP).В таблице служб указано большое число стандартных служб. Эта таблица применяется многими приложениями для определения порта службы.
IPv6:
В IPv6 эта таблица применяется без изменений.
Простой протокол управления сетью (SNMP)
IPv4:
Протокол SNMP служит для управления системами.IPv6:
Та же самая поддержка для IPv6.
API сокетов
IPv4:
Эти API могут применяться в приложениях для работы с TCP/IP. Изменения, внесенные в сокеты в протоколе IPv6, не влияют на работу приложений, которые не планируют применять IPv6.IPv6:
В IPv6 приложения с использованием сокетов могут применять новое семейство адресов: AF_INET6.
Изменения, внесенные в API в протоколе IPv6, не влияют на работу существующих приложений, использующих протокол IPv4. Приложения, которые должны поддерживать потоки данных IPv4 и IPv6, либо только поток данных IPv6, можно легко адаптировать путем преобразования адресов IPv4 в адреса IPv6 формата ::ffff:a.b.c.d, где a.b.c.d - исходный адрес IPv4 клиента.
Новые API поддерживают преобразование адресов IPv6 из текстового формата в двоичный, и наоборот.
Изменения, внесенные в API в протоколе IPv6, не влияют на работу существующих приложений, использующих протокол IPv4. Приложения, которые должны поддерживать потоки данных IPv4 и IPv6, либо только поток данных IPv6, можно легко адаптировать путем преобразования адресов IPv4 в адреса IPv6 формата ::ffff:a.b.c.d, где a.b.c.d - исходный адрес IPv4 клиента.
Новые API поддерживают преобразование адресов IPv6 из текстового формата в двоичный, и наоборот.
Выбор адреса отправителя
IPv4:
Приложение может назначить IP-адрес отправителя (обычно для этого применяется API сокетов bind()). Если связывание будет установлено с INADDR_ANY, то адрес отправителя выбирается исходя из маршрута.IPv6:
Как и при работе с IPv4, приложение может назначить адрес отправителя в формате IPv6 с помощью функции bind(). Кроме того, оно может позволить системе выбрать адрес IPv6 отправителя с помощью in6addr_any. Однако поскольку с линией связи IPv6 может быть связано несколько адресов IPv6, будет применяться другой внутренний алгоритм выбора IP-адреса отправителя.Запуск и завершение работы
IPv4:
Для запуска и завершения работы IPv4 служат команды STRTCP и ENDTCP. IPv4 обычно запускается при выполнении команды STRTCP для запуска TCP/IP.IPv6:
Для запуска или завершения работы IPv6 используйте параметр STRIP6 или команды STRTCP и ENDTCP. IPv6 может не запускаться при запуске TCP/IP. Запустить IPv6 можно позже.
Все интерфейсы IPv6 запускаются автоматически, если параметр AUTOSTART равен *YES (это значение установлено по умолчанию). IPv6 невозможно применять или настраивать без IPv4. Циклический интерфейс IPv6 ::1, будет определен и активирован автоматически при запуске IPv6.
Все интерфейсы IPv6 запускаются автоматически, если параметр AUTOSTART равен *YES (это значение установлено по умолчанию). IPv6 невозможно применять или настраивать без IPv4. Циклический интерфейс IPv6 ::1, будет определен и активирован автоматически при запуске IPv6.
Поддержка System i Navigator
IPv4:
System i Navigator - это решение, которое позволяет полностью настроить TCP/IP.IPv6:
Та же самая поддержка для IPv6.
Telnet
IPv4:
Telnet позволяет работать с удаленной системой так же, как с системой, с которой установлено прямое соединение.IPv6:
Та же самая поддержка для IPv6.Трассировка маршрута
IPv4:
Трассировка маршрута - это одна из основных функций TCP/IP, которая применяется для определения маршрута. Вызывается с помощью System i Navigator и текстового интерфейса.IPv6:
Та же самая поддержка для IPv6.Транспортные уровни
IPv4:
TCP, UDP, RAW.IPv6:
Подобные транспортные протоколы существуют и в IPv6.Неопределенный адрес
IPv4:
Такой тип адреса отсутствует. В программировании для сокетов 0.0.0.0 используется как INADDR_ANY.IPv6:
Равен ::/128 (128 нулевых битов). Указывается в качестве IP-адреса отправителя в некоторых пакетах при поиске соседей, а также в других случаях, например, при работе с сокетами. В приложениях с API сокетов адрес ::/128используется в качестве in6addr_any.
Коментарі
Дописати коментар