Home

Page 14
Page 14
background image

 

 

Код 1. Host Unreachable (Узел недостижим).  
Этот код означает, что маршрутизатор отбрасывает пакет, так как не смог 

передать  его  непосредственно  узлу  получателю.  Т.е.  пакет  поступил  на 
маршрутизатор  подключенный  к  сети,  которой  принадлежит  получатель,  после 

чего маршрутизатор послал ARP запросы в поисках МАС адреса получателя и не 
получил  ответа.  Таким  образом,  маршрутизатор  убедился,  что  узел-получатель 
недоступен.  Такой  пакет  может  послать  только  маршрутизатор,  при  чем  не 
любой маршрутизатор, а только тот, который подключен непосредственно к той 
сети, которой принадлежит получатель пакета.  

Код 2. Protocol Unreachable (Протокол недостижим).  
Положим,  станция  получила  некоторый  IP  пакет.  В  этом  пакете  лежат 

данные,  какого  либо  протокола  верхнего  уровня  (например,  ICMP).  Станция 
получатель пакета узнает из анализа поля Protocol заголовка IP пакета, какому 
протоколу  верхнего  уровня  передать    данные  из  IP  пакета  для  дальнейшей 
обработки.  Предположим,  что  на  станции  получателе  нет  программного 
обеспечения,  которое  должно  обрабатывать  пакеты  с  таким  полем  Protocol.  В 

таком  случае  станция  отбрасывает  IP  пакет,  но  отсылает  отправителю  ICMP 
сообщение типа 3 с кодом 2 – сообщение о недостижимости протокола на узле-
получателе  пакета.  Такие  ICMP  сообщения  не  имеют  права  слать  транзитные 
маршрутизаторы т.к. на них не обязательно наличие программного обеспечения 
для  анализа  содержимого  IP  пакета,  такого  -  какое  есть  у  узла  получателя 
пакета. Кроме того, маршрутизаторам вообще не положено анализировать поле 
данных IP пакета.  

Код 3. Port Unreachable (Порт недостижим).  
Поле  Protocol  IP  заголовка  столь  мало  (1  байт),  что  адресовать 

приложения,  передающие  свои  данные  с  помощью  IP  пакетов  с  его  помощью 
невозможно.  Поэтому,  даже  для  тех  приложений,  которым  не  нужны  функции 
транспортного  и  сеансового  уровней  (т.е.  гарантии  доставки  данных) 
необходимо  иметь  протокол,  который  бы  располагался  над  IP  и  позволял 

адресовать  большое  количество  приложений,  а  не  256,  как  IP.  Фактически, 
между IP заголовком и приложениями нужен «переходник», которому присвоено 
некоторое  значение  поля  Protocol,  а  сам  этот  протокол,  будет  иметь  длинные 
поля  для  адресации  приложений  (например,  двухбайтовые).  Именно  эту 
функцию  и  выполняет  протокол  UDP,  а  его  поле,  предназначенное  для 
адресации  приложений,  называется  «порт».  Соответственно,  когда  на  станцию 
поступает IP пакет, внутри которого лежит заголовок UDP, а внутри UDP пакета 
лежат  данные  какого  то  прикладного  протокола  -  UDP  на  станции  получателе 
передает  извлеченные  из  пакета  данные  в  адрес  (на  порт)  этого  приложения. 
Если на узле получателе нет соответствующего приложения (т.е. порт с данным 
номером  не  соответствует  ни  одному  запущенному  приложению)  то  пакет 
отбрасывается, а его отправителю посылается ICMP сообщение типа 3 с кодом 3. 

Данное  сообщение,  очень  похоже  на  предыдущее  (тип  3  код  2)  и,  по  той  же 
причине, никогда не может быть послано маршрутизатором, а посылается лишь 
узлом получателем пакета.  

Код  4.  Fragmentation  needed  and  DF  set  (необходимо  фрагментация,  но 

установлен флаг DF). Данное сообщение посылается только маршрутизаторами и 
означает,  что  пакет  необходимо  фрагментировать,  однако  это  запрещено,  так 
как установлен флаг DF в заголовке IP пакета.  

Код  5.  Source  route  failed  (неверный  маршрут  от  источника).  Данное 

сообщение  посылают  маршрутизаторы  в  случае,  если  в  заголовке  IP  пакета 


Copyright © 2021 Файлообменник files.d-lan.dp.ua

Использование любых материалов сайта возможно только с разрешения автора.