Часть ядра, отображающая такую статистику в /прок
метод файловой системы там:
если (v == SEQ_START_TOKEN) {
seq_puts(seq, "обработанные записи найдены новые недействительные игнорировать удалить удалить_список вставить вставить_не удалось удалить раннее_опустить icmp_error ожидать_новый ожидать_создать ожидать_удалить поиск_перезапустить\n");
вернуть 0;
}
seq_printf(seq, "%08x %08x %08x %08x %08x %08x %08x %08x"
"%08x %08x %08x %08x %08x %08x %08x %08x %08x\n",
nr_conntracks,
0,
ст-> найдено,
0,
ст-> неверный,
ст->игнорировать,
0,
0,
ст-> вставить,
st->insert_failed,
ст-> падение,
ст->early_drop,
ст-> ошибка,
st->expect_new,
ст->ожидать_создать,
st->expect_delete,
st->search_restart
);
как видно поля искал
(заменено другим полем в более поздних ядрах), новый
, удалять
, список_удалений
всегда отображать 0: эти поля ничем не заполняются.
Как я подозревал в своем предыдущем ответе («или, возможно, он устарел»), статистики по этому поводу нет ни со старым, ни с новым методом.
Здесь коммит от 2016 года, который удалил их (вероятно, для ядра 4.9):
netfilter: conntrack: удалить статистику горячих путей пакетов
Эти счетчики находятся на горячем пути и действительно проявляются в производительности, это особенно
true для «найдено» и «поиск», которые увеличиваются для каждого пакета
обработанный.
Информация, как
искал = 212030105
новый=623431
найдено=333613
удалить=623327
не кажется слишком полезным в настоящее время:
на загруженных системах, найденных и просматриваемых, будут переполняться каждые несколько часов
(это 32-битные целые числа), другие более загруженные каждые несколько дней.
для отладки есть лучшие методы, такие как цель трассировки iptables,
журнал conntrack sysctls. В настоящее время у нас также есть перфоинструмент.
Это удаляет счетчики статистики пути пакетов, за исключением тех, которые
ожидается, что они будут равны 0 (или близки к 0) в нормальной системе, например.
'insert_failed' (произошла гонка) или 'invalid' (отклонение прототрекера).
Статистика вставки сохраняется для случая ctnetlink.
Найденная статистика сохраняется для проверки взятия кортежа, когда NAT должен
определить, нужно ли выбрать другой исходный адрес.
Подписано: Флориан Вестфаль [email protected]
Подписано: Пабло Нейра Аюсо [email protected]
Альтернатива
Вы можете использовать conntrackd инструмент (упакованный на Ubuntu там), который можно настроить для регистрации событий, чтобы предоставлять только журналы и статистику (вместо его основного использования для прозрачной отработки отказа между несколькими брандмауэрами в кластере высокой доступности). Ubuntu может предоставлять конфигурацию для статистики по умолчанию (или в документации). Вот пример системы, в которой conntrackd
служба работает:
# conntrackd -s ct; спать 5; conntrackd -s ct
[Пт, 15 октября, 08:34:08 2021] (pid=3443753) [предупреждение] устарела конфигурация незавершенной работы unix, игнорируется.
статистика кеша:
текущие активные соединения: 65
создано соединений: 121807 неудачно: 0
соединения обновлены: 116158 неудачно: 0
соединения уничтожены: 121742 не удалось: 0
обработано трафика:
0 байт 0 пакетов
[Пт, 15 октября, 08:34:13 2021] (pid=3443756) [предупреждение] устарела конфигурация незавершенной работы unix, игнорируется.
статистика кеша:
текущие активные соединения: 68
создано соединений: 121811 неудачно: 0
соединения обновлены: 116163 не удалось: 0
соединения уничтожены: 121743 не удалось: 0
обработано трафика:
0 байт 0 пакетов
Инструмент сообщает созданные соединения:
изменился с 121807 на 121811. Я считаю, что это эквивалент новый
поле удалено из ядра.
Примечание: обработано трафика:
безусловно, для обмена данными между брандмауэрами между двумя conntrackd демоны (поэтому здесь всегда будет 0).