Сообщения Information Request и Information Reply
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Code | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Identifier | Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Поля IP
- Address
- Адрес отправителя сообщения information request будет адресом получателя в сообщении information reply. Для формирования сообщений information reply поля адресов отправителя и получателя просто меняются местами, значение кода заменяется на 16 и заново вычисляется контрольная сумма.
Поля ICMP
- Type
- 15 — для сообщений information request
- 16 — для сообщений information reply
- Code
- 0
- Checksum
- Контрольная сумма представляет собой 16-битовое поразрядное дополнение до единицы суммы поразрядных дополнений до единицы сообщения ICMP, начиная с поля ICMP Type. При расчете контрольной суммы значение поля checksum принимается нулевым. Алгоритм вычисления контрольной суммы может быть изменен в будущем. Идентификатор
- Если code = 0, идентификатор для обеспечения соответствия запросов и откликов может быть нулевым.
- Порядковый номер
- Если code = 0, порядковый номер для обеспечения соответствия запросов и откликов может быть нулевым.
Описание
Эти сообщения могут передаваться с установленным в заголовке IP адресом отправителя и нулевым значением адреса получателя (такой вариант адресации означает "данная сеть"). Отвечающему модулю IP следует передавать отклик с заполненными полями адресов. Такие сообщения могут использоваться хостами для определения номера своей сети.
Значения идентификатора и порядкового номера могут использоваться отправителем в целях обеспечения соответствия между запросами и откликами. Например, значение идентификатора может использоваться по аналогии с портами TCP и UDP для обозначения сеансов, а порядковый номер может увеличиваться на единицу в каждом передаваемом запросе (отвечающая сторона сохраняет порядковые номера в откликах).
Код 0 может приходить от шлюзов и хостов.