Internet Control Message Protocol (ICMP) е протокол от трети слой (мрежов слой) в седемслойния модел на OSI. Протоколът диагностицира проблеми с мрежовата свързаност или предаването на данни между устройствата. Той помага чрез изпращане, получаване и обработка на ICMP съобщения, за да докладва проблеми със свързаността към изходното мрежово устройство.

Следователно, основната цел на ICMP протокола е да докладва грешки на мрежовия слой. Въпреки това, злонамерени участници могат да манипулират нейната функционалност, за да стартират атаки като разпределен отказ на услуга (DDoS) и атаки Ping of Death. Тук ще научите за ICMP протокола, неговия случай на използване и параметрите, които са важни за разбирането на ICMP съобщенията.

Как работи ICMP?

Рутерите използват ICMP протокол за извършване на управление на мрежата и диагностика на проблеми. Той генерира и изпраща съобщения за грешка до устройството изпращач, когато мрежата деактивира доставката на пакети до устройството местоназначение. Тези съобщения за грешка включват превишено време, проблем с параметрите, недостижима дестинация, претоварване на мрежата и др.

instagram viewer

Например, когато подателят изпраща данни от едно устройство до устройството местоназначение под формата на IP дейтаграма, той преминава през множество рутери или посреднически устройства. Понякога може да има грешка при препращането на тази IPV4 дейтаграма. Следователно ICMP съобщенията са разделени на две широки категории: съобщения за грешки и съобщения за заявка.

Съобщения за отчитане на грешки

Това са съобщенията, с които рутерът или междинният хост може да се сблъска при обработката на дейтаграма:

  1. Превишено време: ICMP пакетът има параметър за време на живот, който когато достигне 0, рутерът или хостът изхвърля дейтаграмата и изпраща съобщение за грешка при превишено време. Съобщението се изпраща и когато дестинацията не получи всички фрагменти от данни.
  2. Дестинация недостижима: Устройството за иницииране на връзката получава съобщение за грешка за недостижимо местоназначение, когато рутерът или междинният хост не успее да го достави. Следователно устройствата изхвърлят дейтаграмата.
  3. Източник Quench: Когато устройствата не успеят да доставят дейтаграмата поради претоварване на мрежата, те изпращат ICMP „съобщение за гасене на източника“ до подателя на съобщението. Съобщението за отчитане на грешки добавя контрол на потока в мрежовия слой, като информира устройството източник за претоварване по пътя и забавя процеса на изпращане на данни.
  4. пренасочване: Рутер в неоптимален път пренасочва пакета към рутер с оптимален път между източника и местоназначението. Като такъв, той актуализира източника за промяната в своя маршрут.
  5. Проблем с параметрите: Устройството източник получава това съобщение, когато има липсваща стойност в заглавката на дейтаграмата. Например разликата в изчислената контролна сума на местоназначението от източника генерира това ICMP съобщение за грешка.

Съобщения за запитване

Съобщенията за запитване се появяват по двойки и предоставят специфична информация от междинните устройства към устройството източник.

  1. Съобщение за ехо-заявка и ехо-отговор: Тези съобщения помагат за разрешаване на проблеми с диагностиката на мрежата.
  2. Заявка за времеви клей и отговор: Тези заявки за времеви печат и съобщения за отговор помагат да се определи времето за двупосочно пътуване между устройствата.

Разбиране на ICMP параметрите

Данните за ICMP съобщенията са капсулирани под IP заглавката, което означава, че заглавката на ICMP дейтаграмата идва след информацията за IPv4/v6. Първата част на заглавката на ICMP пакета съдържа параметрите, които помагат на мрежовите устройства да определят съобщението за грешка или заявка.

Сред първите 32 бита, първите 8 бита определят типа на съобщението, следващите 8 бита определят кода на съобщението, а останалите битове съдържат информация, свързана с целостта на данните. Следователно трите информационни полета са: ICMP типове, ICMP код и контролна сума.

Типове ICMP

Типът определя целта на ICMP пакета. Тъй като накратко се обяснява защо устройството източник получава това съобщение. Има 0-255 типа ICMP съобщения, така че всеки тип предоставя различна информация. Някои важни типове ICMP са:

0: Заявка за ехо

3: Дестинацията недостижима

4: Угасване на източника

5: Пренасочване

8: Ехо отговор

11: Превишено време

12: Проблем с параметрите

30: Traceroute

ICMP код

ICMP кодът предоставя допълнителна информация за съобщенията. Например, ICMP тип 3 с код 0-15 указва защо дестинацията е недостижима; тоест, ако кодът е 0, това е защото мрежата не е налична. По същия начин, за тип 3 код 1, съобщението указва, че хостът е недостъпен.

Освен това, тип 8 код 0 и тип 0 код 0 представляват съобщения за ехо-заявка и ехо отговор. Следователно всеки тип съобщение с една и съща стойност на кода дава различна мрежова информация.

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

Контролната сума е механизъм за откриване на грешки, който определя целостта на данните. Стойността на контролната сума представлява битовете в съобщението за предаване. Изпращачът изчислява и включва контролната сума на данните, а получателят преизчислява стойността и сравнява го с оригиналното, за да определи каквито и да е промени в оригиналното съобщение по време на предаване.

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

Случай на използване на ICMP

Ето някои работещи примери за ICMP протокол в различни мрежово управление и административни комунални услуги.

Пинг

Ping е помощна програма от командния ред, която разчита на ICMP съобщения за ехо-заявка и ехо-отговор, за да тества наличността на мрежата и латентността между устройствата. Помощната програма просто определя наличността на целевия сървър чрез оценка на общия изпратен или получен пакет и процента на загуба на пакети. Той също така помага да се определи общият максимален размер на предавателната единица (MTU).

Използвайте пинг за да определите наличността на google.com:

Traceroute

Traceroute е друга помощна програма от командния ред, която използва съобщения за ехо-заявка и ехо-отговор с TTL променлива за картографиране на пътя между устройствата източник и местоназначението. Също така е полезно при определяне на закъсненията на отговора и гарантира точността чрез запитване на всеки хоп няколко пъти.

Как ICMP работи без порт?

От горното обяснение, ICMP е протокол без връзка, който изпраща данни независимо като дейтаграма, а заглавката му се появява след подробности за IPv4. Въпреки това можете да забележите и липсата на номер на порт, което повдига въпроса как устройствата получават ICMP данните или осъзнават каквато и да е връзка?

Отговорът е доста прост. Протоколът ICMP е проектиран да работи на мрежовия слой на OSI модела и да комуникира между рутери и хостове за споделяне на информация. Номерата на портове са част от транспортния слой, а ICMP не е нито TCP, нито UDP протокол. И накрая, ICMP типът и комбинацията от код помагат на устройствата да определят съобщението и да получат цялата информация за мрежата.

Контрол на грешки и поток с ICMP

Горните подробности за ICMP протокола показват как той осигурява контрол на потока и контрол на грешките на данните на третия слой на OSI модел. Съобщенията и параметрите на протокола в първата част на заглавката на ICMP пакета покриват всички аспекти на управлението на мрежата и проблемите с диагностиката.

Важно е да знаете, че неправилните настройки на защитната стена могат да позволят на нападателите да преминат чрез пинг мрежата на организацията и да я направят податлива на DDOS, ping на смърт и ICMP атаки за наводнение. Можеш да използваш Wireshark за улавяне на пакети от интернет и извършете подробен анализ на ICMP пакетите за по-добро разбиране.

5 начина да коригирате грешката „Липсват един или повече мрежови протоколи“ в Windows 10

Прочетете Следващото

ДялтуитДялелектронна поща

Свързани теми

  • Обяснена технология
  • Компютърни мрежи

За автора

Румайса Ниази (24 публикувани статии)

Румайса е писател на свободна практика в MUO. Тя е носила много шапки, от математик до ентусиаст по информационна сигурност, и сега работи като SOC анализатор. Нейните интереси включват четене и писане за нови технологии, Linux дистрибуции и всичко около информационната сигурност.

Още от Rumaisa Niazi

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, ревюта, безплатни електронни книги и ексклузивни оферти!

Щракнете тук, за да се абонирате