
- •1. Классификация сетей связи по типу коммутации, протяженности и топологии (Лекция 1)
- •2. Основные стандартизирующие организации в области сетей передачи данных (Лекция 2)
- •3. Сетевые модели. Инкапсуляция и декапсуляция данных (Лекция 3)
- •4. Эталонная модель osi и стек протоколов tcp/ip (Лекция 3)
- •5. Физический уровень модели osi (Лекция 4) тут затрону все уровни и буду ссылаться сюда при необходимости
- •6. Канальный уровень модели osi. Определение начала и конца сообщения (Лекция 5)
- •7. Канальный уровень модели osi. Обнаружение и исправление ошибок (Лекция 5)
- •8. Основы технологии Ethernet. Формат кадра Ethernet (Лекция 6)
- •10. Метод csma/cd (Лекция 8)
- •11. Коммутируемый Ethernet (Лекция 9)
- •12. Виртуальные локальные сети vlan (Лекция 10)
- •13. Протокол stp (Лекция 11)
- •14. Основы технологии Wi-Fi (Лекция 12)
- •15. Метод csma/ca (Лекция 13)
- •16. Формат кадра 802.11 (Лекция 14)
- •17. Услуги Wi-Fi (Лекция 15)
- •18. Сетевой уровень модели osi (Лекция 16)
- •19. IPv4 адресация (Лекция 17)
- •20. Формат заголовка iPv4 (Лекция 18)
- •20. Формат заголовка iPv4 (Лекция 18)
- •21. Маршрутизация в ip сети (Лекция 19)
- •22. Протокол dhcp (Лекция 21)
- •23. Протокол arp (Лекция 21)
- •24. Протокол icmp (Лекция 21)
- •25. Транспортный уровень модели osi (Лекция 22)
- •26. Протокол udp (Лекция 23)
- •27. Протокол tcp. Обеспечение надежности доставки данных (Лекция 24)
- •28. Формат заголовка tcp (Лекция 25)
- •29. Управление потоком в tcp (Лекция 25)
22. Протокол dhcp (Лекция 21)
DHCP работает по модели клиент-сервер. Клиент получает IP адрес, сервер назначает + следит, чтобы один и тот же IP не был выдан двум клиентам.
Рассмотрим, как происходит получение IP адреса по протоколу DHCP:
Когда клиент подключается у него нет ифнормации о той сети, в которой он находится, его первая задача узнать, где находится DHCP сервер. Для этого он посылает сообщение DHCP DISCOVER на широковещательный MAC адрес (он же не знает, на какой адрес слать).
Сервер при получении этого сообщение посылает обратно сообщение OFFER (предложение). В сообщение он включает IP адрес, который и предлагает компу. Клиент в ответ посылает сообщение REQUEST с тем же самым IP адресом.
После сервер посылает подтверждающее сообщение ACK.
После этого клиент может использовать IP адрес.
Проще всего запомнить Дору дуру:
Кроме рассмотренных сообщений есть и другие:
Зачем нужно 4 шага? Ведь и 3 вроде хватает – клиент получил IP и послал ACK с подтверждением.
Но с такой схемой могут возникнуть проблемы, первая:
DISCOVER получат оба сервера, оба сервера ответят IP адресом (причем разными), но клиент должен выбрать только ОДИН. Этот IP он включает в REQUEST. Ответит на это сообщение только тот сервер, который и выдавал этот IP. Другой сервер пометит тот адрес, что он предложил, как неиспользуемый и предложит его другому клиенту.
Вторая проблема:
Связана с возможностью ошибки при передаче IP адреса по сети:
Пусть сервер отправил OFFER с IP но при передаче по сети IP адрес исказился. Если бы было только 3 этапа, то клиент выслал бы ACK и пользовался неправильным IP, Поэтому на REQUEST сервер в таком случае ответит NACK и клиент начинает процесс получение IP заново.
DHCP использует 2 способа назначения IP адресов:
Фиксированный – знаем все MAC адреса заранее – удобно для дома
Динамический – не знаем MAC адресов заранее, например, в сети кафе.
Кроме IP нужно знать маску подсети и маршрутизатор по умолчанию (шлюз)
Нужно обращать внимание где расположен сервер DHCP в сети:
Он должен быть в той же сети, где и клиенты, которые будут получать IP (маршутизатор не передает широковещательный трафик)
В таких случаях используется DHCP Relay – конфигурация для маршрутизаторов, позволяющая передавать широковещательный трафик относящийся к протоколу DHCP
23. Протокол arp (Лекция 21)
В сети мы взаимодействуем с компами с помощью IP адресов. Но в реальности данные передаются с помощью какой-либо технологии канального уровня (Ethernet). Коммутаторы Ethernet ничего не знают об IP и используют MAC адреса. Нам необходимо средство, которое позволит по IP адресу компьютера определить его MAC адрес.
Самое простое средство – таблица соответствия:
В таблице IP адреса и соответствующие им MAC адреса.
Но в крупной сети такой подход не сработает.
Протокол ARP позволяет автоматически определить MAC адрес компьютера по его IP адресу. Работает в режиме запрос – ответ.
Компьютер, который хочет узнать MAC адрес по известному IP адресу, направляет так называемый ARP запрос (у кого такой-то IP) на широковещательный MAC адрес и его получают все компы в сети. Тот комп, который узнал свой IP, подготавливает ARP ответ – в него включается IP компа и его MAC. Отправитель получает ответ, извлекает MAC адрес и использует его для передачи по технологии канального уровня.
Формат ARP пакета:
ARP разрабатывался как протокол общего назначения с возможностью применять его не только в Ethernet и не только для IP адресов. Поэтому в начале пакета идет служебная информация, которая позволяет определить, с каким типом сетевого оборудования и с каким протоколом сетевого уровня мы работаем.
Тип сети – говорит о том, какое оборудование мы используем в сети (1 соответствует Ethernet).
Тип протокола – тут указывается протокол сетевого уровня (2048 означает IP).
Длина локального адреса – 6 байт в нашем случае (это MAC адрес)
Длина глобального адреса – 4 байта (IP)
Операция – 1 соответствует ARP запросу, 2 – ARP ответу
Локальный адрес отправителя и ГАО – MAC и IP адреса отправителя, для того чтобы получатель знал, кому отправлять ответ.
Локальный адрес получателя и ГАП – MAC и IP адреса получателя. Т.к. это ARP-ЗАПРОС, то нам неизвестен MAC получателя. В формате ARP ответа уже известен адрес получателя:
Пакеты ARP вкладываются напрямую в кадры Ethernet без IP.
Из за того, что пакеты ARP находятся ниже сетевого уровня. Поэтому мы можем узнать MAC адреса компьютеров только в одной подсети.
После того, как MAC получателя найден, он кешируется на компе отправителя в ARP таблицу – чтобы каждый раз не запрашивать MAC по протоколу.