Программа arptables позволяет задать в командной строке различные команды, опции и параметры, которые могут служить для создания, переименования и удаления правил и цепочек, а также для просмотра информации о текущем состоянии.
Основные команды arptables
Команды arptables используются для создания, изменения, просмотра и удаления правил в цепочках. Поскольку программа поддерживает единственную таблицу filter, необходимости использования опции -t не возникает, хотя она и поддерживается программой. В каждой строке можно использовать только одну команду arptables1.
-A, --append
добавляет правило в конец указанной цепочки.
-D, --delete
удаляет правило из указанной цепочки. Удаляемые правила можно задать номером2 (или диапазоном номеров в формате start_nr:end_nr) или ввести в строке точную копию спецификации, заданной при добавлении правила в таблицу.
-I, --insert
вставляет правило в указанную номером строку списка. Если в цепочке имеется N правил, в качестве параметра команды I можно использовать значения от -N до N+1. Для случая положительных значений i, позиции с номером i-N-1 и i. Нулевое значение задает вставку правила вслед за последним из имеющихся в таблице правил как по команде -A.
-R, --replace
Меняет спецификацию правила в указанной строке. Изменяемая строка задается номером, интерпретация отрицательных значений идентичная используемой в команде -I.
-P, --policy
задет политику для указанной встроенной цепочки (ACCEPT, DROP или RETURN). Заданная политикой операция используется, когда кадр доходит до конца встроенной цепочки.
-F, --flush
сбрасывает все правила указанной цепочки, не изменяя политики цепочки.
-Z, --zero
сбрасывает для указанной цепочки значения счетчиков пакетов и байтов в 0. Если цепочка не указана, сбрасываются значения счетчиков для всех цепочек таблицы. Команду -Z можно использовать совместно с командой -L для просмотра значений счетчиком с последующим сбросом этих значений.
-L, --list
выводит список команд указанной цепочки. Если цепочка не задана в команде, выводятся правила всех цепочек.
-N, --new-chain
создает новую пользовательскую цепочку с указанным именем (до 31 символа). Количество пользовательских цепочек не ограничено.
-X, --delete-chain
удаляет указанную пользовательскую цепочку. Удаляемая цепочка не должна использоваться в качестве операции (действия) в какой-либо из остающихся цепочек. Если в команде не указано имя цепочки, программа будет удалять все неиспользуемые пользовательские цепочки данной таблицы.
-E, --rename-chain
переименовывает указанную цепочку. В отличие от iptables программа ebtables позволяет менять имена не только у пользовательских, но и у встроенных цепочек. Например, вы можете переименовать в PREBRIDGING цепочку PREROUTING, с помощью команды -E PREROUTING. Переименование цепочек не оказывает никакого влияния на работу arpables3.
Дополнительные команды
-V, --version
выводит информацию о номере версии программы arptables.
-h, --help
выдает краткую справку о синтаксисе команд arptables.
-j, --jump target
служит для задания действия, выполняемого правилом при соответствии пакета заданным условиям. В качестве действий могут служить основные операции ACCEPT, DROP, CONTINUE, RETURN, дополнительные операции или пользовательские цепочки.
Опции спецификации правил
Описанные ниже опции служат для задания условий соответствия, используемых при отборе пакетов. Знак инверсии ! перед той или оной опцией меняет смысл условия на обратный (логическое отрицание).
-s, --source-ip [!] address[/mask]
позволяет проверить соответствие IP-адреса отправителя указанному адресу или диапазону адресов.
-d, --destination-ip [!] address[/mask]
позволяет проверить соответствие IP-адреса получателя указанному адресу или диапазону адресов.
--source-mac [!] address[/mask]
позволяет проверить соответствие MAC-адреса отправителя указанному значению. Для задания адреса и маски используется 6 шестнадцатеричных значений, разделенных двоеточием (:).
--destination-mac [!] address[/mask]
позволяет проверить соответствие MAC-адреса получателя указанному значению. Для задания адреса и маски используется 6 шестнадцатеричных значений, разделенных двоеточием (:).
-i, --in-interface [!] name
позволяет проверить интерфейс, через который кадр был принят (для цепочек INPUT и FORWARD). Допускается использование синонима --in-if.
-o, --out-interface [!] name
позволяет проверить интерфейс, через который кадр будет передаваться (для цепочек OUTPUT и FORWARD). Допускается использование синонима --out-if.
-l, --h-length length[/mask]
позволяет проверить размер пакета в байтах.
--opcode code[/mask]
позволяет проверить значение 2-байтового поля кода операции. Допустимы значения:
1=Request (запрос)
2=Reply (отклик)
3=Request_Reverse (запрос обратного преобразования)
4=Reply_Reverse (отклик на запрос обратного преобразования)
5=DRARP_Request (запрос DRARP)
6=DRARP_Reply (отклик на запрос DRARP)
7=DRARP_Error (ошибка DRARP)
8=InARP_Request (запрос InARP )
9=ARP_NAK
--h-type type[/mask]
позволяет проверить значение типа оборудования. Двухбайтовое поле типа оборудования может принимать единственное шестнадцатеричное значение
1=Ethernet
--proto-type type[/mask]
позволяет проверить 2-байтовое значение типа протокола. Допустимым значением типа является 0x800=IPv4.
Примечание:
|