МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
ЛАБОРАТОРНА РОБОТА № 2
з курсу “ Комп’ютеризовані системи та мережі передавання даних ”
АНАЛІЗ ПРОТОКОЛІВ ЗА ДОПОМОГОЮ АНАЛІЗАТОРА ETHEREAL
Львів – 2012
Мета роботи – ознайомлення з роботою аналізатора протоколів Ethereal для мережі Ethernet під керівництвом ОС Windows 2000, та набуття практичних навичок спостереження, аналізу трафіка та вирішення мережевих проблем.
Теоретичні відомості
Аналізатори протоколів це програмні або апаратні системи, які виконують моніторинг та аналіз трафіка. Як правило, ці системи захоплюють і декодують пакети широкого спектру протоколів. Вони виконують повне декодування, тобто в зручній для фахівця формі показують вкладеність пакетів протоколів різних рівнів з розшифровкою вмісту окремих полів кожного пакета.
Аналізатор мережевих протоколів використовується для:
локалізації проблем при роботі мережі;
виявлення й ідентифікації несанкціонованого програмного забезпечення;
одержання такої інформації, як базові моделі трафіка (baseline traffic patterns);
ідентифікації невикористовуваних протоколів для видалення їх з мережі;
генерації трафіка з метою перевірки системи захисту;
виявлення вторгнень Intrusion Detection System (IDS);
вивчення роботи мережі.
Програмні аналізатори протоколів це - програмне забезпечення, що складається з ядра, яке підтримує роботу адаптера, і програмного забезпечення, що декодує протокол канального рівня, з яким працює мережний адаптер, а також найпоширеніші протоколи верхніх рівнів: ІP, TCP, FTP, Telnet, HTTP, ІPX, NCP, DECnet, NetBEUі й т.д. До складу деяких програмних аналізаторів може входити експертна система, що дозволяє користувачеві отримати рекомендації про те, які дії можна розпочати в даній ситуації, що можуть означати ті або інші несправності та як їх усунути.
Більшість аналізаторів мережевих протоколів працюють за схемою, представленої на рис.1.
Рис.1. Принцип роботи аналізаторів мережевих протоколів
Аналізатор працює на станції хоста. Коли аналізатор запускається в безладному режимі (promiscuous mode), драйвер мережного адаптера, NIC, перехоплює весь трафік, що проходить через нього. Аналізатор протоколів передає перехоплений трафік декодеру пакетів аналізатора (packet-decoder engine), що ідентифікує й розщеплює пакети по відповідних рівнях ієрархії. Програмне забезпечення протокольного аналізатора вивчає пакети й відображає інформацію про них на екрані хоста у вікні аналізатора.
Аналіз декодованих пакетів - основне завдання будь-якого аналізатора мережевих протоколів. Аналізатор організовує перехоплені пакети по рівнях і протоколам. Кращі аналізатори пакетів можуть розпізнати протокол по його найбільш характерному рівні - верхньому - і відобразити перехоплену інформацію. Цей тип інформації звичайно відображається в другій області вікна аналізатора. Наприклад, будь-який аналізатор протоколів може розпізнавати трафік TCP.
ЗАВДАННЯ
Завдання 1. Ознайомитись з роботою аналізатора Ethereal.
Завдання 2. Вивчити основні властивості протоколів UDP, TCP, ICMP та ARP.
Виконати в лабораторії
Завдання 1. Провести захоплення і аналіз пакетів, що передаються через мережу при авторизації комп'ютера в мережі Microsoft Windows 2000.
Завдання 2. Провести ехо-запит певного ПК і зафіксувати трафік, що виникає при цьому в мережі. Провести його аналіз.
Завдання 3. Скопіювати з віддаленого ПК (сервера) на свій ПК файл. Зафіксувати і проаналізувати потім трафік в мережі в цей час.
Завдання 4. Отримати доступ за допомогою proxy-сервера до Інтернету і зайти на інтернет-сторінку за допомогою браузера. Зафіксувати трафік в мережі проаналізувати його.
UDP
/
/
Формат UDP-дейтаграм
TCP
/
/
Формат опцій для TCP-сегментів
Значення біт поля прапори протоколу ТСР.
Позначення біт
Значення біта, якщо він дорівнює 1
URG
Прапор важливої інформації, поле Покажчик важливої інформації має сенс, якщо urg=1.
ACK
Номер октету, що повинен прийти наступним, правильний.
PSH
Цей сегмент вимагає виконання операції push. Одержувач повинен передати ці дані прикладній програмі якнайшвидше.
RST
Переривання зв'язку.
SYN
Прапор для синхронізації номерів сегментів, використовується при встановленні зв'язку.
FIN
Відправник закінчив посилку байтів.
Припустимо, що хосту А необхідно створити TCP-з’єднання з хостом В. Тоді А посилає на В наступне повідомлення: SYN, ISSa.
Це означає, що в переданому А повідомленні встановлений біт SYN. (Synchronize Sequence Number), а в поле Sequence Number установлено початкове 32-бітне значення ISSa (Initial Sequence Number).
Хост В відповідає: SYN, АСК, ISSb, ACK(ISSa+l).
У відповідь на отриманий від А запит В посилає повідомлення, у якому встановлені біт SYN і біт АСК; у поле Sequence Number хостом В задається своє початкове значення лічильника - ISSb; поле Acknowledgment Number містить значення ISSa, отримане в першому пакеті від хосту А і збільшене на одиницю.
Хост А, завершуючи рукостискання (handshake), посилає: АСК, ISSa+1, ACK(ISSb+l).
У цьому пакеті встановлений біт АСК; поле Sequence Number містить значення ISSa+1; поле Acknowledgment Number містить значення ISSb+1. Посилкою цього пакета на хост В закінчується триступінчастий handshake, і TCP-з'єднання між хостами А і В вважається встановленим.
Тепер хост А може посилати пакети з даними на хост В по тільки що створеному віртуальному ТСР-каналу; передається наступна інформація: АСК, ISSa+1, ACK(ISSb+l); DATA.
ICMP
/
/ Формат ICMP сегментаСхема вкладення ICMP-пакетів в Ethernet-кадр
/
Формат ехо-запиту й відгуку ICMP
ARP
/
/
Формат пакета ARP
ARP-таблиця будуються відповідно до документа RFC-1213 і для кожної IP-адреси містить чотири коди:
ifindex
Фізичний порт (інтерфейс), що відповідає даній адресі;
Фізична адреса
MAC-адреса, наприклад Ethernet-адреса;
IP-адреса
IP-адреса, що відповідає фізичній адресі;
тип адресної відповідності
це поле може приймати 4 значення: 1 - варіант не стандартний і не підходить до жодного з описаних нижче типів; 2 - даний запис уже не відповідає дійсності; 3 - постійна прив'язка; 4 - динамічна прив'язка;
Висновок:
На лабораторній роботі було розглянуто та досліджено протокол TCP,UDP,ICMP та ARP а також можливості і функціональність аналізатора протоколів Ethereal.
Я навчився “читати “ ці протоколи в операційній системі Windows і освоїв їх основні можливості.
За допомогою утиліти Ethereal я навчився переглядати основні параметри мережі та мереженого обладнання.
Завдяки аналізатору протоколу Ethereal я освоїв базові поняття роботи з протоколів TCP,UDP,ICMP та ARP .