Протокол ICMPv6 недоступен (протокол не поддерживается)

SIP RFC 3261 — Раздел 18.4 —

Если пользователь транспорта запрашивает отправку сообщения через ненадежный транспорт, а результатом является ошибка ICMP, поведение зависит от типа ошибки ICMP. Ошибки недоступности хоста, сети, порта или протокола или проблемы с параметрами СЛЕДУЕТ заставить транспортный уровень информировать пользователя транспорта о сбое отправки.

Для IPv4 — Protocol Unreachable можно смоделировать, отправив SIP-сообщение по SCTP на узел, который не поддерживает SCTP.

Меня смущает IPv6. В ICMPv6 нет ошибки «Протокол недоступен». У меня не настроен IPv6 для тестирования. У меня есть вопросы ниже -

  1. Разве IPv6/ICMPv6 не поддерживает «Протокол недоступен»?
  2. RFC 4443 о типе = 1, коде = 3

    Если причина сбоя доставки не может быть сопоставлена ​​с каким-либо другим кодом, в поле Код устанавливается значение 3. Примером таких случаев является невозможность преобразовать адрес назначения IPv6 в соответствующий адрес ссылки или ссылку -специфическая проблема.

Означает ли это, что type = 1, code = 3 сопоставляется с «Protocol Unreachable»? Цель вопроса здесь состоит в том, чтобы получить максимальную информацию об этой проблеме.


person Sudhansu    schedule 06.04.2017    source источник
comment
Я голосую за то, чтобы закрыть этот вопрос как не относящийся к теме, поскольку он принадлежит networkengineering.stackexchange.com   -  person Mathieu Borderé    schedule 06.04.2017


Ответы (1)


Вы смотрите на это через очки IPv4. В заголовке пакета IPv4 есть поле Protocol, а в заголовке пакета IPv6 его нет, поэтому сообщение Protocol Unreachable не применяется к IPv6. Вместо заголовка пакета IPv6 используется поле «Следующий заголовок».

В ICMPv6 есть сообщение о проблеме с параметрами, которое включает код для: Обнаружен нераспознанный тип следующего заголовка.

person Ron Maupin    schedule 06.04.2017
comment
Привет, Рон. Этот вопрос актуален и для следующего заголовка IPv6. Что делать, если следующий заголовок содержит значение (132), указывающее транспорт SCTP в качестве полезной нагрузки, но пункт назначения не поддерживает SCTP. Какую ошибку ICMP я должен получить? Аргумент действителен для TCP, а также для UDP. Несмотря на то, что эти два протокола поддерживаются каждым стеком, вопрос теоретически актуален. Пожалуйста, исправьте, если есть ошибка. - person Sudhansu; 10.04.2017
comment
Как я объяснил в своем ответе, если хост получает пакет IPv6, предназначенный для протокола, который хост не поддерживает (например, SCTP), то IPv6 в сетевом стеке должен генерировать ICMPv6 Type 4 (Parameter Проблема) с кодом 1 (Обнаружен нераспознанный тип следующего заголовка) и обычно указателем 40 (Следующий заголовок). Все это четко задокументировано в RFC 4443, Протокол контрольных сообщений Интернета (ICMPv6) для Спецификация Интернет-протокола версии 6 (IPv6), раздел 3.4, Сообщение о проблеме с параметрами. - person Ron Maupin; 10.04.2017