В чем разница между ULOG и NFLog?

13

Различные места предлагают использовать ULOG или NFLOG вместо LOG для получения выделенной записи в журнал сетевого фильтра (см., Например, здесь или здесь ).

Глядя на man iptablesэтих двоих, они выглядят совершенно одинаково. За исключением того, что NFLOG говорит о некотором «бэкенде nfnetlink_log», в то время как ULOG не говорит ни о каком бэкенде.

  1. Какая разница?
  2. Существуют ли типичные ситуации для использования одного или другого?
Элронд
источник

Ответы:

14

ULOG было оригинальное ведение журнала пространства пользователя, добавленное в Kernel 2.4 для ipv4.

NFLOGявляется более новой, общей (независимой от уровня 3) средой ведения журналов для ядер 2.6, основанной на оригинальном ULOG, но реализованной через libnfnetlink

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

Используйте, ULOGесли вы застряли ulogd-1.xкак 1.x может не очень хорошо играть NFLOG. Вы действительно должны использовать ulogd-2.xкак 1.xсчитается наследство и EOL.

В противном случае просто используйте NFLOG

Matt
источник
1
Обратите внимание, что ulogd 1.24 (поставляемый в Debian / stable) не похож на NFLOG, но, похоже, на ULOG.
Элронд
ах дебиан .. всегда такой стабильный =) добавил примечание к А. Также Джесси будет переходить на ulogd-2.x
Мэтт
Есть ли способ определить, какой из них способен использовать система, чтобы скрипт-обертка всегда мог использовать правильный?
user1169420
1
@ user1169420, может быть, так:if ulogd --version | grep -q 'Version 2'; then (use NFLOG); else (use ULOG); fi
MarSoft
А как насчет обычного LOG? Какое отношение оно имеет к другим?
Хайме