Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Сообщество системных администраторов Litl-Admin.ru Уроки WireShark: Обзор протокола ARP


Ссылка на материал

Пришла пора нам разобраться, как выглядит ARP-трафик под микроскопом, имя которому Wireshark. Будучи пакетным сниффером и фильтром, Шарк предоставляет огромные возможности для изучения сетевых протоколов и всего, что происходит «по ту сторону». Понемногу мы и ликвидируем белые пятна и начинаем лучше разбираться в сетях.

Несмотря на то, что Wireshark можно использовать в различных целях, не всегда благочестивых, мы будем закрывать глаза на «тёмную» сторону, используя этот инструмент только в образовательных целях.

Итак, ARP-протокол. Иначе говоря Adress Resolution Protocol — протокол разрешения адреса.

Немного расскажу о том, для чего предназначен этот протокол.

Передавать фреймы в сети Ethernet можно используя аппаратные (далее MAC) адреса. То есть это не сетевой (IP) адрес вида 192.168.0.1, а нечто более сложное, вида 00:00:00:c1:d9:26.

Существует так же соглашение, по которому первые три байта отводятся под производителя сетевого оборудования, а следующие три байта — под уникальный идентификатор устройства. Такой адрес имеют все сетевые устройства, разработанные для сети Ethernet.

Кстати, загадка. Что имеет порт RJ45, но не имеет MAC-адреса?

ответ: обжимка (патч-панель)

Принцип работы такой. Компьютер, которому требуется передать данные в сети имеет IP адрес (свой, собственный), а так же IP адрес получателя. Но передавать данные можно только имея MAC-адреса. Поэтому компьютер, инициирующий соединение посылает широковещательный ARP запрос вида:

ARP

ARP

Who has <IP-addr>? Tell <Self IP-addr>

где спрашивает, «Эй, парни! У кого IP такой-то? Сообщите мне», и этот пакет посылается на ff:ff:ff:ff:ff:ff (широковещательно), то есть всем узлам в сети. Каждый компьютер в сети получает этот пакет и смотрит, принадлежит ли указанный IP какому-либо из его интерфейсов. Если принадлежит, то на MAC адрес отправителя (он известен из заголовка пакета), отправляется пакет с ответом (reply).

Компьютер, получивший ответ, для передачи на целевой IP будет посылать данные на MAC адрес отправителя пакета ответа.

ARP-ответ

ARP-ответ

Очень распространена, кстати, атака вида MITM (Man in the Middle), когда компьютер злоумышленника отвечает вместо целевого компьютера (раньше его) и обмен между двумя узлами происходит через посредника, прослушивающего весь трафик. Реализацию такой атаки я демонстрировал в ранней статье ARP-Spoofing.

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

В этом случае, система при запуске посылает ARP запрос со своим же IP адресом, но не отвечает на него. Если кто-то в сети ответит на этот ARP (не считая глюков), то считается, что такой IP адрес в сети уже используется и время подумать об APIPA.



В избранное