Iptables, в чем разница между -m state и -m conntrack?


48

В чем практическая разница между:

iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

а также

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

Какой из них лучше всего использовать?

Спасибо.


9
Обратите внимание, что для Linux Kernel 3.7 и выше, состояние было удалено. Доступен только conntrack.
Мистер Икс

Я работаю 3.10.0 и состояние все еще поддерживается ...

1
состояние устарело в пользу conntrack и может или не может быть скомпилировано в зависимости от того, как было построено ваше ядро.
Майкл Хэмптон

Ответы:


26

Оба используют одинаковые внутренние компоненты ядра (подсистема отслеживания соединений).

Заголовок файла xt_conntrack.c:

xt_conntrack - Netfilter module to match connection tracking
information. (Superset of Rusty's minimalistic state match.)

Поэтому я бы сказал - модуль состояний проще (и, возможно, менее подвержен ошибкам). Это также больше в ядре. Conntrack с другой стороны имеет больше опций и возможностей [1].

Мой призыв - использовать conntrack, если вам нужны его функции, в противном случае придерживайтесь модуля состояния.

Подобный вопрос на netfilter maillist.

[1] Очень полезно, например, «-m conntrack --ctstate DNAT -j MASQUERADE», исправление маршрутизации / DNAT ;-)


8

Нет разницы в результатах этих двух правил. Оба совпадающих расширения используют одни и те же данные для соответствия состоянию отслеживания соединения. состояние является «старым» расширением совпадения, а conntrack является более новым и имеет гораздо больше возможностей, чем просто сопоставление состояния отслеживания соединения.


1

Iptables Doc

Как сказано в документации:

Сопоставление conntrack - это расширенная версия сопоставления состояний, которая позволяет сопоставлять пакеты гораздо более детально. Это позволяет вам просматривать информацию, непосредственно доступную в системе отслеживания соединений, без каких-либо «внешних» систем, например, в состоянии соответствия. Для получения дополнительной информации о системе отслеживания соединений, посмотрите главу «Конечный автомат».


ссылка больше не работает
прости

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.