Какой параметр icmp сообщения детализирует причину ошибки

Как видно из табл. 3.5, в ICMP определено множество различных типов сообщений, включая пять типов сообщений об ошибках.

Сообщения об ошибках «пункт назначения недоступен»

Изначально ICMP требовался для того, чтобы маршрутизатор мог сообщить о проблемах при доставке пакета. Если маршрутизатор не в состоянии направить пакет по нужному пути, он генерирует сообщение об ошибке типа 3 и посылает его компьютеру-источнику. Поскольку генерация такого рода сообщений была основной задачей ICMP, сообщения «пункт назначения недоступен» имеют наибольшее количество вариантов. Шестнадцать (0—15) кодов ошибок сообщения «пункт назначения недоступен» приведены в табл. 3.6.

Таблица 3.6

Сообщения об ошибках ICMP типа пункт назначения недоступен

Код

Описание

0

Сеть недоступна (network unreacnable)

1

Компьютер недоступен (host unreachable)

2

Протокол недоступен (protocol unreachable)

3

Порт недоступен (port unreachable)

4

Фрагментация необходима, но запрещена (fragmentation needed and DF set)

5

Маршрутизация на заказ не удалась (source route failed)

6

Сеть назначения неизвестна (destination network unknown)

7

Компьютер назначения неизвестен (destination host unknown)

8

Компьютер-источник изолирован (устарело) (source host isolated)

9

Доступ в сеть назначения запрещен (destination network administratively prohibited)

10

Доступ в компьютер назначения запрещен (destination host administratively prohibited)

11

Для этого типа службы сеть недоступна (network unreachable ,for type-of-service, TOS)

12

Для этого типа службы компьютер недоступен (host unreachable for type-of-service, TOS)

13

Связь запрещена из-за фильтрации (communication administratively prohibited by filtering)

14

He соблюдается приоритет хоста (host precedence violation)

15

Снижение приоритета (precedence cutoff in effect)

Протокол IP не гарантирует доставку данных. С другой стороны, он почти всегда успешно справляется с доставкой. Если IP не удается доставить датаграмму, значит, возникла сетевая проблема, например ошибки при маршрутизации. Если вы внимательно изучили табл. 3.6, то, наверное, заметили, что большинство сообщений об ошибках относятся либо к компьютеру, либо к сети. Как правило, сообщения, относящиеся к компьютеру, означают проблему с доставкой, а сообщения, относящиеся к сети, — проблему с маршрутизацией. Так, например, код ошибки «сеть недоступна» означает проблему с маршрутизацией. На рис. 3.13 изображен формат ICMP-сообщения «пункт назначения недоступен».

Формат сообщения подобен общему формату, изображенному на рис. 3.12. Тип сообщения в поле типа равен трем, а поле кода (Code) соответствует коду ошибки от 0 до 15. Кроме того, в ICMP-сообщении содержится заголовок IР-датаграммы, вызвавшей его появление, и первые 64 бита (восемь байт) ее данных.

32 бита

Позиции битов

0                   7

8                   15

16                                              31

Тип (3)

Код (0-15)

Контрольная сумма

Не используется (заполняется нулями)

IP-заголовок, включая опции и первые 64 бита данных их первоначальной датаграммы

Рис. 3.13. Формат ICMP-сообщения «пункт назначения недоступен»

Пункт назначения может быть недоступен, если IP-заголовок содержит неправильный адрес назначения, либо если какое-нибудь промежуточное сетевое устройство выключено, либо, что менее вероятно, в таблице маршрутизации отсутствует путь к сети назначения. Все маршрутизаторы обязаны сообщать о сбое при доставке пакета источнику этого пакета. К сожалению, сами эти сообщения могут теряться. Существующая вероятность потери сообщения об ошибке делает протокол ICMP ненадежным.

Сообщения об ошибках перенаправления

Чтобы выяснить, по какому маршруту послать пакет, переключатели пакетов TCP/IP пользуются таблицами маршрутизации. Маршрутизация пакета основывается на номере сети назначения, а идентификатор сети назначения — это часть IP-адреса. Каждый маршрутизатор знает своего соседа, то есть следующую «остановку», которых может быть несколько, на пути пакета данных. В некоторых случаях к определенной сети могут вести несколько маршрутов. Для постоянного слежения за состоянием сети маршрутизаторы периодически обмениваются сообщениями. Тем не менее таблицы маршрутизации обновляются не очень часто. Исходные данные для них хранятся в местных файлах конфигурации — это минимально необходимая для начала работы маршрутизатора информация, как правило, адрес другого маршрутизатора или шлюза.

Компьютеры обновляют свои таблицы, основываясь на информации от маршрутизаторов и сообщения о перенаправлении ICMP — один из способов решать эту задачу.

Предположим, что ваш компьютер посылает датаграмму на компьютер коллеги, расположенный, как показано на рис. 3.14, в другой физической сети. Чтобы послать датаграмму, необходимо обратиться к маршрутизатору. Предположим, что датаграмма посылается маршрутизатору номер 2. Исследовав свою таблицу, маршрутизатор обнаружит, что компьютер коллеги находится на расстоянии одного «прыжка» от маршрутизатора номер 1 и что именно ему следует послать датаграмму. В результате датаграмма отправляется к маршрутизатору номер 1.

Кроме того, маршрутизатор номер 2 знает (из содержимого датаграммы и собственной таблицы), что ваш компьютер подсоединен к маршрутизатору номер 1 напрямую, а следовательно, датаграмму можно слать сразу ему — это будет оптимальный маршрут. Как только маршрутизатор определит, что существует лучший маршрут, он отправит ICMP-сообщение о перенаправлении компьютеру-источнику датаграммы. На рис. 3.15 показан формат сообщения о перенаправлении.

32 бита

Позиции битов

0                    7

8                     15

16                                          31

Тип (5)

Код (0-3)

Контрольная сумма

IP-адрес маршрутизатора

IP-заголовок, включая опции и первые 64 бита данных их первоначальной датаграммы

Рис.

3.15. ICMP-сообщение о перенаправлении (тип 5)

Компьютер-передатчик выясняет, что следующие датаграммы лучше слать маршрутизатору, IP-адрес которого содержится в ICMP-сообщении. Другими словами, получив ICMP-сообщение о перенаправлении, ICMP-модуль компьютера должен исследовать содержимое заголовка IP-датаграммы (в теле сообщения) и IP-адрес маршрутизатора (второе 32-битное слово в заголовке сообщения). IP-заголовок даст адрес, по которому датаграммы шли неверным маршрутом, а IP-адрес маршрутизатора — тот маршрутизатор, который нужно использовать следующим. Эта информация может потребоваться для обновления таблицы маршрутизации сетевого компьютера. В табл. 3.7 приведены четыре кода сообщений о перенаправлении (тип 5). В примере на рис. 3.14 маршрутизатор пошлет сообщение типа 5 с кодом 1 (перенаправление для хоста).

Таблица 3.7

ICMP-сообщения об ошибках перенаправления (тип 5)

Код

Описание

0

Перенаправление для сети

1

Перенаправление для хоста (сетевого компьютера)

2

Перенаправление для сети по типу сетевой службы (TOS)

3

Перенаправление для хоста по типу сетевой службы (TOS)

Как видим, маршрутизатор может перенаправить сообщение, основываясь на содержимом поля «тип сетевой службы» (TOS) IP-заголовка датаграммы. Поле TOS заголовка датаграммы определяет ее приоритет. Хотя это поле применяется редко, в будущем, несомненно, его значение возрастет. Поэтому в ICMP заложена возможность помогать сетевым компьютерам обновлять таблицы маршрутизации, в зависимости от типа сетевой службы, которой принадлежит та или иная датаграмма. Протокол ICMP ограничивает сферу применения сообщений о перенаправлении. Каждый сетевой компьютер, в принципе, может работать маршрутизатором. Однако только системы, сконфигурированные как маршрутизаторы, могут посылать ICMP-сообщения о перенаправлении. Обыкновенный сетевой компьютер сделать этого не может. Далее, маршрутизаторы не обновляют свои таблицы, основываясь на сообщениях о перенаправлении. Вместо этого маршрутизаторы используют специальные протоколы.

Ошибки типа «лимит времени исчерпан»

Как известно, ошибки в таблицах маршрутизации могут привести к зацикливанию пакета между двумя маршрутизаторами. Это может случиться, когда каждый из них считает, что соседний маршрутизатор — наилучшее место для передачи пакета по назначению. Заголовок IP-датаграммы содержит специальное поле «время существования» (Time-to-Live, TTL), в котором время существования датаграммы ограничивается. Каждый маршрутизатор на пути пакета уменьшает время его существования. Время существования также уменьшается каждую секунду, которую пакет проводит во входной или выходной очереди маршрутизатора.

Как только время существования в поле TTL IP-датаграммы сравняется с нулем, сетевые программы уничтожат пакет и вышлют ICMP-сообщение «лимит времени исчерпан» (тип 11) компьютеру-источнику пакета. Формат ICMP-сообщения «лимит времени исчерпан» такой же, как у сообщения «пункт назначения недоступен», но поле Туре равно 11 вместо 3. Сообщения «лимит времени исчерпан» бывают двух видов, как показано в табл. 3.8. Код 0 устанавливается в случае, если датаграмма исчерпала время существования во время пересылки (например, из-за описанного выше зацикливания). Код 1 устанавливается, если произошел сброс таймера сборки фрагментов датаграммы до того, как все фрагменты прибыли.

Таблица 3.8

ICMP-сообщения об ошибках «лимит времени исчерпан» (тип 11)

Код

Описание

0

Поле время существования (TTL) сравнялось с нулем во время передачи датаграммы

1

Таймер сборки фрагментов истек

Когда компьютер-получатель принимает датаграмму с установленным флагом «фрагмент-продолжение», запускается таймер сборки фрагментов. Все фрагменты обязаны появиться до того, как этот таймер истечет. Если таймер истек, а датаграмма все еще не собрана, она уничтожается. В этом случае генерируется ICMP-сообщение типа 11 с кодом 1.

Ошибки «неверный параметр»

Компьютеры и маршрутизаторы высылают такое сообщение, если источник проблемы с маршрутизацией или доставкой неизвестен. Существуют два типа таких ICMP-сообщений, как показано в табл. 3.9.

Таблица 3.9

ICMP-сообщение об ошибке «неверный параметр» (тип 12)

Код

Описание

0

Неверный IP-заголовок

1

Необходимая опция отсутствует

Сообщение с кодом 1 генерируется, если датаграмма не содержит всех необходимых для нормальной работы TCP/IP атрибутов (опций). Предположим, вы разработали криптозащищенный протокол для работы с приложениями государственной важности. Если программа-клиент попытается передать запрос к серверу и не приложит специального секретного ключа к датаграмме, сервер ответит сообщением об ошибке типа «необходимая опция отсутствует». Сообщение типа «неверный IP-заголовок» генерируется во всех остальных случаях, когда источник ошибки невозможно распознать. На рис. 3.16 приведен формат сообщения ICMP «неверный параметр». Поле указателя (pointer) идентифицирует тот байт датаграммы, который привел к возникновению ICMP-сообщения. Для сообщений с кодом 1 («необходимая опция отсутствует») поле указателя равно нулю.

32 бита

Позиции битов

0                 7

8                    15

16                                        31

Тип (12)

Код (0-1)

Контрольная сумма

Указатель

Не используется (заполняется нулями)

IP-заголовок, включая опции и первые 64 бита данных их первоначальной датаграммы

Рис. 3.16. Формат ICMP -сообщения «неверный параметр» (тип 12)

Сообщение об ошибке «столкновение данных»

Механизм контроля потока данных гарантирует, что передатчик не будет передавать быстрее, чем приемник в состоянии принять и обработать. Другими словами, гарантируется, что входной буфер приемника не переполнится. Протокол TCP обеспечивает механизм управления потоком в качестве одной из сетевых служб. К сожалению, управление потоком возможно лишь тогда, когда протокол ориентирован на соединение. Поскольку IP не ориентирован на соединение, он не умеет управлять потоком данных. Поскольку маршрутизаторы работают на уровне IP, в их входных очередях может создаваться аналог транспортной пробки в часы пик в результате слишком большого количества вновь приходящих IP-пакетов. Если маршрутизатор не успевает обработать все приходящие пакеты, то «лишние» пакеты уничтожаются, а компьютеру-источнику пакета направляется ICMP-сообщение об ошибке «столкновение данных» (тип 4). Сообщение «столкновение данных» указывает компьютеру на необходимость снизить скорость передачи. На самом деле, механизм сообщений «столкновение данных» является некоторым подобием управления потоком данных на уровне IP. Для каждого уничтоженного в результате столкновения пакета, маршрутизатор высылает ICMP-сообщение. Как только компьютер получает его, он тут же снижает скорость передачи.

Если маршрутизатор продолжает передавать ICMP-сообщения «столкновение данных», компьютер продолжает снижать скорость передачи. Как только ICMP-сообщения перестают появляться, компьютер вновь начинает увеличивать скорость. И так до тех пор, пока не будет достигнута оптимальная скорость. Формат сообщения

ICMP «столкновение данных» тот же, что и у сообщения «пункт назначения недоступен», только поле типа имеет значение 4. Сообщение «столкновение данных» бывает только единственного вида, то есть поле кода у него всегда имеет значение 0 — других кодов не бывает.

This tutorial explains ICMP error messages and their formats in detail. Learn what the ICMP error messages are, how they are formatted, and how they work.

For error reporting and controlling, IP protocol uses ICMP. ICMP is a collection of predefined messages that an IP enabled device can use to inform another device about a specific condition. For example, whenever a router fails to forward or deliver an IP packet, it sends an ICMP message back to the source that explains why it can’t forward or deliver the packet.

ICMP messages are divided into two categories: ICMP error messages and ICMP query or information messages. In this tutorial, we will discuss ICMP error messages.

ICMP error message format

Every ICMP error message describes a separate error message and requires an individual solution. However, all ICMP error messages use the same error message format to report the error.

The following image shows the basic structure and fields in the ICMP error message format.

icmp error message format

The following table lists fields of ICMP error messages and provides a brief description of each field.

Field Size (in bytes) Description
Message type 1 Indicate the specific ICMP error message or the group of messages.
Message code 1 Indicate the particular message in the group if the message type represents the group.
Checksum 2 Validate the ICMP message.
Original Headers 20 — 60 Contain the full header of the failed IP packet.
Original Data 8 Contain the first 64 bits of the failed IP packet.

Without including the header and data of the failed IP packet, the length of an ICMP error message is eight bytes. After including these fields, the total length of an ICMP packet can be anywhere from 36 to 72 bytes.

The type and code fields

ICMP messages are organized in types and codes. Types and codes are numeric values. Every message type represents a single message or a group of messages. If a type represents a group of messages, then code values are used. Every code value represents a message in the group.

To view a complete list of all ICMP message types and codes, check the previous part of this article.

Both the type and code fields are used to specify the exact ICMP error message being sent. Both fields are 8 bits in length.

The checksum field

The checksum field is used to validate ICMP messages. The sending system sets the value of the checksum field to 0 and performs a simple checksum operation. After running the checksum operation, the sending system puts the calculated checksum value in the checksum field.

The receiving system reverses this procedure before processing the message. It sets the value checksum field to 0 and performs the same checksum operation. After running the checksum operation, it compares the result with the value stored in the checksum field. If both values are the same, the message is considered valid. All valid messages are processed while are invalid messages are discarded.

Message body

Every IP packet consists of two fields: header and data. IP protocol includes all necessary information in every IP packet making it capable to reach its destination by taking whatever path is available. This information is included in the header field of IP packets. The first 64 bits of the data field contain the header of the upper layer. It contains the source and destination port number field used by the TCP layer.

ICMP uses this information to inform the sender which IP packet failed. The message body field of an ICMP error message contains two fields: the original message header and the original message data. These fields are used to include the header and the first 64 bits of the data field of the failed message. When a source receives an ICMP error message, by examining the message body field it can determine which IP packet was failed.

ICMP Error messages

ICMP error messages are used to report non-transient delivery problems. ICMP provides two sets of error messages: one for IPv4 and another for IPv6. The following table lists all ICMP error messages.

ICMP message type Description Codes IP Version
3 Destination Unreachable 0 — 15 IPv4
5 Redirect 0 — 3 IPv4
11 Time Exceeded 0 — 1 IPv4
12 Parameter Problem 0 -2 IPv4
4 Source Quench (Deprecated) NA IPv4
1 Destination Unreachable 0 — 8 IPv6
2 Packet Too Big 0 IPv6
3 Time Exceeded 0 — 1 IPv6
4 Parameter Problem 0 — 10 IPv6

Let’s discuss ICMP error messages in detail.

Destination unreachable

This error message indicates that the destination host, network, or port number that is specified in the IP packet is unreachable. This could happen due to a lot of reasons such as the destination host device is down, an intermediate router is unable to find a path to forward the packet, and a firewall is configured to block connections from the source of the packet.

As mentioned earlier, if there are multiple reasons for a particular error, ICMP defines them in the subclass or category of that error message. Messages in the sub-category are called codes. ICMP defines 16 possible codes for IPv4 for this error message. From these, three are obsolete or inappropriate for normal usages.

The following table lists all codes for the IPv4 destination unreachable error message.

Code Description
0 Net Unreachable
1 Host Unreachable
2 Protocol Unreachable
3 Port Unreachable
4 Fragmentation Needed and Don’t Fragment was Set
5 Source Route Failed
6 Destination Network Unknown
7 Destination Host Unknown
8 Source Host Isolated (obsolete)
9 Communication with Destination Network is Administratively Prohibited (obsolete)
10 Communication with Destination Host is Administratively Prohibited (obsolete)
11 Destination Network Unreachable for Type of Service
12 Destination Host Unreachable for Type of Service
13 Communication Administratively Prohibited
14 Host Precedence Violation
15 Precedence cutoff in effect

For IPv6, IPCMP defines nine codes. These codes are listed in the following table.

Code Description
0 no route to the destination
1 communication with destination administratively prohibited
2 beyond scope of source address
3 address unreachable
4 port unreachable
5 source address failed ingress/egress policy
6 reject route to the destination
7 Error in Source Routing Header
8 Headers too long

Source Quench

This message indicates that either the destination host or an intermediary router (or device) is receiving more data than it can process. If a source receives this error message, it can reduce the rate of transfer to solve this issue.

This error mostly occurs when a router connects a high bandwidth network (such as LAN) to a low-bandwidth network (such as dial-up). In such a situation, a sender device may transmit more data than a device working in the low-bandwidth network can feed.

This error message type has been depreciated.

Redirect

This error message is used when a router needs to tell a sender that it should use a different path for a particular destination. Usually, it happens when the router knows a shorter path to the destination.

This error message has four sub-types. From them, two have been depreciated. The following lists all sub-types and their meanings.

Code Meaning
0 Redirect for Destination Network (deprecated)
1 Redirect for Destination Host
2 Redirect for Destination Network Based on Type-of-Service (deprecated)
3 Redirect for Destination Host Based on Type-of-Service

Time Exceeded

This message indicates that the Time-To-Live value of the datagram has reached zero but the datagram has not yet been reached the final destination. A destination system can also send this error when it does not receive all fragments on an IP datagram within the allotted time.

There are two sub-types of this error message. Both are listed in the following table.

Code Meaning
0 Time-to-Live Exceeded in Transit
1 Fragment Reassembly Time Exceeded

Parameter Problem

If a device finds a problem that is not covered in any ICMP message type, it sends a parameter problem message to the sender. In IPv4 network, usually it occurs when arguments to an option are incorrect. In IPv6, this error occurs when the value in the header field is out of the range, or one of the options is not recognized, or the value in the type or code field is invalid.

Most of the time this problem belongs to problems with IP or TCP Options. The following table lists ICMP code messages that belong to this error.

Code Description IP version
0 Pointer indicates the error IPv4
1 Missing a Required Option IPv4
2 Bad Length IPv4
0 erroneous header field encountered IPv6
1 unrecognized Next Header type encountered IPv6
2 unrecognized IPv6 option encountered IPv6
3 IPv6 First Fragment has incomplete IPv6 Header Chain IPv6
4 SR Upper-layer Header Error IPv6
5 Unrecognized Next Header type encountered by an intermediate node IPv6
6 Extension header too big IPv6
7 Extension header chain too long IPv6
8 Too many extension headers IPv6
9 Too many options in the extension header IPv6
10 Option too big IPv6

Packet too big

This error occurs when a datagram is too big for a network over which it must travel. To report this problem, ICMP uses different message types and codes in both versions of IP. In IPv4, it uses a destination unreachable message with the code field set to 4. In IPv6, it uses a packet too big message which has a type field of 2.

The maximum size of a datagram that can be transmitted over a network is measured in MTU. To transmit data successfully, a source must discover MTU. MTU discovery involves receiving information about the MTU of remote networks.

This message contains a field that allows routers to inform the source about the MTU of the network that caused the problem. Once the source knows the MTU that failed its datagram, it can adjust MTU accordingly.

That’s all for this tutorial. In this tutorial, we discussed the ICMP error messages and their format. If you like this tutorial, please don’t forget to share it with friends through your favorite social channel.

By ComputerNetworkingNotes
Updated on 2022-04-07 11:28:09 IST

Протокол ICMP (Internet Control Message Protocol) — протокол межсетевых управляющих сообщений. 

Протокол IP, который используется для передачи данных на сетевом уровне, обеспечивает сервис передачи данных без гарантии доставки. Если по пути передачи данных с пакетом что-то произойдет, то никаких действий не предпринимается, сообщения об ошибке не отправляются, попыток передать снова этот пакет не предпринимается. 

Информация о возникающих ошибках в сети передается по протоколу ICMP. А также протокол ICMP может использоваться для диагностики работы в сети даже, когда в ней не возникают ошибки. Так как IP предоставляет сервис без гарантии доставки, то сообщение об ошибках ICMP не обязаны обрабатываться ни протоколом ICMP ни протоколом IP.  

Формат заголовка ICMP

Рассмотрим формат пакета ICMP. Первое поле в заголовке тип сообщения. Оно говорит о том, что произошло в сети, какая ошибка или какое действие по диагностике пытаются выполнить.

Формат заголовка ICMP

Второе поле -код сообщения. В нем подробно описывается тип ошибки, её причина или диагностическое действие. Дальше идёт контрольная сумма, которая используется для проверки правильности доставки. Следующие 4 байта, служебная информация, которая зависит от типа и кода сообщения. В поле данных ICMP, как правило включается фрагмент пакета при передачи которого произошла ошибка. 

Типы ICMP — сообщений

Самое важно в пакете ICMP это тип сообщений. Именно тип, говорит о том, что произошло в сети. Есть 2 вида ICMP сообщений. Первый вид это запрос-ответ.

Типы ICMP - сообщений

  • Например, тип 0 и тип 8 это эхо-ответ и эхо-запрос, которые используются для проверки доступности компьютера в сети. 
  • Тип 13 и 14 запрос и ответ отметки времени. Эти запросы используются для проверки быстродействия сети. Другой вид это сообщение без запроса. 
  • Тип 3 это сообщение об ошибке узел назначения недостижим. 
  • Тип 5 сообщение о новом маршруте, который позволяет быстрее попасть к необходимой сети. 
  • Тип 9 сообщение о маршрутизаторе. Маршрутизаторы в сети периодически рассылают такие сообщения, чтобы компьютеры, которые находятся в сети могли узнать, какие есть маршрутизаторы. 
  • Тип 10 запрос сообщения о маршрутизаторе, если компьютер только что подключился к сети, он может не дожидаться периодического сообщения от маршрутизаторов, отправить такой запрос и маршрутизатор сразу отправит ответ о себе. 
  • Сообщение с типом 11 используется если маршрутизатор отбросил пакет время жизни которого истекло, как правило такая ситуация возникает, если в сети появилась петля.
  • Сообщение с типом 12 — проблемы с параметрами, говорит о том, что в заголовке IP какая-то ошибка и маршрутизатор не может отправить такой пакет. 

Коды ICMP — сообщений 

Следующее поле в заголовке ICMP это код сообщения. Ниже представлено несколько возможных кодов для типа сообщения 3 — узел назначения недостижим. Какие могут быть причины? Причины перечислены ниже на картинке. 

Коды ICMP - сообщений

Применение ICMP

Большая часть пакетов ICMP формируется и отправляется автоматически сетевым оборудованиям. Но некоторые типы сообщений формируются утилитами, которые применяются для диагностики сети. Рассмотрим утилиты ping и traceroute (в Windows tracert)

Утилита ping

Утилита ping используется, чтобы проверить доступность компьютера в сети. Возможно подключиться к этому компьютеру или нельзя. Ping использует это-протокол ICMP. Компьютер, который хочет проверить доступность другого, отправляет эхо-запрос (тип=8, код=0).

Утилита ping

Компьютер, который получил такой запрос, в ответ отправляет эхо-ответ ICMP с типом 0, если эхо-ответ не пришел, значит установить с компьютером соединение по сети невозможно.

Утилита ping

Пример использования утилиты ping для проверки возможности подключиться к сайту ВКонтакте. По умолчанию утилита ping запускает 4 эхо-запроса и для каждого эхо-запроса получен эхо-ответ. В ответе указывается некоторая диагностическая информация.

ping пример

Утилита traceroute

Утилита traceroute позволяет определить маршрут от отправителя к получателю. Под маршрутом имеется в виду перечень всех маршрутизаторов через которые проходит пакет. 

Пример работы утилиты traceroute ее windows вариант tracert для определения маршрута к сайту ВКонтакте. 

Пример Утилита traceroute

Работа утилиты traceroute 

Как утилита traceroute узнает маршрутизатор? Для этого утилита использует ICMP сообщения время жизни истекло. Чтобы этого достичь, сначала отправляется сообщение у которого время жизни установлено в единицу TTL=1.

Работа утилиты traceroute

Пакет доходит до первого маршрутизатора, маршрутизатор уменьшает время жизни TTL=0 и маршрутизатор отбрасывает пакет.

Работа утилиты traceroute

И генерирует сообщение об ошибке ICMP с типом 11, код 0 время жизни истекло. Утилита traceroute из заголовка IP пакета в которого вложен ICMP извлекает IP-адрес маршрутизатора.

Работа утилиты traceroute

На следующем этапе отправляется пакет с временем жизни равным двум TTL=2. 

Работа утилиты traceroute

На первом маршрутизаторе время жизни уменьшается до единицы и пакет переходит на второй маршрутизатор.

Работа утилиты traceroute

Второй маршрутизатор снова уменьшает время на 1, время жизни становится нулем. Пакет отбрасывается и уже второй маршрутизатор отправляет сообщение время жизни истекло. Утилита traceroute извлекает адрес второго маршрутизатора из IP заголовка этого сообщения. 

Работа утилиты traceroute

И так происходит до тех пор пока пакет не дойдет до узла назначения. 

Заключение

Рассмотрели протокол ICMP протокол межсетевых управляющих сообщений. Протокол ICMP используется для сообщения об ошибках, которые происходят в сети  и для тестирования работоспособности сети. 

Начало

> Основы TCP/IP

Протокол ICMP представляет собой механизм передачи сообщений об ошибках, которые возникают в процессе
информационного обмена в сети Internet. На данный протокол не возлагаются функции локализации и устранения причин, которые привели к возникновению этих ошибок.

Для передачи сообщений протокола ICMP по сети IP используются дейтаграммы обычного формата. Сообщение ICMP в данном случае помещается в поле DATA. Заголовок дейтаграммы, которая предназначена для переноса сообщений ICMP, имеет следующие значения полей:

  • SERVICE TYPE = 0
  • PROTOCOL = 1 (ICMP)
  • TIME TO LIVE – устанавливается в соответствии с типом сообщения в секундах
  • SOURCE IP ADDRESS – адрес источника сообщения ICMP
  • DESTINATION IP ADDRESS– адрес станции назначения для данного сообщения ICMP

Структура сообщения ICMP

TYPE ICMP Сообщение
0 Echo Reply
3 Destination Unreachable
4 Source Quench
5 Redirect
8 Echo Request
11 Time Exceeded
12 Parameter Problem
13 Timestamp Request
14 Timestamp Reply
15 Information Request
16 Information Reply
17 Address Mask Request
18 Address Mask Reply

Сообщение ICMP состоит из заголовка сообщения и собственно сообщения. Заголовок сообщения ICMP может занимать до 8 байтов – два 32-х разрядных слова. Собственно сообщение ICMP не имеет фиксированной длины, поэтому размер данного поля определяется типом сообщения. В заголовке сообщения  размещается идентификатор типа сообщения ICMP. В таблице приведены значения поля TYPE ICMP и типы сообщений, которые соответствуют этим значениям.

Сообщения ICMP можно условно разделить на парные и непарные. Парные сообщения состоят из двух компонентов – запрос (Request) и ответ (Reply). Сообщение типа ответ высылается станцией назначения только в ответ на полученное от источника сообщение типа запрос. К сообщениям такого типа относятся Echo Request/Reply. Непарные сообщения формируются асинхронно при возникновении какой либо проблемы при передаче дейтаграммы, и передается в адрес источника данной дейтаграммы. К сообщениям подобного типа относятся сообщения Destination Unreachable и Source Quench.

Сообщения ICMP

Структура заголовка сообщений ICMP

Заголовки всех сообщений ICMP имеют примерно одинаковый формат. В четырех первых байтах заголовка сообщений ICMP размещаются поля TYPE, CODE и CHECKSUM.

Поле TYPE

В этом поле заголовка сообщений ICMP размещается код, который соответствует типу сообщения.

Поле CODE

В поле CODE некоторых сообщений ICMP может быть размещен код  дополнительной диагностической
информации.

Поле CHECKSUM

В этом поле заголовка сообщений ICMP размещается контрольная сумма данного сообщения. Эта контрольная сумма вычисляется суммированием всех полей, начиная с поля TYPE. При вычислении контрольной суммы значение поля CHECKSUM полагается равным 0.

Сообщение Destination Unreachable

Сообщение Destination Unreachable (цель недоступна) — принадлежит к непарным  сообщениям ICMP. Это сообщение формируется в том случае, если запрошенный сетевой ресурс является недоступным для запрашивающей его станции.

0 7 15 31
TYPE=3 CODE=0…12 CHECKSUM
UNUSED=0
Internet Header+64 первых бита дейтаграммы

В поле CODE сообщения Destination Unreachable размещается код, который соответствует типу запрошенного недоступного сетевого ресурса или конкретизирует причину, из-за  которой  этот ресурс недоступен в данном случае.
Возможные значения поля CODE приведены в таблице:

CODE Значение
0 Network Unreachable
1 Host Unreachable
2 Protocol Unreachable
3 Port Unreachable
4 Fragmentation Need & DF set
5 Source Route Failed
6 Destination Network Unknown
7 Destination Host Unknown
8 Source Host Isolated
9 Communication with destination Network Administratively Prohibited
10 Communication with destination Host Administratively Prohibited
11 Network Unreachable for type of service
12 Host Unreachable for type of service

Сообщения данного типа могут быть сформированы как станцией назначения (CODE=2 и 3), так и одним из промежуточных маршрутизаторов – шлюзов (CODE=0,1,6 и т.д.). При этом в качестве адреса источника должен быть указан IP адрес узла, который обнаружил проблему. Например, сообщение №1 — Host Unreachable может быть сформировано последним маршрутизатором, который пытается доставить сообщение до хоста по непосредственно подключенной сети. Для того, чтобы станция – источник смогла правильно интерпретировать диагностическое сообщение, в тело сообщения Destination Unreachable помещается заголовок и первые 8 байт исходной дейтаграммы.

Сообщение Time Exceeded

Сообщение Time Exceeded – (истекло время) принадлежит к непарным сообщениям ICMP. Это сообщение должно
быть  сформировано в том случае, если в процессе передачи дейтаграммы истекло допустимое время её существования в сети или на хосте.

0 7 15 31
TYPE=11 CODE=0 или 1 CHECKSUM
UNUSED=0
Internet Header+64 первых бита дейтаграммы

Значение поля CODE в сообщении Time Exceeded используется для уточнения причины, по которой дейтаграмма прекратила существование:

  • CODE=0 — в процессе передачи дейтаграммы поле TTL приняло значение 0
  • CODE=1 – таймер дефрагментации установился в 0 до полной сборки принятого сообщения

Сообщение Parameter Problem

Сообщение Parameter Problem — (проблема с параметром) принадлежит к непарным сообщениям ICMP. Сообщение данного типа должно быть сформировано в том случае, если в процессе обработки заголовка дейтаграммы на хосте или маршрутизаторе были обнаружены некорректные аргументы, которые делают  невозможным дальнейшее перемещения дейтаграммы. В этом случае дейтаграмма должна быть уничтожена, а в адрес её источника должно быть передано сообщение Parameter Problem.

0 7 15 31
TYPE=12 CODE=0 или 1 CHECKSUM
POINTER UNUSED=0
Internet Header+64 первых бита дейтаграммы

В поле CODE данного сообщения размещается признак типа диагностической информации. В том случае, если в этом поле находится код «0», значение поля Pointer сообщения Parameter Problem соответствует номеру байта в заголовке исходного сообщения, который не может быть адекватно интерпретирован. Например, значение Pointer=1, в данном случае указывает на возникновение проблемы с интерпретацией поля Type Of Service исходного сообщения.

Значение поля CODE=1 должно быть сформировано в ситуации, когда причина, по которой данная дейтаграмма не может продолжать перемещение по сети заключается в несоответствии запрашиваемых параметров установленным
требованиям. Такими требованиями могут быть, в частности, требования по обеспечения безопасности.

Сообщение Source Quench

Сообщение Source Quench – (сдерживание источника) принадлежит к непарным сообщениям ICMP. Это сообщение должно быть сформировано в том случае, если в процессе передачи дейтаграммы возникла угроза перегрузки.

При получении от станции назначения или одной из промежуточных станций сообщения Source Quench, источник должен, используя специальные процедуры уменьшить скорость информационного обмена в указанном направлении.

0 7 15 31
TYPE=4 CODE=0 или 1 CHECKSUM
UNUSED=0
Internet Header+64 первых бита дейтаграммы

При передаче этого сообщения в качестве адреса назначения должен быть использован адрес IP источника первичного сообщения. Для того, чтобы станция – источник смогла правильно интерпретировать диагностическое сообщение, в тело сообщения Destination Unreachable помещается заголовок и первые 8 байт исходной дейтаграммы.

Сообщение Redirect

Сообщение Redirect – (изменение маршрута) принадлежит к непарным сообщениям ICMP. Это сообщение должно быть  сформировано в том случае, если при получении дейтаграммы шлюз обнаруживает, что для её передачи был выбран неудачный маршрут. На рисунке приведен пример использования сообщения Redirect для изменения неверного маршрута.

В данном случае хост А(10.40.0.2) отправляет дейтаграмму в направлении хоста В(10.10.0.2) используя для этого в качестве шлюза маршрутизатор R2. После того, как маршрутизатор R2 получает дейтаграмму, он определяет, что данная дейтаграмма адресована в направлении 10.10.0.0. Кратчайший маршрут для достижения этой сети для
маршрутизатора R2 лежит через маршрутизатор R4, который в данном случае подключен к тому сегменту сети, из которого была получена принятая дейтаграмма.

Маршрутизатор R2 направляет дейтаграмму по направлению R4 (красная стрелка на рисунке) и одновременно формирует сообщение ICMP Redirect, в котором он рекомендует хосту А впредь для передачи дейтаграмм в направлении сети использовать в качестве шлюза маршрутизатор R4.

0 7 15 31
TYPE=5 CODE=0/1/2/3 CHECKSUM
Gateway Internet Address
Internet Header+64 первых бита дейтаграммы

Сообщения данного типа могут быть сформированы только маршрутизатором – шлюзом. В заголовке сообщения ICMP Redirect размещается IP адрес шлюза, который рекомендуется использовать для достижения сетевого ресурса,
указанного в исходной дейтаграмме и тип маршрута, который должен быть изменен по предложению источника сообщения ICMP. В таблице приведены используемые значения поля CODE сообщения ICMP Redirect и соответствующие им рекомендации по изменению маршрута:

CODE Значение
0 Redirect Datagram for networks
1 Redirect Datagram for host
2 Redirect Datagram for the Type of service and networks
3 Redirect Datagram for the Type of service and host


Ссылки по теме:

  • RFC 792

����� 9 ����������
��������: ������ � �����������
���������(ICMP)

  • 9.1 ��������
  • 9.2 ���������� ��������
    ����������� ���������
  • 9.3 ��������� �� ������
    ������ ����������� ������
  • 9.4 �������� ���������
    ICMP
  • 9.5 ������ ��������� ICMP
  • 9.6 ������������
    ������������ ���������� � ���
    ���������
  • 9.7 ������ ���������
    ������� ��� � ������ ���
  • 9.8 ��������� �
    �������������� ����������
  • 9.9 ���������� �������
    ���������� � ������������ ����
  • 9.10 ������ ����������
    ���������
  • 9.11 ������� ���������
    �������� �� ������
  • 9.12 �����������
    ����������� ��� �������
    ������� �����
  • 9.13 ��������� � ������
    ���������
  • 9.14 �������������
    ����� � ������ �������
    ��������
  • 9.15 ��������� �������
    � ������ ����������
  • 9.16 ��������� �����
    �������
  • 9.17 �����
  • ��� �����������
    ��������
  • ����������

9.1 ��������

�� ��� ������, ��� ����������
�������� ������������ ����������
�������� �������� ��� ������������
����������, � ��� �����������
������������ �� ����� � ����� ��
��� ���, ���� ��� �� ���������
�����, ������� ����� ��������
��������� �� � ��������� �����
����������. ���� ���� �� �����
���������������� ��� ���������
�����������, ��� ���� ����
��������� ��������� ������� ���
������, ����� ��� ������������
����, �������� �� ��� �����������
���������� �����������, ��� �����
�������� ���������������
���������, ��� ���������
����������� �������� ��� �������
��������� ��������. ��� �����
������������� ��������,
������������ ������� � ��� ���
�������� ����������� ���������� �
���������� �� �������. �� ������,
��� ����� ���������� ���� ��������,
����� �������� � ��������� ���
��������, � ��� ��� ���������� ���
��� �������� ������������
����������.

9.2 ���������� ��������
����������� ���������

� ������� ��� ������������
����������, ������� �� �������,
������ ���� �������� ��������� ���
������������� ��� ��������
����������� ����������, ��
����������� ���� �������� �
�������� ������������. ��� �������
������ ��������, ���� ���
������������� ��������� �
����������� �������������, �� ����
�� ���������� ������, ���������
���������� ��� �����. ������ �����
����� �������� � �����������, IP
�������� ��������� ��������
����������, ����� ������
���������� �������� ��� ���������
��������� �� ����, ����� ����������
������� ������� �����, ��� �����
������������� ����� ���
�������������, ��� �� �����
���������� ���������� �������.
������ �������� ����� ��������,
���������� ����� � ����������,
���������� �� �����������
�����������, ����������� � ���, ���
� ������ ����������� ����� �����
���������� �� ������� ������������
��� ��������� �� ����� �
������������� �������. � ���������,
�� ������� ������ �����������
���������, ����������� �� �����
�������, ������ �� �������� ������
��� �������� ���� �� ���������
������ ��� ���������. �������
���������� ������ �������. � �����
��������� IP ��� ������, ��� ����� ��
������ ����������� ���������
��������� ��� ������ � �����
�������.

����� ���� ����������� ������ �
��������� �������� �� ������� ���
������������� ���������� �
������������� �������� ������,
������������ �������� ��������
��������� ������������ ����������
� ��������� TCP/IP. ���� ��������,
��������� ��� ���������� ��������
����������� ���������(ICMP),
��������� ����������� ������ IP �
������ ���������� � ������
���������� IP.

��� � ���� ������ �������,
��������� ICMP ���������� ��
��������� � ���� ������
IP-����������. �������� �����������
��������� ICMP, ��� �� �����, ��������
�� ���������� ��������� ���
������������ �� ������ ����������,
� ����������� ����������� IP �� ����
������. �� ����, ����� ���������
��������� ICMP �� ������, ���
������������ ������ ������������
����������� ICMP. �������, ���� ICMP
���������, ��� ������ ���� �������
���������� ���������� �����
�������� ������ ��� ����������
����������, �� ������� �� ����
���������������� ������. ��������
�����:

���������� �������� �����������
��������� ��������� ������
�������� ����������� ��������� ���
��������� �� ������� �� ������
����� ��� ���; ICMP ������������
�������������� ����� �����������
������������ �����������
��������� ������ �����.

������������� ������������� ���
�������������� ������ �����������
�������� � �������� ������
�������� ���, ICMP �� ������������
������ ��� ������. ���� �����������
������������ �������������
��������� ��������� ICMP, �����
������ ����� ������� ��������� ICMP
�� ����� ������ ������. �������, ���
����� ������������ ICMP ��� ����� ��
������ ��� ������ ���. �������
������ �� ���������� ���
������������ ICMP ����������� � ���,
��� �� ������������ �������
��������, ������������ ��� ����
����������� � ��������������
���������.

9.3 ��������� �� ������
������ ����������� ������

������ ����������� ������, ICMP —
��� �������� ��������� �� �������.
�� ������������ ��� ������,
�������������� ������, ������
�������� �� ������ ���������������
���������. ���� ������������
��������� ���������� ����������
������� ������������� ICMP �
���������� �������� ���������
�������� � ����� �� ������, ICMP ��
������������� ��������� ��������,
������� ����� ����������� � �����
�� ��� ��������� ������. ������
������:

ICMP ������ �������� � ���������
������� ��������������� ���������;
�������� ��� ������ ������� ������
� ����������� �����������
����������� � ����������� ��������
�� ����������� ������.

������� ����� ������ ������� ��
��������������� ���������, ��
������ — ���. ��� ��� ICMP �������� ��
������� ��������������� ���������,
�� �� ����� ��������������, �����
������������� ������������� �����
�� �������. ��������, ����������,
��� ����������� ������� �� ����
����� ����� G1,G2,…,Gk. ���� Gk ��������
������������ ���������� �
��������� � �������� ��������
����������� �� ���� G�, �� Ge �����
���� �������� �� ������
��������������� ���������. �
���������, �������� �� �������� ��
��� �������� � �� ����� ���������
����������� ������� ���� ������.
����������, �������� �� ������ ����
����������, ����� ���� ������ ���
��������.

����� ������������ ICMP
��������������� � ��������������
���������� ? ����� ������ ����
��������, ���� ���������
������������ ���� ��������
����������� � ������������� �
���������� ������. �����������
�������� ����, ������� ����������
������ ��������������� ��������� �
��������� ����������; ��� ��
�������� ������� �������� ������
���� ����� ��������(�����
��������� �������, �����
������������ ����� ������
��������).

����� ����, ��� ��� ����� �����
��������� � ������ ���� �������
�������������, �� ����������
����������� ������������� � �����.
�������, ����� �����������
��������� ������� �����, ������
������, ����� ���� ��� ������ ��
�����. ���� ���� ������������
������, �� �� ����� ������ �����
������������� ������ ������������
��� �����������, � ������� �� �����
�������� �� �� ������. ������
�������� �������� ����������� ����
���� ���������� ICMP, ����� ��������
��������������� ��������� �
��������� ��������, �������� �� ��,
��� �������������� ��� �����
����������������� �
���������������� ����, �����
������������ � ��������� ������.

9.4 �������� ��������� ICMP

��������� ICMP ������� ���� �������
������������, ��� �������� ��
������� 9.1. ������ ��������� ICMP
���������� �� ��������� � ����
������ IP-�����������, ������� ����
���������� �� ������ ����������
���� � ���� ������ �����.
�����������, ������� ��������� ICMP
���������������� ����� ��� ��, ���
� �����������, ������� ����������
��� �������������; ��� ��� ��
������������ ��������������
��������� ��� ����������. �������,
���� ��������� �� ������� �����
���� �������� ��� �������. �����
����, � ��� ������������� ����
��������� �� ������� ����� �������
�������������� ������������.
���������� �������� ��� ��������
��������� ������, ����
IP-�����������, ������� ���������
ICMP, ������� ������. ��� ����������,
������������� ��� ����, �����
�������� �������� ���������
��������� �� �������, ��������� �
���� ������� ����������� ��
�������, ����������, ��� ���������
ICMP �� ������������ ��� ������,
����������� ��-�� ����������,
������� ��������� �� ������� ICMP.

                    --------------------------------------
                    |���������  |    ������  ICMP       |
                    | ICMP      |                       |
                    --------------------------------------
                    V                                   V
         -------------------------------------------------
         | ���������|    ������� ������ �����������     |
         |����������|                                   |
         -------------------------------------------------
         V                                              V
-----------------------------------------------------------
|���������|        ������� ������ �����                  |
|�����    |                                              |
-----------------------------------------------------------

������� 9.1 ��� ������
������������ ICMP. ��������� ICMP
��������������� � IP-�����������,
������� � ���� �������
��������������� � ����� ���
��������. ��� ������������� ICMP ����
��������� ����������� ��������
�������� 1.

����� �������, ��� �������� �� ��,
��� ��������� ICMP ��������������� �
����������, ��������� IP, ICMP ��
��������� ���������� �����
�������� ������ — �� ��������
����������� ������ IP. �������
������������� IP ���
��������������� ��������� ICMP
����������� � ���, ��� ��
������������ �������� ���������
���������� ����� ��� ����, �����
������� ������ ���������
����������. �������, ��� �� �����
���� ���������� ������ � �������
���������� ��������.

9.5 ������ ��������� ICMP

���� ������ ��������� ICMP �����
���� ����������� ������, ��� ���
���������� � ���� ���������� �����:
8-�������� �������������� ���� ���,
������� �������������� ���������,
8-�������� ���� ���, �������
������������ ����� ������
���������� � ���� ���������, �
16-�������� ����
�����������_�����(ICMP ����������
��� �� ����� ���������� ��������,
��� � IP, �� ����������� ����� ICMP
��������� ������ ��������� ICMP).
������ ����, ��������� ICMP,
���������� �� �������, ������
�������� ��������� � ������ 64 ����
������ �����������, ���������
������.

�������� ����������� �� ������
��������� �����������, ���������
������, �������� ������� ���������
���������� ����� ����� ����������,
����� ��������� � ����� ����������
��������� ������������ ��
��������� ���� �����������. ��� ��
������ �����, ��������� �����
�������� ������ � ������ TCP/IP
��������������� ����� �������, ���
����������� ����������
������������ � ������ 64 �����.

���� ��� ICMP ���������� �����
���������, � ����� ��� ������. ���
���� ��������:

���� ��� ��� ��������� ICMP
0 ����� �� ���
3 ���������� �����������
4 ���������� ���������
5 ��������������(���������
��������)
8 ������ ���
11 ��������� ����� ���
�����������
12 ������ ��������� �
�����������
13 ������ ��������� �������
14 ����� ��� ��������� �����
15 ������ ����������(��
���������)
16 ����� �� ������
����������(�� ���������)
17 ������ ����� ������
18 ����� �� ������ ����� ������

��������� ������ ���������
������ �� ���� ���������, �������
��� ���� ��������� ��������
������� ��������� � �� �����.

9.6 ������������
������������ ���������� � ���
���������

��������� TCP/IP ������������
��������, ���������� �������
��������������� ��� �������������
���������������� �������� � ����.
���� �� ����� ��������
������������ ������� �������
�������� ��������� ICMP ������ ��� �
����� ���. ��� ��� ���� ��������
��������� ������� ��� ����������
����� ����������. ����� ������,
���������� ������ ���, ����������
����� �� ��� � ���������� ���
��������������� �����������. ����
������ �������� ��������������
������� ������; ����� ��������
����� ������, ��������� � �������.
������ ��� � ��������� � ��� �����
����� �������������� ��� ��������
������������ ���������� � ���
����������� �������� �� �������.
��� ��� � ������ ���, � ����� �� ����
���������� � IP-������������,
�������� ����� ������
��������������� �
����������������� �������� ������
������������ �������. ��-������,
����������� ����������� IP ��
������ ��������� ���������
������������� �����������.
��-������, ������������� �����
����� ���������� � �����������
�������������� � ���������
�������������� �����������.
�-�������, ������ ����������
�������� (�� ������� ����, ���
������������ ����������) �
����������� ����������� ��� IP, ���
� ICMP ��������� ���� �������. �
�������, ������� ��������� � ������
�� ���� �������� ���� ���������.

�� ������ �������� �������,
������� ������������ �������� ���
������� ������� ��� ICMP, ����������
ping. ����������� ������ ����
��������� �������� ����� ��������
��� ICMP, ��������� ������ � ������
���������� � ������� ����������.
��� ��������� ������������
��������� ����� ���������� ������
� ��������� ������� �����
���������. ����� ������� ������
������ �������� ������ ��� ICMP �
���� ������.

9.7 ������ ���������
������� ��� � ������ ���

������� 9.2 �������� ������
��������� ������� ��� � ������ ��
������ ���.

0            8            16
------------------------------------------------------------
|���(8 ��� 0)| ���(0)      |   ����������� �����          |
------------------------------------------------------------
|    �������������         | ���������������� �����       |
------------------------------------------------------------
|         �������������� ������                           |
------------------------------------------------------------
|                   ......                                |
------------------------------------------------------------

������� 9.2 ������
��������� ������� ��� � ������ ��
����

����, ��������� ��������������
������ ����� ���������� ����� �
�������� ������, ������� ����
������� �����������. ����� �� ���
������ ���������� �� �� �����
������, ��� ���� �������� �� �
�������. ���� ������������� �
���������������� �����
������������ ������������ ���
�������� ������������ �������
��������. �������� ���� ���
����������, �������� �� ���������
��������(8) ��� �������(0).

9.8 ��������� �
�������������� ����������

����� ���� �� ����� ���������
IP-�����������, �� ��������
��������� «����������
�����������» �������
��������������� �����������,
��������� ������, ����������� ��
������� 9.3.

0            8            16
------------------------------------------------------------
|���(3)      | ���(0-5)    |   ����������� �����          |
------------------------------------------------------------
|    �� ������������(������ ���� ����� ����)              |
------------------------------------------------------------
| ���������� ��������� ���� ������ 64 ���� �����������    |
------------------------------------------------------------
|                   ......                                |
------------------------------------------------------------

������� 9.3 ������
��������� � ��������������
����������

���� ��� � ��������� �
�������������� ����������
�������� ����� �����, �������
��������� �������. ��������
��������� ��������:

�������� �����
0 ���� �����������
1 ��� ����������
2 �������� ����������
3 ���� ����������
4 ��������� ������������
5 ������ ��� �������������
���������
6 ���� ���������� ����������
7 ��� ���������� ����������
8 ��� ��������� ����������
9 �������������� � �����
���������� ���������������
���������
10 �������������� � ���
���������� ���������������
���������
11 ���� ����������� �� ������
������������
12 ��� ���������� ��-�� ������
������������

���� IP �������� ����������
���������� ��������, �����������
�� ������������ ������ ���. ������
���, ����� ������ ������ �����
���������� ������������� ���
�������� �����������, ����
�������� ��������� �
�������������� ���������� �������
��� ���������, � ����� ����������
�����������. ������ ��������������
���� ������ �������� ����������
������ �������������; ������
�������������� ��� — ���������
������ ��� ��������(�����������
�������� ������, ����� �����
���������� ����� ���������
��������, ��������� � ����� 16. ���
�������� �� ������ ���
������������� � ������� � �������
��������� ICMP � �������������� ���).
��� ��� ��������� ��������
�������� ������� �����������,
��������� ������, �� �������� �����
����� �����, ����� �����
����������.

���������� ����� ����
������������� ��-�� ����, ���
������������ ���� ��������
����������������, ��-�� ����, ���
����������� ������ ��������������
����� ����������, ��� ( � ������
�������) ��-�� ����, ��� � ����� ��
������� �������� � ���� ����������.
�������, ��� ���� ����� �������� ��
�������, ������� ��� ����������,
��� ����� �� ����� ��� ���� �������
��������. ��������, ���� ������
���������� ������������ � ����
Ethernet, �� ������� ������������ ��
������������� �������������
��������� �����������. �������,
���� ����� ���������� ��������
������ ���������� ���� ����� ����,
��� ��� ���������, �� ������� ���
���� ������� ���������� � ���, ���
������ �� ������������. ��������
�����:

���� ����� �������� ��������� �
�������������� ����������, ����
��� �� ����� ����������
������������� ��� ��������
�����������, �� ��� �������� ������
��������������.

����� ��������� � ��������������
����� � ��������� ������ ����,
����� �� ������, ��� ���������
����� �������� ������ ����������
���������� ����� ���������,
���������� ������. ����� �������
����� ��������� ��������� �������
��� �� �� ��������. ����
����������� �������� �����
������������� ��������� �
������������ ���������, �� ���
����� �������� � ���������
��������� �� ������ �������������
���������. ���� ����� �����
��������������� �����������, ��
���������� ��� «��
���������������», �� ����
�������� ��������� «���������
������������» ������� ���������.

9.9 ���������� �������
���������� � ������������ ����

��� ��� IP �������� ���������� ���
������������ ����������, �� �����
�� ����� ������������� ������ ���
���������������� ������� ��
��������� ����������. � ����������,
������� ����� ������� ����������
������, ��������, ����������
������������� ����(congestion). �����
��������, ��� ������������ ����
����� ��������� ��-�� ����
���������� ������ ������.
��-������, ����������������
��������� ����� ������������
������� �������, ��� ���� �����
���������� ���. ��������,
���������� ��������������,
������������ ���������� �������.
������������, ���������� ��, �����
������������� �������� � ��������
����� �� ��������� ����������
����(WAN), ���� ��� ��������������
����� ���� ����������� �
���������������� ��������� ����.
������������ ����� ��������� �
�����, �������������� � ����������
����, ��� ��� ����������� �����
��������� �������, ��� �� �����
�������. ��-������, ���� ��������
����� ����������� ������������
����� �������� ����������� �����
���� ����, ���� ���� �����
��������� �������������, ���� ��
���� �������� � ����������� � ��
�������� ��� ��������.

����� ����������� ��������� ��
���� ��� ��� �������, ��� ��
�������� �� ������������, ��
�������� ������ �� � ������� �
����� ������. ���� ��� ����������� —
��� ����� ���������� ���� ���
�������� ����������, �� �����
����������� ������ ��������. ����
�� ������� ���������� ���������, ��
�� � �������� ����� ��� ��� ����
������ ��� ������ ��� ������� �
�������� ����� ������� �����
����������� �����������. �����
������ ���������� ��������� �
���������� ��������� ��� ������ ��
��������� ������������.

��������� � ���������� ���������
������� �� ��������� ���������
�������� �������� ����������.
������ ������������� �����
�������� �� ������ ��������� �
���������� ��������� �� ������
��������� �����������. ����� �����
����� ������������ ����� �������
���������� ������ �� ������������.
��������� ��������� �� ����������
��������� � ��������� ��������� �
���������� ���������� ��������.
������ �������� ��������
������������ � ��������, �������
������� ���������� ��������� � ���
������, ����� �� ������� ��������
����������� ������� ��������, �� ��
����, ��� ��� ������������.

�� ���������� ��������� ICMP,
����������� ������, ��������
���������� ���������. ������ �����
���, ��������� ��������� �
���������� ��������� �� ���������
������, �, ������� ��������, �
������� �� �������� ����������� ��
� �� ��� ���, ���� � ���� ��
���������� ��������� ��������� �
���������� ���������; ����� ��
���������� ����������� �������� ��
��� ���, ���� �� ����� �� �������
��������� � ���������� ���������.

9.10 ������ ����������
���������

������ ������� ����� ICMP ���, ��� �
����������� �����, �
��������������� 32-�������� ����,
��������� � ���������� ���������
����� ����, ���������� �������
�����������. ������� 9.4
������������ ���� ������. ��� � �
������ ���������� �� ������� ICMP
���� �������� ����������� ��������
������� �����������, ���������
���� ������ ���������� ���������.

0            8            16                              31
------------------------------------------------------------
|���(4)      | ���(0)      |   ����������� �����           |
------------------------------------------------------------
|    �� ������������(������ ���� ����� ����)               |
------------------------------------------------------------
| ���������� ��������� ���� ������ 64 ���� �����������     |
------------------------------------------------------------
|                   ......                                 |
------------------------------------------------------------

������� 9.4 ������
��������� � ���������� ���������
ICMP. ������������� ����� ��������
���� ��������� � ����������
��������� ������ ���, ����� ���
������� �����������; �������
����������� ��������������
��������� �����������.

9.11 ������� ���������
�������� �� ������

������� ������������� ���������
������ �� �������� � �������
�������� ���������� �������. ���
�������������� �� � ������� �����
������������ ��� �������� �������,
� ������� �������������� ����
������� ������ � ��� ��������� ���
���������� ������. ��� ���������
��������� ���� �������
������������� � ��� ��� ����� �����
����� �������������. ���������
����� ���� ���������(��������,
����� �������� �����������
������������) ���
����������(��������, ����� �����
���� ����������� � ���������). ���
�� ������ �����, ����� ������������
������������ ����������� �
�������������, ����� �����������
��������� � ���� � ������������
������ ��������. ������� �����
�������������� ����� �������:

��������������, ��� ����� �����
���������� ��������; ��� ��������
��������, ���� ������� ���������� �
���������, �� ������������ ������
����� �������� �� ������.

����� ������ ��������������
����� ������� � ����� ��������
������������ ���������� �
������������� � ����� ������������
������� ���, � ���������
������������ ��� �����������
������� ���������� �
�������������, ����������� ���
�������������� (��������, �����
������ �����). ������� ��� ��������
��������, ���� �����������
����������, � ���������� �� ��, ���
����� ������� �������� ��� �������
�������������. ���� ����
������������, ��� ��� ����������
������������� �������, �� ��������
��� ��������� ICMP, ����������
«���������������»,
������������� ��������� �������� �
������� ������������� ���. ����
���� ����� ���������� ��������
����������� � �� ����������.
������������� �����
�������������� ICMP �������� ��
��������: ��� ��������� ��� �����
������� ����� ������ ������ ����� �
��������� ����. ���� ��������� ����
���������� ��������� ICMP �
�������������� ������ ���, �����
��� �������� �����������, ���
������� ���������� ������ �������.
������� ������������� ���
��������� ���������, �� �����
��������� ����������� �������� ���
���� ������������ ����������.

��������� � ��������������, ���
�� �����, �� ������ ��������
��������������� ���������� �
��������� ���������, ��� ��� ���
������������� ������ ���
�������������� ����� ������ � ��� �
����� ���������� ����. ������� 9.5
������������ ��� ��������.
�������� ������� ��������������,
��� �������� � ��������
����������� ���������� �. �����
���� �1 ����������� ����������
����������� ����� ���� �2 ������
����� �4(�� ���� �1 �� ������ ������
����� ������� ����). ����� ���� �5
��������� �����������, �� �� �����
������� ��������� ��������������
ICMP �1, ��� ��� �� �� ����� �����
����� �1. ����������� �����
���������� ��������, ���
���������������� ���������� �
��������� ����� �����������
������.

          |   --  |  --  |
     --   |--|�1|-|-|�2|-|  --  |        |
    | �|--|   --  |  --  |-|�3|-|    --  |
     --   |       |         --  |---|�5|-|   --
          |       |     --      |    --  |--| �|
          |       |----|�4|-----|        |   --
          |       |     --      |

������� 9.5 ��������� �
�������������� ICMP �� ��������
������������� ����� �������. � ����
������� ���� �5 �� ����� ���������
�1 ������������ ����� �������� ����
��� ���������� ����� � � �.

������ �����-���������� ���, ��� �
����������� �����, ������
��������� � ��������������
�������� 32-������� ���� ����������
����� ����� � ���� �������
�����������, ��� ��� �������� ��
������� 9.6

0            8            16                              31
------------------------------------------------------------
|���(5)      |���(�� 0 �� 3)|   ����������� �����          |
------------------------------------------------------------
|     ���������� ����� �����                               |
------------------------------------------------------------
| ���������� ��������� ���� ������ 64 ���� �����������     |
------------------------------------------------------------
|                    ......                                |
------------------------------------------------------------

������� 9.6 ������
��������� � �������������� ICMP

���� ���������� ����� �����
�������� ����� �����, �������
������ ������������ ��� ���
����������� ����������� �
����������, ���������� � ���������
�����������. ���� ����������
��������� �������� ��������� IP �
��������� 64 ���� �����������,
������� ������� � ��������� �����
���������. ������� ���, �����������
��������� � �������������� ICMP,
������ �������� ����� ����������
����������� �� ��������
�����������. ���� ��� � ��������� �
�������������� ICMP ����� ���������
���������, ��� ����������������
����� ����������, ��� ���� ��������
����� ��������� �����:

�������� ���� ����� ���������
0 �������������� ����������
��� ���� ����(��������)
1 �������������� ����������
��� ����� ���
2 �������������� ����������
��� ����� ���� ������� � ����
3 �������������� ����������
��� ����� ���� ������� � ���

���������. ��������, ���
������ ��������� IP ��������� ���
�������, ������������� ���
�������������

��� �������, ����� ��������
������� �������������� ICMP ������
�� ���, � �� �� ������ �����. �����
�� ������, ��� ����� ����������
������ ��������� ��� ������
����������� � �������������.

9.12 �����������
����������� ��� ������� �������
�����.

��� ��� ���������� �����
��������� ����� ��������� ������
��� ����������� ����������� ��
������ ��������� ������, ������ �
������� ������������� �����
�������� � ����� ������������� �
��������� ����� ����������, D. ����
������������� ����� �������� ��
���� ������, ������ �� �������
���������� ����������� � �������
���������� D ������� �����, ���
����� �������� �� �������� �����
������. ����� ��������� ������
��������� ���� �������������,
������ �� ��� ����������
����������� � ����������� � �
���������� ����� �� �����. ����
����������� ������ � ����
�������������, ��� �����
������������ �� ���� ����������.
��� ���� �������� �����, ��� ������
���������� �� ������������
������������ �� ��������� TCP/IP
������ ����������� ����� �������
����� �����, ������ ����������
����� �������. ���� ��������������
������� ������� ����� ������ ���,
����� �� ������������ �����������,
� ������� �����������, �����
������� ���������� �������.

���������� �� ����, ������ �� ����
����������� ��-�� ���������
�������� ������� ����� ��� ��-��
���������� ������� ��������
���������� �����������, ��
�������� ��������� ICMP «���������
�����» ��������� �����������,
��������� ������, ���������� ��
������� 9.7

0            8            16                              31
------------------------------------------------------------
|���(11)     |���(0 ��� 1)  |   ����������� �����          |
------------------------------------------------------------
|     �� ������������(������ ���� �����)                   |
------------------------------------------------------------
| ���������� ��������� ���� ������ 64 ���� �����������     |
------------------------------------------------------------
|                   ......                                 |
------------------------------------------------------------

������� 9.7 ������
��������� ICMP � ���������� �������.
���� �������� ��� ��������� ������
���, ����� ������� �����������
��-�� ��������� ���� ������� �����
� ��������� ����������� ��� ��-��
��������� ������� ������ ���
�������� ���������� �����������.

���� ��� ��������� �������
���������:

�������� ���� �����
0 ��������� �������� ��������
������� �����
1 ��������� ����� ��������
��������� ��� ������

������� ���������� ��������
������ ����� ���� ����������
�����������. ����� ���������
������ �������� �����������,
����������� ��� ��������� ������ �
������� ������� ��� ��������� ��
������� ���� ����������
�����������. �������� ���� 1
������������ ��� ����, �����
�������� ����������� � �����
������; ��� ������ ������
���������� ��������� ���������.

9.13 ��������� � ������
���������

����� ���� ��� ��� ������������ �
���������, ��������� �
������������, �� �������������� �
����� ��������� ��������� ��
������� ICMP( ��������, ������������
��������� �����������), �� ��������
��������� «������ ����������»
��������������� �����������. �����
�� ��������� ������ ����� ��������
����� ���� ��������������
���������� �����. ���������, ������
�������� �������� �� ������� 9.8,
���������� ������ � ��� ������,
���� ����������� ������ ����
������� ��-�� ���� ������.

0            8            16
------------------------------------------------------------
|���(12)     | ���(0 ��� 1) |   ����������� �����          |
------------------------------------------------------------
|���������   |  �� ������������(������ ���� ����� ����)    |
------------------------------------------------------------
| ���������� ��������� ���� ������ 64 ���� �����������     |
------------------------------------------------------------
|                   ......                                 |
------------------------------------------------------------

������� 9.8 ������
��������� ICMP ������ ����������.
����� ��������� ���������� ������
� ��� ������, ����� ��-�� ����
������ ����������� ���������.

��� ������������� ���������
����������� ���������� ����
��������� � ��������� ���������
��� ������������� ������ �
�����������, ���������� ������. ���
1 ������������ ��� ������, �����
��������� ����� �����������(
��������, ����� ����������� �
������� �����); ���� ��������� ��
������������ ��� ���� 1.

9.14 ������������� ����� �
������ ������� ��������

���� ������ � ��������� �����
�����������������, ������ ���
�������� ���������� ���� �� �����,
������ � ������ ������ ���� �������
� ������� �������. ������
������������ ���� ����� �������
������������� ��������������
������. ���� ���������� TCP/IP
�������� ��������� ����������,
������� ����� �������������� ���
������������� �����. ���� ��
���������� ���������� ����������
��������� ICMP ��� ���������
�������� ������� �� ������ ������.
������������� ������ ��������
��������� ICMP «������ ���������
�����» ������ ������, ������, ���
������ ������ ������ �� �������
�������� �������. �����������
������ ���������� «�����
��������� �����» ������,
�������� ������. ������� 9.9
���������� ������ ���������
������� � ������ ��������� �����.

0            8            16
------------------------------------------------------------
|���(13, 14) | ���(0)      |   ����������� �����           |
------------------------------------------------------------
|    �������������         |  ���������������� �����       |
------------------------------------------------------------
| ���������� ��������� ���� ������ 64 ���� �����������     |
------------------------------------------------------------
|            ��������� ����� �����������                   |
------------------------------------------------------------
|            ��������� ����� ������                        |
------------------------------------------------------------
|            ��������� ����� ��������                      |
------------------------------------------------------------

������� 9.9 ������
��������� ICMP ������� � ������
��������� �����

���� ��� ��������������
��������� ��� ������(13) ��� �����(14);
���� ������������� �
���������������� �����
������������ ���������� ��� �����
����� �������� � ���������.
���������� ���� �������������
�������, ��������� � �������������
����� ��������, �� ��������. ����
��������� ����� �����������
����������� ��������������
������������ ����� ���������
������, ���� ��������� ����� ������
����������� ����� ����� ������
�������, � ���� ��������� �����
�������� �����������
��������������� ����� ���������
������.

��� ���������� ��� ��� ����
��������� ����� ��� �����������
���������� ������� �������� �����
���� � ������������� ����� �����.
��� ��� ����� �������� ����
��������� ����� �����������, ���
����� ��������� ����� �����,
��������� ��� �������� ������� �
����������, ������������ ������ ��
���� � ����������� ������. ��� ���
����� �������� ��� ����� �������
������� �� ��������� ������, ��� �
����� ������ ������, ��� �����
��������� ����� �������� �� ����, �
�� ��� ������ — ������� ����� ������
� ���������� ������. �� ��������
������ ������ ����� ������� �����
�������� �� ����, ��� ������������
���������� ��������� ICMP �
��������� ������. �������, ���
��������� ������ ������ �������
�������� �� ���� ����� �������
����� ��������� � ��������� ��. ���
�� �����, ����� �������� �� ����
����� ����� ��������,
��������������� � ��������
���������, ����� ������ ��������,
���� �� �������� ������� �������.
����� ����, ��������, ��� ��� ��� IP
�������� ����������� �
����������������� ���������,
����������� ����� ���� ��������,
��������� ��� ���������� �� ��
�������. �������, ������� ���������
�� ����������� ���������������;
��������� ������� ��������������
������ ��� ������ ������.

9.15 ��������� ������� �
������ ����������

��������� ICMP ������� ���������� �
������ ����������( ��� 15 � 16)
��������� � ��������� �����
����������� � �� ������
��������������. ���
��������������� ��� �����������
��� ����� ���������� ������� ���
��������. ������ ��� �����������
������ ������������ ���������
RARP(����� 6), � BOOTP(����� 19).

9.16 ��������� �����
�������

����� 16 ���������� �������
��������� ��������, � ����� ������
�� ����������. � ���� ������ �����
��������, ��� ����� ��� ����������
��������� ��������, ��������� ����
� ���� �������������� ��� ��
IP-������ �������������� ����������
����. ��� ���������� ���������
�������� ��� ���� �����, ����� ����
�� 32-������� ����������� ������
������������� ���������� ����, �
����� — �������������� ���.
����������, ��������� ���
������������� ������, ������������
����� 32-������� ��������,
���������� ������ �������.

����� ������ ����� �������,
������������ � ��������� ����,
������ ����� ������� ���������
������� ����� ������ ����� �
�������� ����� ����� ������.
������, �������� ������, ����� ����
������� ��������� ��������, ����
��� ����� ����� �����, ��� �������
����������������� ���������, ����
�� ����� ���. ������� 9.10 ����������
������ ��������� ����� ������.

0            8            16
------------------------------------------------------------
|���(17, 18) | ���(0)      |   ����������� �����           |
------------------------------------------------------------
|    �������������         |  ���������������� �����       |
------------------------------------------------------------
|                    ����� ������                          |
------------------------------------------------------------

������� 9.10 ������
��������� ������� ����� ������ �
������ ����� ������. ������, ���
�������� ����������������� ������,
�� ����, ����� ���� ����� ��������
��.

���� ��� � ��������� ����� ������
���������, �������� �� ���������
��������(17) ��� �������(18). �����
�������� ����� ������ ������� ����
� ���� ����� ������. ��� �������,
���� ������������� �
���������������� ����� ���������
������ ������� ����� � ��������.

9.17 �����

������� �������������� �����
�������� �������� �������
��������� �� �����������������
�������� �� ����� ���
����������������� �������� ��
������ ���. ������ �����
������������ ������
�������������� � �������
����������� ������������ ��
���������� ��� ��� ��������� ��� ��
������� ��� ��� ������� ��� �����
���������� � ���������.

ICMP ������������ �����������
�������������� ����� ������� � ���;
�� �������� ����������� ������ IP.
ICMP �������� � ���� ��������� �
«���������� ���������»,
������������ �������� ��������,
��������� «��������������»,
��������� �� ��� ��������� ������
�������������, ���������
«�������/������ ���», �������
��� ����� ������������, �����
����������, ��������� ��
����������. ��������� ICMP
���������� � ���� ������
����������� IP � ����� ��� ����
������������� ����� � ������
���������: ���� ���� ��������� ICMP,
���� ���� � ���� ����������� �����
ICMP. ��� ��������� ���������� ������
��������� ����� ��������� � ���
�����.

��� ����������� ��������

��� Tanenbaum[1981], ��� � Stallings[1985]
������������� �����������
��������� �-����� � ��������� �� �
���������� �������� �����������.
������� �������� �������� �� ��,
��� �������� �����������
���������, � �����. Grange � Gien[1979], �
����� Driver, Hopewell, � Iaquinto[1979]
����������������� �� ��������
���������� �������, ��� �������
����������� ��������� ����������.
Gerla � Kleinrock[1980] ������������
���������� ��������� ����������
�������.

ICMP, ��������� ����� ��� ��������
TCP/IP, ���������� Postel[RFC 792]. Nagle[RFC 896]
������������� ���������
���������� ��������� � ����������,
��� ����� ������ ������������ ��
��� ���������� ���������� ����. Prue
� Postel[RFC 1016] ������������� �����
����� ����������, �������
���������� ����� ��� ����������
���������. Nagle[1987] ����������, ���
���������� ������ ��������
��������� � ����� � ��������
�����������. Mogul � Postel[RFC 950]
������������� ��������� ������� �
������ ����� �������. �������, Jain,
Ramakrishnan � Chui [1987] ����������, ���
����� � ������������ ���������
����� ����������������� ���
���������� ���������� ����.

����� �������� ���������
������������� ����� ������� � Mills[RFC
956, 957 � 958].

����������

9.1 ���������� ���������� �������
��������� ICMP � ������ ����
���������� � ����� ��������� ���� �
������� ���.

9.2 ����������, ������� �� ��
�������� ������ ����� ���� ���
������, ��� �������� ��������� ICMP �
���������� ���������.

9.3 ������������ ��������,
���������������� ���� �� ���������
��������� ICMP � ��������� ������.

9.4 ����������, �������� �� ����
������������ ������� ������� ping.
����� �� ������� �� ������ ?

9.5 �����������, ��� ������������
������� �������� ��������� ICMP �
���������� ������� ����������
����������. ����������� �� ���
���������� ������� traceroute, ��������
������ ������ ����� ���������� �
����������� ������������.

9.6 ���� �� ������������ �
���������, ���������� ���������
������� ping ��� ��� 128.10.2.1 ( ������ �
������)

9.7 ������ �� ���� ������
���������� ICMP ����� �������
��������� �� ��������� � �������
��������� ? ������ ?

9.8 ���������� Ethernet, ������� ����
��� � 12 ������, �������������� �
����. ����������, �����
����(������� ������������),
���������� IP-����� � ��������� ���,
�������� ��� ������� 24 ������.

9.9 �������� ������ ����������
��������� ICMP � ����������� ������
Jaina. ����� �� ��������� ����� ������
��� ���������� ���������� ���� ?
������ ?

9.10 �� ���������� ��������� ICMP,
����������� ������ �������������
��������, ��� ������ ��������
�������� � ����, ��� �����������
����������� ������������. ���
����� �������� ����� ���������
����� ���� �������� ?

9.11 ������ �� ��������� �� �������
ICMP ��������� ��������� �����,
������������, ����� ��� ����
������� ? ������ ?

����� | ���������� | ������


Понравилась статья? Поделить с друзьями:
  • Какой ошибкой является тавтология
  • Какой ошибкой считается неправильный перенос слова
  • Какой ошибки стоит избегать при использовании противопоставления
  • Какой ошибка загрузки
  • Какой объект содержит информацию об ошибке vba