Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка_WireShark.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.7 Mб
Скачать

Протокол dhcp

В цій лабораторній роботі ми зробимо огляд DHCP протоколу. Нагадаємо, що DHCP широко використовується в корпоративних, університетських та домашніх провідних та безпровідних локальних мережах для динамічного призначення IP адрес хостам (а також для налаштування інших мережних параметрів).

Дана робота невелика за обсягом, тому що ми ставимо за мету лише спостереження за DHCP пакетами, що перехоплені даним хостом. Якщо ж ви маєте адміністративний доступ до вашого DHCP серверу, ви, можливо, захочете переробити цю роботу після внесення деяких змін у налаштування серверу (наприклад, зміни часу володіння IP адресою). З огляду на те, що багато Linux/Unix машин (особливо тих, що обслуговують багато користувачів) мають статичні IP адреси, і що налащтування DHCP на таких машинах, зазвичай, потребує привілеїв суперкористувача, ми зробимо огляд роботи DHCP лише на платформі Windows.

Експеримент з dhcp

Для того, щоб дослідити DHCP пакети в дії, ми продемонструємо декілька команд перехоплення DHCP повідомлень.

Виконайте наступне:

  1. Відкрийте командний рядок Windows. Як показано на Мал.1, введіть команду “ipconfig /release”. Виконуючий файл для ipconfig знаходиться в каталозі C:\windows\system32. Ця команда скидає вашу поточну IP адресу, і тепер вона дорівнює 0.0.0.0.

  2. Запустіть програму Wireshark та почніть перехоплення пакетів.

  3. Поверніться до командного рядка Windows і введіть команду “ipconfig /renew”. Ця команда наказує вашому хосту отримати нові мережні налаштування з новою IP адресою. На мал.1 хост отримує IP адресу 192.168.1.108.

  4. Дочекайтесь, доки команда “ipconfig /renew” не закінчить свою роботу. Після цього введіть повторно цю ж команду: “ipconfig /renew”.

  5. Коли вдруге закінчить роботу команда “ipconfig /renew”, введіть команду “ipconfig/release” для скидання призначеної вам IP адреси.

  6. Нарешті, введіть ще раз команду “ipconfig /renew” для призначення вам нової IP адреси.

  7. Зупиніть перехоплення пакетів в Wireshark.

Мал.1. Дані командного рядку Windows, що показуют порядок роботи команд ipconfig, які ви повинні ввести.

Тепер подивимось на результат роботи програми Wireshark. Для перегляду лише DHCP пакетів введіть в поле фільтру “bootp” (DHCP походить від давнішого протоколу BOOTP. BOOTP та DHCP використовують ті самі номера портів, 67 та 68. Щоб переглянути DHCP пакети в поточній версії Wireshark, ви маєте вводити “bootp”, а не “dhcp” в поле фільтру). Як видно з Мал.2, перша ipconfig команда “ipconfig /renew” спричиняє генерацію 4-х пакетів: DHCP Discover packet, DHCP Offer packet, DHCP Request packet, та DHCP ACK packet.

Мал.2. - Вікно програми Wireshark з першим DHCP пакетом - DHCP Discover packet – у розгорнутому вигляді.

Результат роботи:

Результатом роботи має бути моментальний знімок екрану (screen shot) командного рядка Windows (подібного до Мал.1). При можливості, даючи відповіді на нижче наведені питання, покажіть роздруківку перехоплених пакетів. Для роздруківки пакетів, натисніть File->Print в головному меню, виберіть пункти Selected packet only та Packet summary line, а також виберіть ту мінімальну кількість інформації для друку, що потрібна для відповідей на питання.

Дайте відповіді на наступні питання:

  1. DHCP повідомлення відправляються через UDP чи TCP пакети?

  2. Намалюйте часову діаграму, що ілюструє послідовність перших чотирьох Discover/Offer/Request/ACK DHCP пакетів обміну між сервером та хостом. Для кожного пакету визначте номери портів джерела та призначення. Ці номери портів збігаються з номерами у деяких прикладах?

  3. Що таке адреса канального рівня (наприклад, Ethernet чи МАС адреса) вашого комп’ютера?

  4. Які значення полів у повідомленні DHCP discover відрізняють його від DHCP request повідомлення?

  5. Яке значення Transaction-ID в кожному з перших чотирьох Discover/Offer/Request/ACK DHCP пакетів? Яке значення Transaction-ID в другому наборі (Request/ACK) DHCP повідомлень? Яке призначення має Transaction-ID поле?

  6. Комп’ютер використовує DHCP пакет для отримання різних мережних налаштувань, зокрема отримання IP адреси. Але ця IP адреса не затверджена до закінчення обміну останнім четвертим повідомленням. Якщо ж це дійсно так, то яке значення IP адреси використовується для обміну початковими 4-ма повідомленнями? Таким чином, для кожного з перших 4-х DHCP повідомлень (Discover/Offer/Request/ACK DHCP), визначте IP адресу джерела та адресу призначення у IP пакеті.

  7. Яка IP адреса вашого DHCP серверу?

  8. Яка IP адреса пропонується DHCP сервером для вашого комп’ютера у DHCP Offer повідомленні? Вкажіть, в якому DHCP повідомленні міститься запропонована IP адреса.

  9. В прикладі, на миттєвому знімку екрану немає ретранслятора між хостом та DHCP сервером. Які поля свідчать про відсутність ретранслятора? Чи є ретранслятор у вашому прикладі? Якщо так, то яка його IP адреса?

  10. Поясніть призначення маски мережі в DHCP Offer пакеті.

  11. В прикладі, на миттєвому знімку екрану хост робить запит на прийняття запропонованої йому адреси в DHCP Request повідомлені. Що відбувається у вашому власному експерименті?

  12. Поясніть призначення поля lease time (час оренди). Наскільки довгий цей час у вашому експерименті?

  13. Яке призначення DHCP release повідомлення? Чи DHCP сервер відправляє підтвердження отримання DHCP release повідомлення від клієнта? Що станеться, якщо DHCP release повідомлення буде втрачене?

  14. Очистіть фільтр bootp з вікна Wireshark. Чи були якісь ARP пакети передані чи прийняті під час обміну DHCP пакетами? Якщо так, поясніть призначення ARP пакетів.

55