Протоколы разрешения адресов (ARP) связаны с тем, как локальные IP-адреса разрешаются между компьютерами в сети.
В своей простейшей форме представьте, что у вас есть компьютер, такой как ноутбук, и вы хотите общаться с вашим малиновым PI, который подключен как часть вашего локального широкополосного подключения.
Обычно вы можете увидеть, доступен ли малиновый PI в сети, проверив его. Как только вы будете пингом Pasp малины или попробуйте любую другую связь с малиновым PI, вы будете устранять необходимость в адресном разрешении. Подумайте об этом как о форме рукопожатия.
ARP сравнивает маски адреса и подсети хоста и целевого компьютера. Если они совпадают, то адрес успешно разрешен в локальной сети.
Итак, как этот процесс действительно работает?
На вашем компьютере будет кеш ARP, к которому сначала обращаются, чтобы попытаться разрешить адрес.
Если кэш не содержит информацию, необходимую для разрешения адреса, тогда запрос отправляется на каждую машину в сети.
Если на компьютере в сети нет поискового IP-адреса, то он просто проигнорирует запрос, но если машина имеет совпадение, то она добавит информацию для вызывающего компьютера в свой собственный кеш ARP. Затем он отправит ответ на исходный вызывающий компьютер.
После получения подтверждения адреса целевого компьютера выполняется соединение, и поэтому может быть обработан запрос ping или другой сетевой запрос.
Фактическая информация, которую исходный компьютер ищет с целевого компьютера, является его MAC-адресом или как его иногда называют HW-адресом.
Рабочий пример с использованием команды ARP
Чтобы это стало понятным, вам нужно будет подключить к вашей сети два компьютера.
Убедитесь, что оба компьютера включены и могут подключаться к Интернету.
Теперь откройте окно терминала с помощью Linux и введите следующую команду:
агр
Отображаемая информация - это информация, хранящаяся в кэше ARP вашего компьютера.
Результаты могут просто показать вашу машину, вы вообще ничего не увидите или результаты могут включать имя другого компьютера, если вы ранее подключились к нему.
Информация, предоставленная командой arp, следующая:
- Адрес
- Тип HW
- Адрес HW
- Флаги
- маскировать
- Я лицо
Если у вас ничего не отображается, не беспокойтесь, потому что это скоро изменится. Если вы видите другой компьютер, то, скорее всего, вы увидите, что для адреса HW установлено значение «(неполное)».
Вам нужно знать имя компьютера, к которому вы подключаетесь. В моем случае я подключаюсь к моей малине PI ноль.
В терминале выполните следующую команду, заменив слова raspberrypizero именем компьютера, к которому вы подключаетесь.
ping raspberrypizero
Случилось так, что компьютер, который вы используете, просмотрел его кеш ARP и понял, что у него нет информации или недостаточно информации о машине, которую вы пытаетесь выполнить ping. Поэтому он отправил запрос по сети, запрашивая у всех других компьютеров в сети, действительно ли они тот компьютер, который вы ищете.
Каждый компьютер в сети будет смотреть на IP-адрес и запрошенную маску, и все, кроме тех, которые имеют этот IP-адрес, отбросят запрос.
Компьютер, у которого есть запрошенный IP-адрес и маска, выкрикнет: «Эй, это я!» и отправит свой HW-адрес обратно на запрашивающий компьютер. Затем он будет добавлен в кеш ARP вызывающего компьютера.
Не верьте мне? Запустите команду arp еще раз.
агр
На этот раз вы должны увидеть имя компьютера, на котором вы пинговали, и вы также увидите адрес HW.
Показывать IP-адреса вместо имени компьютера
По умолчанию команда arp покажет имя хоста элементов в кеше ARP, но вы можете заставить его отображать IP-адреса, используя следующий переключатель:
arp -n
В качестве альтернативы вы можете использовать следующий переключатель, который будет отображать вывод по-другому:
arp -a
Результатом этой команды будет следующее:
raspberrypi (172.16.15.254) при d4: ca: 6d: 0e: d6: 19 эфир на wlp2s0
На этот раз вы получите имя компьютера, IP-адрес, HW-адрес, тип HW и сеть.
Как удалить записи из кэша ARP
Кэш ARP не сохраняет свои данные очень долго, но если у вас возникли проблемы с подключением к определенному компьютеру, и вы подозреваете, что это связано с неправильным хранением адресных данных, вы можете удалить запись из кеша следующим образом.
Сначала запустите команду arp, чтобы получить HW-адрес записи, которую вы хотите удалить.
Теперь запустите следующую команду:
arp -d HWADDR
Замените HWADDR на HW-адрес для записи, которую вы хотите удалить.
Резюме
Команда arp обычно не используется вашим средним пользователем компьютера и будет иметь отношение только к большинству людей при устранении неполадок в сети.




