Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Основы работы с анализатором протоколов Wireshark

Поиск

Программа Wireshark предназначена для анализа пакетов, проходящих в сети Ethernet. Запустить программу можно выбрав пункт меню "Интернет", далее пункт "Wireshark (root)". Одной из наиболее интересных возможностей программы EtherPeek является захват проходящих по сети пакетов, их декодирование и предоставление пользователю как самих пакетов, так и содержащейся в них информации в наглядном и удобном виде.

При запуске главное окно программы выглядит следующим образом. В верхней части окна расположено меню, позволяющее вызывать команды в соответствии с выполняемыми задачами. В частности пункт меню "File" позволяет загружать и сохранять файлы, содержащие данные о выбранных пакетах.

 
 

 
 

Прежде чем начинать новый сеанс захвата пакетов следует выбрать пункт "Capture", далее пункт меню "Interfaces"

 

 

в результате чего появится окно "Wireshark Capture Interfaces", отображающее доступные сетевые интерфейсы, с которых может осуществляться захват пакетов.

 

Интерфейс eth0 представляет подключение сетевой платы к локальной сети и, как правило, представляет наибольший интерес.

Чтобы начать сеанс захвата пакетов по этому интерфейсу, нужно щелкнуть на кнопке "Start" для выбранного интерфейса.

В результате этого в главном окне программы появится список захваченных пакетов, который постоянно пополняется сетевыми пакетами, проходящими по сети. Для прекращения захвата пакетов нужно выбрать пункты меню "Capture" и "Stop".


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

Выделяя какую-либо строку таблицы мы можем более детально узнать что из себя представляет данный пакет с помощью нижних окон.

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

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

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


Для задания фильтра используются пункты меню "Analyze" и "Display Filters...".

 

В результате появляется окно "Wireshark Display Filter", позволяющее задать и применить наиболее подходящий фильтр.

 

В центре этого окна находится список "Filter" предустановленных фильтров. Выбирая какой-либо из этих фильтров, в поле "Filter name" видим название выбранного фильтра, а в поле "Filter string" строку, задающую этот фильтр. Например, на представленном рисунке показан фильтр, позволяющий выбрать лишь те пакеты, IP-адреса которых равны 192.168.0.1. Аналогичным образом можно создать и собственные фильтры. При создании сложных фильтров помощь в составлении соответствующих выражений может оказать построитель выражений "Wireshark Filter Expression", который можно увидеть, нажав кнопку "Expression...".

 

 


 

Чтобы с помощью заданного фильтра отфильтровать пакеты достаточно нажать кнопку "Применить"

Протокол ARP

Сетевой протоколARP (англ. Address Resolution Protocol — протокол разрешения адресов предназначен для преобразования IP-адресов (адресов сетевого уровня) в MAC-адреса (адреса канального уровня) в сетях TCP/IP.

Каждый узел сети имеет как минимум два адреса, физический адрес и логический адрес. В сети Ethernet для идентификации источника и получателя информации используются оба адреса. Информация, пересылаемая от одного компьютера другому по сети, содержит в себе физический адрес отправителя, IP-адрес отправителя, физический адрес получателя и IP-адрес получателя.

ARP-протокол обеспечивает связь между этими двумя адресами. Существует четыре типа ARP-сообщений:

ARP-запрос (ARP request),

ARP-ответ (ARP reply),

RARP-запрос (RARP-request) и

RARP-ответ (RARP-reply).

Локальный хост при помощи ARP-запроса запрашивает физический адрес хоста-получателя. Ответ (физический адрес хоста-получателя) приходит в виде ARP-ответа. Хост-получатель, вместе с ответом, шлет также RARP-запрос, адресованный отправителю, для того, чтобы проверить его IP адрес. После проверки IP адреса отправителя, начинается передача пакетов данных.

Перед тем, как создать подключение к какому-либо устройству в сети, IP-протокол проверяет свой ARP-кеш, чтобы выяснить, не зарегистрирована ли в нём уже нужная для подключения информация о хосте-получателе. Если такой записи в ARP-кеше нет, то выполняется широковещательный ARP-запрос. Этот запрос для устройств в сети имеет следующий смысл: «Кто-нибудь знает физический адрес устройства, обладающего следующим IP-адресом?» Когда получатель примет этот пакет, то должен будет ответить: «Да, это мой IP-адрес. Мой физический адрес следующий:...» После этого отправитель обновит свой ARP-кеш, и будет способен передать информацию получателю.

RARP (англ. Reverse Address Resolution Protocol – обратный протокол преобразования адресов) – выполняет обратное отображение адресов, то есть преобразует аппаратный адрес в IP-адрес.

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

RARP позволяет разделять IP-адреса между не часто используемыми хост-узлами. После использования каким либо узлом IP-адреса он может быть освобождён и выдан другому узлу. RARP является дополнением к ARP, и описан в RFC 903.

Записи в ARP-кеше могут быть статическими и динамическими. Пример, данный выше, описывает динамическую запись кеша. Хост-отправитель автоматически послал запрос получателю, не уведомляя при этом пользователя. Записи в ARP-кеш можно добавлять вручную, создавая статические (static) записи кеша. Это можно сделать при помощи команды:

arp -s <IP адрес> <MAC адрес>

Также можно удалять записи из ARP-кеша. Это осуществляется путем следующего вызова:

arp -d <IP адрес>

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

 

Лабораторная работа №6.

Цель: научиться анализировать сетевой трафик на примере работы протокола ARP.

 

Порядок выполнения работы

1. Просмотреть содержимое ARP таблиц хоста с использованием утилиты arp.

2. Очистить ARP таблицу

3. Пропинговать с хоста соседний доступный хост в локальной сети.

4. Проанализировать трафик сетевого обмена с помощью анализатора сетевого трафика Wireshark.

5. На примере любого заваченного IP-пакета проанализировать структуры протоколов Ethernet и IP. Отметить поля заголовков в протоколах Ethernet и IP и описать их.

 

Пример выполнения лабораторной работы.

1. Для просмотра ARP-кеша использовать утилиту arp с параметром «-a». Например:

С:\>arp -a

Interface: 192.168.1.2 --- 0x10003

Internet Address Physical Address Type

192.168.1.1 00-15-e9-b6-67-4f dynamic

192.168.1.6 00-01-4e-00-21-11 dynamic

Из данного результата команды arp видно, что в кеше на данный момент находится 2 записи и видны соответственно ip-адреса машин и MAC-адреса их сетевых адаптеров.

2. Удалить записи из ARP-кеша. Это осуществляется путем следующего вызова:

arp -d <IP адрес>

Для успешного эксперимента предварительно очистим arp-кеш командой

arp -d 192.168.1.5

3. Рассмотрим пример работы протокола ARP при обращении например к машине в локальной сети с IP адресом 192.168.1.5, выполнив запрос с машины с IP адресом 192.168.1.2.

4. Запускаем анализатор сети Wireshark. Для фильтрации ARP/RARP трафика построим фильтр захвата. В нашем случае это будет простой фильтр

arp or rarp

Далее запустим захват трафика командой «Start» и выполним обращение к заданной машине, «пропинговав» ее:

С:\>ping 192.168.1.5

Pinging 192.168.1.5 with 32 bytes of data:

Reply from 192.168.1.5: bytes=32 time<1ms TTL=64

Reply from 192.168.1.5: bytes=32 time<1ms TTL=64

Reply from 192.168.1.5: bytes=32 time<1ms TTL=64

Reply from 192.168.1.5: bytes=32 time<1ms TTL=64

Ping statistics for 192.168.1.5:

Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

Minimum = 0ms, Maximum = 0ms, Average = 0ms

Так как на момент начала работы утилиты ping в arp-кеше не было информации о MAC-адресе соответствующего узла, то первоначально система должна выполнить определение это самого MAC-адреса, сгенерировав ARP-запрос и отослав его в сеть широковещательным пакетом. После чего она будет ожидать ответа от заданного узла.

После остановки захвата трафика получен результат схожий с тем, что отображен на рис. 7.2. В нашем случае мы видим 2 захваченных пакета: ARP-запрос и ARP-ответ.

 

5. Проанализируем полученные пакеты. Сначала рассмотрим ARP-запрос (пакет №1). Выделив пакет курсором, мы получаем его раскладку по протоколам (Ethernet+ARP) в среднем окне. Wireshark очень наглядно «раскладывает» заголовок протокола по полям.

В структуре пакетов, используемых в запросах и ответах ARP выделяют следующие поля, определяющие работу протокола:

Hardware type (HTYPE) – Тип протокола передачи данных (Ethernet, Token Ring и т.д.). Каждый из них имеет свой номер, который и хранится в этом поле. Так, например, Ethernet имеет номер 0x0001.

Protocol type (PTYPE) – В этом поле указывается код сетевого протокола. Например, для IPv4 будет записано 0x0800.

Hardware length (HLEN) – Длина физического адреса в байтах. Адреса Ethernet имеют длину 6 байт.

Protocol length (PLEN) – Длина логического адреса в байтах. IPv4 адреса имеют длину 4 байта.

Opcode – Код операции отправителя: 1 - при запросе, 2 при ответе.

Sender hardware address (SHA) – Физический адрес отправителя.

Sender protocol address (SPA) – Логический адрес отправителя.

Target hardware address (THA) – Физический адрес получателя. Поле пусто при запросе.

Target protocol address (TPA) – Логический адрес получателя.

Мы можем видеть, что в пакете указаны MAC- и IP-адреса отправителя («Sender MAC address» и «Sender IP address» соответственно). Это параметры машины, с которой выполняется запрос. В данном случае запрос направлен на получения («Opcode: request» – запрос) MAC-адреса машины, у которой IP-адрес («Protocol type: IP») 192.168.1.5 («Target IP address»). При этом поле «Target MAC address» обнулено. Так как получатель ARP-запроса на момент запроса не известен, Ethernet-пакет отправляется широковещательным запросом всем машинам в данном локальном сегменте, о чем сигнализирует MAC адрес Ethernet-пакета «ff:ff:ff:ff:ff:ff».

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

Все работающие машины в сети получают пакет с ARP-запросом, анализируют его, а ответ отсылает только та машина, чей IP-адрес соответствует IP-адресу в запросе. Таким образом, второй полученный пакет является ARP-ответом (см. рис. 7.5). Это следует из параметра поля «Opcode: reply». Обратите внимание, что данный пакет был отправлен именно той машиной, чей MAC-адрес нас и интересовал («Sender IP address: 192.168.1.5»). При этом поле «Sender MAC address» заполнено значением «00:01:4E:00:21:11».

 
 

 


Примечание. Обратите внимание на поле «Info» в списке захваченных пакетов. анализатор существенно упрощает анализ сетевого трафика, подсказывая назначение пакетов.

Теперь мы можем на хосте повторно просмотреть ARP-кеш и сверить данные в нем с данными, которые мы узнали из анализа пакетов ARP-запрос/ответа:

С:\>arp -a

Interface: 192.168.1.2 --- 0x10003

Internet Address Physical Address Type

192.168.1.5 00-01-4e-00-21-11 dynamic

 

7.4.3 Контрольные вопросы

1. Каковы основные цели мониторинга сетевого трафика?

2. Чем отличается мониторинг трафика от фильтрации?

3. Каково назначении класса программ-анализаторов?

4. Какие основные функции выполняют анализаторы?

5. Зачем используются фильтры отображения и фильтры захвата анализатора Wireshark? В чем их отличие?

6. Какие базовые функции статистической обработки захваченных пакетов имеет анализатор Wireshark?

7. Какие задачи рассчитан решать протокол ARP?

 

 

7.5 Лабораторные работы №7-8(4 часа):



Поделиться:


Последнее изменение этой страницы: 2016-04-26; просмотров: 2618; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.219.18.238 (0.01 с.)