Сетевой интерфейс не отображается в iptables

Возможно, вам подойдет что-то вроде следующего:

function work() {
    echo "${1#work}"
}
function err_work() {
    [ "${1#work}" != "$1" ] && work $*
}
trap "err_work \$BASH_COMMAND" ERR

Функция err_workзатем вызывается для всех ошибок команды, чтобы обнаружить, что сбойная команда начинается с «работы», и, таким образом, вызывает функцию workбез окончания вместо этого с исходной командной строкой в ​​качестве аргументов.

Конечно, bash будет жаловаться на начальную команду перед вызовом ловушки, так что это будет выглядеть немного некрасиво; возможно, есть способ отключить это, хотя я не нашел

0
22.11.2019, 07:09
2 ответа

Конечно, мой друг

Если ввести:

Iptables -L -v

Затем появится подробный список с дополнительной информацией, в которой вы (я )могу увидеть, на какой сетевой интерфейс влияет каждое правило..

1
28.01.2020, 02:29

Лично мне больше всего нравится iptables-save -c, потому что он имеет тот же формат, в котором вы его ввели изначально. -cдобавляет счетчики впереди, чтобы вы могли видеть, сколько раз правило совпало. Полезно при диагностике проблем.

1
28.01.2020, 02:29

Теги

Похожие вопросы