ICMP протокол, который использует ping, работает на 3м (сетевом) уровне модели OSI, вместе с протоколами IP,
ICMP, IGMP, ARP, RARP, OSPF, RIP, IPX и т. д. , то есть, как средство диагностики каналов, этот протокол - просто не обходим.
Утилита ping, служащая для проверки возможности доставки IP пакетов использует ICMP сообщения с типом 8 (эхо-запрос) и 0 (эхо-ответ) .
Теперь, по- русски: в ситуации, когда у вас не работает интернет (или необходимо проверить доступность удаленного компьютера) , необходимо узнать, ЧТО является тому причиной? Проблемы провайдера, вашей сетевой карты, настроек браузера или что-то еще? Вот тут и приходит на помощь ping и tracert(в linux пишется по- другому: traceroute) - системные утилиты, доступные в любой операционной системе.
Чтобы узнать, доступен ли сайт
http://ya.ru , Нажимаем кнопку Пуск => Выполнить, и, в строке набираем cmd.
У нас откроется черное окно псевдоконсоли, где мы и наберем ping ya.ru:
Из этого, мы можем сделать сразу несколько выводов:
1. DNS работает нормально, т. к. имя ya.ru было успешно преобразовано в IP адрес 213.180.204.8.
2. Задержек и потерь на сетевом уровне нет, что очень хорошо.
3. Расстояние от нас до "оптики"
МSK-IX , на которой находится ya.ru составляет около 4х миллисекунд, что тоже является очень хорошим показателем, и косвенно говорит о скорости подключения.
4. Размер MTU подобран верно, и, пакеты не фрагментируются, проходя через маршрутизатор.
Теперь, немного истории:
PING — акроним "Packet InterNet Grouper (Groper)"
Программа была написана Майком Мууссом (англ. Mike Muuss), ученым Исследовательской Лаборатории Баллистики (англ. Ballistics Research Lab) США в декабре 1983 года.
Ping использует протокол
ICMP (англ. Internet Control Message Protocol — межсетевой протокол управляющих сообщений) — сетевой протокол, входящий в стек протоколов TCP/IP. В основном
ICMP используется для передачи сообщений об ошибках и других исключительных ситуациях, возникших при передаче данных. Также на
ICMP возлагаются некоторые сервисные функции. Спецификацию протокола
ICMP можно посмотреть в регламентирующем документе
RFC972.
Впрочем, ping является инструментом флуд-атак, точнее,
DoS-атак (Denial of Service - "отказ в обслуживании"). Целью этих атак является создание таких условий, при которых легитимные (правомерные) пользователи системы не могут получить доступ к предоставляемым системой ресурсам, либо этот доступ затруднен.
Ключевой особенностью (по сравнению с остальными видами флуд-атак) является возможность осуществления атаки «бытовыми средствами» (программами и утилитами, входящими в состав домашних/офисных версий операционных систем).