Механизм connection tracking (nf_conntrack) в nftables — это специальная подсистема, которая отслеживает состояния соединений и позволяет использовать эту информацию при принятии решений о судьбе отдельных пакетов. support.qbpro.ru
Некоторые задачи механизма:
- Отслеживание состояний отдельных соединений. support.qbpro.ru Система классифицирует каждый пакет либо как относящийся к уже установленному соединению, либо как открывающий новое. support.qbpro.ru Для протоколов, в которых понятие «состояние соединения» изначально отсутствует (UDP, ICMP), оно вводится искусственно. support.qbpro.ru
- Отслеживание связанных соединений. support.qbpro.ru Например, ICMP-ответов на TCP и UDP-пакеты. support.qbpro.ru
- Обработка протоколов, использующих несколько соединений в одной сессии, таких как FTP. support.qbpro.ru Для этого используются специальные модули (conntrack helpers), которые анализируют трафик и «выхватывают» информацию протокола о новых соединениях (например, порт, на который оно будет открыто). support.qbpro.ru
Для хранения данных механизм connection tracking использует одну хэш-таблицу. netdevconf.org Каждое соединение добавляется дважды: один раз с прямым кортежем, один раз с обратным. netdevconf.org
Наличие этого механизма делает nftables полноценным stateful-фаерволом. support.qbpro.ru