arp - управление системным кэшем ARP
arp [-vn] [-H тип] [-i интерфейс] [-a] [имя_узла]arp [-v] [-i интерфейс] -d имя_узла [pub]
arp [-v] [-H тип] [-i интерфейс] -s имя_узла аппаратный_адрес [temp]
arp [-v] [-H тип] [-i интерфейс] -s имя_узла аппаратный_адрес [netmask маска] pub
arp [-v] [-H тип] [-i интерфейс] -Ds имя_узла имя_интерфейса [netmask маска] pub
arp [-vnD] [-H тип] [-i интерфейс] -f [имя_файла]
arp управляет или выводит кэш сетевого окружения IPv4 ядра системы. С помощью arp можно добавлять записи в таблицу, удалять их или просматривать текущее содержимое.ARP означает Address Resolution Protocol - протокол решения адресов, который используется для поиска MAC-адреса (Media Access Control - управление доступом к среде) в сетевом окружении для указанного IPv4-адреса.
arp без указателя режима выводит текущее содержимое таблицы. Можно ограничить количество выводимых записей, указав тип аппаратного адреса, имя интерфейса или адрес узла.arp -d адрес удалит запись из таблицы ARP. Для этого нужно быть пользователем root или обладать правом netadmin. Поиск записи происходит по IP-адресу. Если указано имя узла, оно будет решено перед поиском записи в таблице ARP.
arp -s адрес аппаратный_адрес используется для настройки новой записи в таблице. Формат параметра аппаратный_адрес зависит от класса оборудования, но для большинства классов можно допустить, что возможно использовать обычное представление. Для класса Ethernet - это 6 байт в шестнадцатеричной записи, разделённых двоеточиями. При добавлении записей arp-прокси (то есть тех, для которых указан влаг pub) для сети, можно указать маску подсети в netmask. Это не лучшее решение, но оно поддерживается устаревшими ядрами, поскольку может быть полезным. Если не указан флаг temp, то запись помещается в кэш ARP, как постоянная. Для упрощения настройки записей для одного из ваших сетевых интерфейсов, вы можете воспользоваться командой следующего вида: arp -Ds адрес имя_интерфейса. В этом случае аппаратный адрес будет получен от интерфейса с указанным именем.
В том месте, где ожидается имя_узла, можно указать его IP-адрес в десятично-точечной нотации.
-v, --verbose Сообщать пользователю о происходящем в подробном режиме. -n, --numeric показать числовые адреса, не пытаясь опрелять символьные имена узлов, портов или пользователей. -H type, --hw-type type При настройке или чтении кэша ARP, этот необязательный параметр сообщает arp, какой класс записей нужно проверять. По умолчанию значением этого параметра является ether (то есть аппаратный код 0x01 для IEEE 802.3 10 Мегабитного Ethernet). Другие значения указываются для сетевых технологий ARCnet (arcnet), PROnet (pronet), AX.25 (ax25) и NET/ROM (netrom). -a Использовать альтернативный стиль BSD вывода информации (без фиксированных колонок). -D, --use-device Вместо аппаратного_адреса, указанный аргумент является именем интерфейса. arp будет использовать MAC-адрес этого интерфейса. Обычно эта опция лучше всего подходит для настройки узла в качестве ARP-прокси. -i интерфейс, --device интерфейс Выбор интерфейса. При выводе кэша ARP будут выводиться только те записи, которые соответствуют указанному интерфейсу. При настройке постоянной или временной записи ARP этот интерфейс будет ассоциирован с записью; если эта опция не используется, ядро будет полагаться на таблицу маршрутизации. Для записей pub указанный интерфейс является интерфейсом, на с которого будут возвращаться ARP-ответы на запросы.
Замечание: Он должен быть отличен от интерфейса, на который маршрутизируются IP-пакеты. Замечание: Ядра начиная с 2.2.0 больше не позволяют задать ARP-запись для целой подсети. Вместо этого Linux при наличии маршрута и включенном форвардинге автоматически работает в режиме arp-прокси. За подробностями обратитесь к arp(7). В ядрах начиная с 2.4 и выше невозможно воспользоваться опцией dontpub при удалении или настройки arp-записи.-f имя_файла, --file имя_файла Похоже на опцию -s, только в жтом случае информация об адресе берётся из файла имя_файла. Опция может пригодиться в том случае, если нужно настроить ARP-записи для большого количества узлов. Чаще всего в качестве имени файла данных используется /etc/ethers, но это не официальное имя. Если имя файла не указано, то используется файл /etc/ethers. Формат файла прост; он содержит строки текста в кодировке ASCII с именами узлов и их аппаратными адресами, отделёнными друг от друга пробелом. Также может быть указана опция pub, temp и netmask.
В особых случаях для достижения совместимости, порядок следования имён узлов и аппаратных адресов может быть изменён.
Каждая полная запись в кэше ARP будет отмечена символом C. Постоянные записи помечаются знаком M, а опубликованные записи отмечаются знаком P.
/usr/sbin/arp -i eth0 -Ds 10.0.0.2 eth1 pubЗапись будет отзываться на ARP-запрос адреса 10.0.0.2 на интерфейсе eth0 MAC-адресом интерфейса eth1.
/usr/sbin/arp -i eth1 -d 10.0.0.1
Удалить из таблицы ARP запись для адреса 10.0.0.1 на интерфейсе eth1. Эта команда удалит и опубликованные записи ARP-прокси и постоянные записи.
/proc/net/arp
/etc/networks
/etc/hosts
/etc/ethers
rarp(8), route(8), ifconfig(8), netstat(8)
Фред Н. ван Кимпен (Fred N. van Kempen) <waltje@uwalt.nl.mugnet.org>, Бернд Экенфелс (Bernd Eckenfels) <net-tools@lina.inka.de>.
Перевод на русский язык выполнил Владимир Ступин <wheelof@gmail.com>.
net-tools | ARP (8) | 2007-12-01 |