Для перемещения по дереву справки используйте строки заголовка.

Справка по NSG Linux 2.1.3
Дерево команд: _common-nodes.ip.nat-filter-mangle.CHAIN.NUM.target

Что это такое?

Это действие, которое должно быть совершено над пакетами, имевшими несчастье попасть под данное правило фильтрации, NAT или прочего. В терминологии iptables называется целью (target) — это то, что пишется после ключа --jump.

Зачем это нужно?

А зачем вообще нужны правила обработки IP-пакетов? Вот затем.

Как это настроить?

Выбрать одно из действий, перечисленных в списке.

ВНИМАНИЕ! Ниже приведён полный список поддерживаемых действий. При этом многие действия являются специфическими для определённых цепочек и таблиц; применять их в других местах не следует или недопустимо, даже если они там доступны в меню.

В зависимости от выбранных действий могут потребоваться дополнительные параметры этих действий. Например, если выбрано какое-либо из преобразований NAT, то необходимо указать, на что именно следует заменять исходные IP-адреса и номера портов. Узлы для ввода этих параметров становятся доступными после выбора соответствующего действия.

В экзотических случаях, не предусмотренных конфигурационным деревом NSG в явном виде, для указания параметров действия и даже самого действия можно использовать параметр extra-target.

Подробно о целях, их применении и синтаксисе параметров см. man pages по iptables и iptables-extensions.

В пользовательских цепочках альтернативой данному параметру может являться переход в другую цепочку с возвращением в вышестоящую (эквивалент ключа iptables --goto). Параметр target не может использоваться одновременно с chain, поскольку действие в любом случае возможно только одно.

ACCEPT
Пропустить пакет дальше без изменений (т.е. продолжить его обработку другими правилами, цепочками и таблицами). Параметров нет. Применимо в любой цепочке.
CLASSIFY
Назначить пакету определённую выходную очередь в дисциплине CBQ и приоритет в этой очереди. Только для цепочек FORWARD, OUTPUT, POSTROUTING таблицы mangle. Параметр — значение очереди и приоритета.
CLUSTERIP
Организовать простейший кластер из нескольких узлов, работающих на одном IP и МАС-адресе, со статическим распределением соединений между ними. Только для IPv4. Параметры кластера: clustermac, hash-init, hashmode, local-node, new, total-nodes.
CONNMARK
Установить метку соединения для данного пакета. Параметры действия записываются в строке connmark-params, используя синтаксис iptables.
CT
Использовать механизм conntrack для отслеживания взаимосвязанных потоков (например, соединений ftp и ftp-data). Только для таблицы raw. Явно реализованные параметры: ctevents, helper, notrack, zone. Другие параметры для данной цели можно включить в extra-target.
DNAT
Изменить адрес назначения пакета, а также, опционально, порт назначения для протоколов TCP и UDP. Только для цепочек nat PREROUTING и OUTPUT. Параметры: диапазон адресов и портов и порядок выбора портов.
IP-адрес и порт источника при преобразовании DNAT не изменяются.
DROP
Уничтожить пакет, т.е. послать его на в /dev/null. Применимо всегда и везде. Параметров нет. См. также REJECT (см. ниже) — не просто послать, но послать вежливо.
DSCP
Изменить значение поля DSCP (6 бит) в заголовке пакета IPv4. Только для таблицы mangle. Параметры действия: set-dscp, set-dscp-class.
ECN
Принудительно очистить поле ECN (Explicit Congestion Notification) в заголовке TCP, чтобы закрыть известные дыры в безопасности. Только для IPv4, только для таблицы mangle и только для пакетов TCP. Параметр — указание на очистку заголовка.
LOG
Внести запись о данном пакете в журнал ядра Linux (см. .system.show.dmesg и .system.syslog). Параметры вида log-* определяют содержимое и степень детализации записей.
Данное действие не является терминирующим, т.е. после срабатывания данного правила обработка пакета продолжается в данной цепочке. Если требуется выполнить какое-то ещё действие, например, уничтожить нежелательный пакет, то его следует задать в виде отдельного правила с тем же набором критериев и меньшим приоритетом (т.е. бóльшим номером в списке).
MARK
Установить метку netfilter для данного пакета. Следует использовать только в таблице mangle. Параметры действия — метки iptables и xtables. Обе метки могут далее использоваться, например, в пакете iproute2.
MASQUERADE
Изменить адрес источника пакета на адрес интерфейса, через который отправляется пакет. Только для цепочки nat POSTROUTING. Рекомендуется использовать для интерфейсов, которым адрес назначается динамически (средствами PPP или DHCP). При этом адрес интерфейса определяется заново для каждого пакета, что создаёт повышенную вычислительную нагрузку по сравнению с аналогичным действием SNAT (см. ниже). В случае перехода такого интерфейса в состояние DOWN (по любой причине) все записи, относящиеся к нему, удаляются, а после его восстановления начинают создаваться снова (возможно, с новым IP-адресом, если он изменился).
Для пакетов TCP и UDP первоначальный порт источника, по возможности, не изменяется, если иное не указано явно. Если при этом несколько локальных хостов пытаются выйти во внешнюю сеть с одним и тем же портом источника, то порты из диапазонов до 511 включительно, 512...1023 и от 1024 включительно преобразуются в порты из того же диапазона по мере необходимости. Вместо этого поведения можно явно указать диапазон новых портов источника и режим их выбора.
IP-адрес и порт назначения при преобразованиях MASQUERADE и SNAT не изменяются.
NETMAP
Статическое отображение адресов из одной сети на адреса в другой сети. Только для таблицы nat. Параметр — целевой адрес (или диапазон адресов, который комбинируется с исходным адресом).
NFLOG
Более универсальный вариант ULOG (см. ниже), обеспечивающий передачу информации о пакете не напрямую в сокет netlink, а через специальную подсистему — logging backend. Параметры действия, в данной версии NSG Linux, следует записывать в поле extra-options.
NFQUEUE
Поместить пакет в определённую очередь, идентифицируемую по 16-битному номеру. Параметр — номер очереди.
NONE
Ничего не делать. Обычно используется, чтобы временно выключить правило. На нет — и параметров нет.
NOTRACK
Отключить механизм conntrack. Только для таблицы raw. Равносильно target=CT notrack=true.
RATEEST
Сбор статистики, оценка скорости передачи и сохранение результатов для последующих вычислений с помощью критерия rateest. Настраивается параметрами rateest-*.
RAWDNAT
Использовать устаревшую версию DNAT без механизма conntrack. Только для таблицы raw.
REDIRECT
Перенаправить пакет на локальную машину. Только для цепочек nat PREROUTING и OUTPUT. Параметры только для пакетов TCP и UDP: диапазон адресов и портов и порядок выбора портов.
IP-адрес и порт источника при преобразовании REDIRECT не изменяются.
REJECT
Уничтожить пакет, но при этом послать отправителю уведомление ICMP о том, что он не может быть доставлен. Только для цепочек INPUT, FORWARD и OUTPUT. Параметр — тип уведомления.
RETURN
Прекратить анализ пакета по текущей цепочке и вернуться в предыдущую цепочку. Если это действие выполняется в одной из предопределённых цепочек, то результат определяется её действием по умолчанию. Параметров нет.
SNAT
Изменить адрес источника пакета на адрес интерфейса, через который отправляется пакет. Только для цепочки nat POSTROUTING. В отличие от действия MASQUERADE (см. выше), новый IP-адрес (или диапазон адресов) — постоянный и указывается статически.
Данное действие целесообразно использовать на интерфейсах, имеющих статические IP-адреса. Исключением являются сеансовые соединения PPP (коммутируемые модемные соединения, сотовые порты, туннели PPPoE и PPTP) с ограниченным временем жизни — для них следует использовать MASQUERADING даже при наличии у них статических адресов.
Для пакетов TCP и UDP первоначальный порт источника, по возможности, не изменяется, если иное не указано явно. Если при этом несколько локальных хостов пытаются выйти во внешнюю сеть с одним и тем же портом источника, то порты из диапазонов до 511 включительно, 512...1023 и от 1024 включительно преобразуются в порты из того же диапазона по мере необходимости. Вместо этого поведения можно явно указать диапазон новых портов источника и режим их выбора.
IP-адрес и порт назначения при преобразованиях MASQUERADE и SNAT не изменяются.
TCPMSS
Изменить значение MSS (Maximum Segment Size) в пакетах TCP SYN, чтобы вручную ограничить максимальный размер для данного соединения. Только для правила, содержащего протокол TCP в качестве одного из критериев. Применяется для преодоления проблем у отдельных сетевых ресурсов или поставщиков услуг, у которых неадекватно работают механизмы MTU и фрагментации пакетов (в особенности при дополнительных инкапсуляциях, таких как PPPoE, PPTP). Типичные симптомы проблемы: с хостов, расположенных за вашим маршрутизатором, TCP-соединения устанавливаются, мелкие пакеты проходят, а большие — нет; например, Web-сайты находятся, но открываются только простенькие странички без больших архитектурных форм.
Параметры действия: либо установить точно вычисленный (или подобранный) размер MSS, либо тупо урезать его до MTU данного маршрута минус 40 (для IPv4) или минус 60 (для IPv6, соответственно).
TCPOPTSTRIP
Удалить заданные опции TCP из заголовка пакета. Только для правила, содержащего протокол TCP в качестве одного из критериев, и только в таблице mangle.
TEE
Отправить копию пакета через заданный шлюз. Сами знаете кому и зачем.
TOS
Изменить значение поля Type of Service заголовка IPv4 или поля Priority IPv6. Только в таблице mangle.
TPROXY
Перенаправить пакет на локальный сокет, не изменяя его заголовок никоим образом. Допускается изменять только метку fwmark, которая может быть учтена средствами расширенной маршрутизации. Только для цепочки mangle PREROUTING (и вызываемых из неё пользовательских цепочек). Параметры действия, в данной версии NSG Linux, следует записывать в поле extra-options.
TTL
Изменить значение поля TTL в заголовке пакета IPv4. Только в таблице mangle. Параметры определяют уменьшение, увеличение или сразу желаемое значение TTL.
ВНИМАНИЕ! Данная операция может привести к непредсказуемым последствиям. Запрещается явно устанавливать или увеличивать поле TTL в пакетах, отправляемых за пределы вашей локальной сети.
ULOG
Ретранслировать данный пакет через из ядра Linux через сокет netlink с тем, чтобы сделать его доступным для пользовательских процессов. Только для IPv4. Как и LOG (см. выше), данное действие не является терминирующим. Данный механизм является устаревшим, вместо него рекомендуется использовать NFLOG (см. выше). Настраивается параметрами ulog-*.
Служебная (UPnP, GRE_KA) или пользовательская цепочка
Передать пакет на исследование в указанную цепочку. В этой цепочке над ним может быть совершено некоторое окончательное (терминирующее) действие, либо он может быть возвращён в исходную цепочку действием RETURN в одном из правил, либо он будет возвращён по исчерпании всех правил в дочерней цепочке. Либо он может быть передан в какую-то третью цепочку и т.д.

© Network Systems Group 2015–2024 Отдел документации