- •Спецификация протокола icmp
- •Форматы сообщений
- •Сообщение о превышении контрольного времени
- •Сообщение о проблемах с параметром
- •Сообщение для приостановки отправителя
- •Сообщение о переадресации
- •Сообщение со штампом времени и сообщение с ответом на штамп времени
- •Запрос информации и ответное сообщение с информацией
- •Список типов сообщений
Сообщение о переадресации
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 |
Тип |
Код |
Контрольная сумма |
|||||||||||||||||||||||||||||
Internet адрес шлюза |
|||||||||||||||||||||||||||||||
Internet заголовок + 64 бита данных из исходной датаграммы |
Поля IP заголовка Заимствованы сеть и адрес отправителя из исходной датаграммы с данными.
Поля ICMP сообщения Тип 5
Код
0 |
- переадресация датаграмм для сети |
1 |
- переадресация датаграмм для хост-компьютера |
2 |
- переадресация датаграмм для типа услуг и сети |
3 |
- переадресация датаграмм для типа услуг и хост-компьютера |
Контрольная сумма Контрольная сумма - это 16-битное дополнение до единицы суммы дополнений в ICMP сообщении, начиная с поля типа ICMP. При вычислении контрольной суммы следует сперва обнулить поле контрольной суммы. В будущем алгоритм вычисления контрольной суммы может быть изменен.
Internet адрес шлюза Адрес шлюза, на который должен быть проложен маршрут к сети, указанной в поле адреса в исходной датаграмме с данными.
Internet заголовок + 64 бита данных из исходной датаграммы Internet заголовок плюс первые 64 бита данных из исходной датаграммы. Эти данные используются хост-компьютером для привязки сообщения к соответствующему процессу. Если протокол более высокого уровня использует номера портов, то предполагается, что эти номера входят в первые 64 бита данных исход ной датаграммы.
Описание Шлюз посылает сообщение на хост-компьютер о переадресации в следующей ситуации: Шлюз G1 получает Internet датаграмму от хост-компьютера в сети, где он расположен. Шлюз G1 проверяет таблицу маршрутизации и находит адрес следующего шлюза G2 в качестве маршрута для датаграммы по пути в сеть X, где расположен ее адресат. Если G2 и исходный хост-компьютер идентифицируются Internet адресом как находящиеся в одной и той же сети, то на хост-компьютер следует послать сообщение о переадресации. Сообщение о переадресации заставляет хост-компьютер посылать датаграммы для сети X прямо на шлюз G2, поскольку это более короткий путь, нежели привлекать еще шлюз G1. Шлюз передает данные исходной датаграммы их адресату в системе Internet.
Для датаграмм с опциями IP маршрутизации отправления и адресом шлюза в поле получателя сообщение не посылается, даже если и существует более оптимальный маршрут к конечному адресату, чем следующий адрес, указанный в такой опции маршрута.
Шлюзом могут быть переданы сообщения с кодами 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 |
Тип |
Код |
Контрольная сумма |
|||||||||||||||||||||||||||||
Идентификатор |
Номер очереди |
||||||||||||||||||||||||||||||
Данные ..... |
Поля IP заголовка Адреса Адрес отправителя в эхо-сообщении будет адресом получателя в ответном сообщении. Чтобы сформировать сообщение ответа, следует просто переставить местами адреса отправителя и получателя, код типа изменить на 0 и пересчитать контрольную сумму.
Поля ICMP сообщения Тип
8 |
- эхо-сообщение |
0 |
- сообщение в ответ на эхо |
Код 0
Контрольная сумма Контрольная сумма - это 16-битное дополнение до единицы суммы дополнений для ICMP сообщения, начиная с поля типа ICMP.
При вычислении контрольной суммы это поле должно быть сперва обнулено. Если общая длина сообщения нечетная, то для вычисления контрольной суммы поле данных дополняется еще одним нулевым октетом. В будущем алгоритм вычисления контрольной суммы может быть изменен.
Идентификатор Если код = 0, то идентификатор для соотнесения эхо-сообщений и ответов на них, должен быть обнулен.
Номер очереди Если код = 0, то номер очереди, служащий для соотнесения эхо-сообщений и ответов на них, должен быть обнулен.
Описание Данные из эхо-сообщения должны быть переданы в ответе на это сообщение.
Идентификатор и номер очереди может использоваться отправителем эхо-сообщения с целью идентификации приходящих пакетов. На пример, идентификатор может использоваться в качестве порта подобно протоколам TCP и UDP для идентификации сеанса. Номер очереди может увеличиваться на единицу при посылке каждого эхо сообщения (запроса). Компьютер, отозвавшийся на это сообщение, возвращает в своем ответе те же значения для идентификатора и номера очереди, что были в исходном эхо-сообщении.
Как шлюз, так и хост-компьютер могут возвращать сообщение с кодом 0.