Прошел экстерном экзамен по курсу перепордготовки "Информационная безопасность". Хочу получить диплом, но не вижу где оплатить? Ну и соответственно , как с получением бумажного документа? |
Процедуры Интернет (Telnet/ssh, FTP/SFTP, ping, traceroute)
Ping и Traceroute
При работе в Интернет время от времени возникают ситуации, когда нужно определить, работоспособен ли тот или иной канал или узел, а в случае работы с динамическими протоколами маршрутизации — выяснить, по какому из каналов вы в данный момент работаете. Применяется эта процедура и для оценки вероятности потери пакетов в заданных сегментах сети или каналах. Для решения этих задач удобна программа Ping.
Ping — это процедура, которая базируется на IP- и ICMP-протоколах пересылки дейтограмм и служит для трассировки маршрутов и проверки работоспособности каналов и узлов.
Для решения поставленной задачи PING использует отклики протокола ICMP (смотри также статьи о протоколах IP и ICMP). В протоколе IP имеется опция записи маршрута ( RR — Record Route). В отличие от традиционной команды traceroute, опция RR позволяет записать как путь от инициатора до адресата, так и обратный маршрут. К сожалению, разработчики протокола предусмотрели для записи маршрута только 37 байт, сюда может поместиться максимум девять IP-адресов (определяется предельным размером поля опций ). Применяется PING и при отладке сетевых продуктов. При выполнении этой команды ЭВМ сообщит вам Internet-адреса всех промежуточных узлов, их имена и время распространения отклика от указанного вами узла. Следует иметь в виду, что трассировка осуществляется непосредственно с помощью IP-протокола (опция записи адресов промежуточных узлов). Ниже приведен пример использования команды Ping.
Команда трассировки маршрута ИТЭФ — сервер научно-исследовательской станции США Мак-Мурдо в Антарктиде (запись в файл route.txt, команда выполнялась в 1994 году):
ping -q mcmurdo-gw.mcmurdo.gov > route.txt
Содержимое файла route.txt будет иметь вид:
Фантастика, мы пересекли туда и обратно Европу, два океана и США с востока на запад, побывали в Антарктиде — и все это менее чем за полторы секунды.
Ping позволяет не только проверить работоспособность канала, но измерить ряд его характеристик, включая надежность.
Наибольшее число модификаций имеет BSD-версия ping. Если на вашей ЭВМ нет этой удобной программы, можно воспользоваться общедоступной версией по адресу:
ftp://ftp.uu.net /unix/bsd-sources/sbin/ping.
Сходную информацию позволяет получить и программа traceroute:
traceroute -n cernvm.cern.ch traceroute to crnvma.cern.ch (128.141.2.4) 30 hops max, 40 byte packets 1 193.124.224.50 3 ms 2 ms 2 ms 2 194.85.112.130 3 ms 3 ms 3 ms 3 194.67.80.5 4 ms 3 ms 3 ms 4 193.124.137.6 534 ms 534 ms 534 ms 5 188.1.56.5 545 ms 545 ms 546 ms 6 193.172.4.12 558 ms (ttl=59!) 549 ms (ttl=59!) 548 ms (ttl=59!) 7 193.172.4.30 580 ms (ttl=58!) 581 ms (ttl=58!) 581 ms (ttl=58!) 8 193.172.24.10 586 ms 585 ms 597 ms 9 192.65.185.1 593 ms 587 ms 598 ms 10 128.141.2.4 628 ms 602 ms 619 ms
При написании программ, использующих протокол ICMP, полезно воспользоваться отладочной опцией PING, которая позволяет получить на экране шестнадцатеричный образ посылаемого и получаемого пакетов:
ping -d# 300 ns.itep.ru (версия PCTCP, запрос отклика серверу имен; число байт, подлежащих выдаче, равно 300) Dump of outgoing packet Version = 4 IP header length = 5 Precedence = Routine Type of Service = Normal Total length = 284 Protocol = 1 TTL = 64 45 00 01 1C 00 02 00 00 40 01 71 29 C0 94 A6 81 C1 7C E0 23 IP-заголовок 08 00 8D BD E9 03 00 01 ... ICMP-заголовок host responding, time = 60 ms
Выдачи ради экономии места сильно сокращены. Тексты пакетов начинаются с кодов IP-версии (=4) и длины заголовка (=5), далее следует байт TOS=0, два байта длины пакета (01 1С) и т.д. в соответствии с требованиями IP-протокола.
ping -d 300 ns.itep.ru (команда получения текста пакета-отклика на запрос) host responding, time = 25 ms Dump of incoming packet Version = 4 IP header length = 5 Precedence = Routine Type of service = Normal Total length = 284 Protocol = 1 TTL = 254 45 00 01 1C EE 29 00 00 FE 01 C5 00 C1 7C E0 23 C0 94 A6 81 00 00 93 BD EB 03 00 01 ..............
В принципе, процедуру Ping и Traceroute можно реализовать и с привлечением протоколов UDP и TCP. Рассмотрим следующую модель реализации Traceroute.
Посылаем последовательно по адресу IP(URL) IP-пакеты со значением TTL=1, 2,... и т.д. Если до адресата больше одного шага, соответствующий маршрутизатор, размещенный по пути следования к адресату, уничтожит посланный пакет и вернет ICMP-сообщение: Time Exceeded (тип ICMP-сообщения=11, TTL стало =0), указав при этом IP-адрес узла, где это произошло. Послав запрос типа get_name_by_address для присланного IP, можно получить имя узла, откуда пришло данное уведомление. Отсутствие сообщения Time Exceeded (например, после трех попыток) будет говорить о достижении адресата. Еще лучше для контроля наличия отклика от узла-адресата использовать реализацию ping на основе протокола UDP или ТСР (например, из библиотеки PERL), так как в этом случае можно задать бессмысленный номер порта и адресат откликнется ICMP-сообщением "порт недоступен" (с предъявлением своего IP-адреса). Это будет означать, что адресат достигнут. В результате такой последовательности посылок будет получена исчерпывающая информация о пути до указанной цели.
Для данной методики реализации traceroute не существенно, какой протокол применять — UDP, ICMP или TCP.