Я только что прочитал это в Википедии:
Хотя сообщения ICMP содержатся в стандартных дейтаграммах IP, сообщения ICMP обычно обрабатываются как особый случай, в отличие от обычной обработки IP, а не как обычный подпроток IP.
Чем ICMP уникален? Я пытался выяснить, используется ли он в TCP-пакете или UDP-пакете при запуске ping
, но я продолжал читать, что это "уникальный" протокол, и не смог найти для этого однозначного ответа.
Кроме того, я видел этот вопрос и ответ в Wireshark Lab о ICMP - ping:
Если ICMP вместо этого отправляет UDP-пакеты (как в Unix/Linux), будет ли номер IP-протокола по-прежнему 01 для тестовых пакетов? Если нет, что бы это было?
Нет. Если вместо этого ICMP отправляет UDP-пакеты, номер протокола IP должен быть 0x11.
Почему номер протокола IP будет другим, если ICMP отправляет UDP-пакеты?
Кроме того, ICMP не использует UDP в любом случае? Как это работает?