Это протокол преобразования адресов (ARP — Address Resolution Protocol). Протокол ARP применяется для преобразования IP-адреса в физический адрес сетевого адаптера.

Все сетевые адаптеры имеют уникальные 48-ми разрядные адреса, записанные в шестнадцатеричной форме в виде шести пар шестнадцатеричных цифр (например, 00-a0-24-7a-01-48). Этот адрес закреплен за сетевым адаптером. С помощью команды ipconfig /all можно получить информацию об аппаратном адресе сетевого адаптера, например:

ipconfig /all Настройка протокола IP для Windows Имя компьютера  . . . . . . . . . : compeg Основной DNS-суффикс  . . . . . . : Тип узла. . . . . . . . . . . . . : неизвестный IP-маршрутизация включена . . . . : нет WINS-прокси включен . . . . . . . : нет Подключение по локальной сети - Ethernet адаптер: DNS-суффикс этого подключения . . : Описание  . . . . . . . . . . . . : Generic Marvell Yukon 88E8056 based Ethernet Controller Физический адрес. . . . . . . . . : 00-55-8D-B9-EC-7F Dhcp включен. . . . . . . . . . . : да Автонастройка включена  . . . . . : да IP-адрес  . . . . . . . . . . . . : 192.168.1.131 Маска подсети . . . . . . . . . . : 255.255.255.0 Основной шлюз . . . . . . . . . . : 192.168.1.1 DHCP-сервер . . . . . . . . . . . : 192.168.1.1 DNS-серверы . . . . . . . . . . . : 10.32.0.1 8.8.8.8 Аренда получена . . . . . . . . . : 30 июня 2010 г. 14:59:48 Аренда истекает . . . . . . . . . : 7 июля 2010 г. 14:59:48 Подключение по локальной сети 12 - Ethernet адаптер: DNS-суффикс этого подключения . . : Описание  . . . . . . . . . . . . : VirtualBox Host-Only Ethernet Adapter Физический адрес. . . . . . . . . : 08-00-27-00-E0-5F Dhcp включен. . . . . . . . . . . : нет IP-адрес  . . . . . . . . . . . . : 192.168.56.1 Маска подсети . . . . . . . . . . : 255.255.255.0 Основной шлюз . . . . . . . . . . :

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

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

  1. Протокол ARP проверяет содержимое локального кэша ARP на предмет наличия IP-адреса компьютера назначения. Если соответствие найдено, аппаратный адрес сетевого интерфейса назначения добавляется в заголовок отправляемого кадра.
  2. Если соответствие не найдено, в локальную сеть отправляется широковещательный запрос ARP (при этом на основе IP-адреса и маски подсети известно, что пункт назначения расположен в локальной сети). Запрос ARP содержит IP-адрес и аппаратный адрес компьютера-отправителя. Запрос отправляется по адресу 255.255.255.255 (на все адреса, однако маршрутизатор не пропустит такой пакет данных за пределы локальной подсети).
  3. Принимающий компьютер, который получит данное сообщение, отправит в ответ ARP-пакет, содержащий собственный физический адрес сетевого адаптера и IP-адрес.
  4. Компьютер-отправитель, получающий на свой широковещательный запрос ответный ARP-пакет, обновляет кэш ARP и добавляет в заголовок кадра полученный аппаратный адрес. После создания кадра последний отправляется соответствующей системе.

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

Для получения информации о содержимом кэша ARP на локальном компьютере введите команду arp – a. Будет показан список IP-адресов и соответствующие им аппаратные адреса сетевых интерфейсов.

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

Обратите внимание, что вместе с адресами указывается слово dynamic, поскольку записи добавляются по мере необходимости и являются временными, то есть после перезагрузке они будут удалены. Однако, записи исчезают еще быстрее! Запись, не используемая в течении двух минут, удаляется из кэша ARP. Если задействовать запись в течение последних двух минут, она не будет удалена еще в течение десяти минут. И наконец, если в промежуток времени, равный этим десяти минутам, запись применяется повторно, она еще на десять минут остается в кэше.

Для некоторых компьютеров можно добавить статические записи (для избавления от необходимости постоянно отправлять широковещательные запросы ARP). Воспользуйтесь следующим синтаксисом команды arp:

arp - s <IP-адрес> <аппаратный адрес>

Например:

arp - s 200.200.200.5 00-a0-24-7a-01-48