Столбец "использовать" в /proc/net/ip_conntrack или nf_conntrack?
Я хотел бы собрать воедино свой собственный маленький скрипт для анализа данных conntrack, чтобы получить настроенную информацию о сети из некоторых блоков Linux, которые также являются маршрутизаторами NAT.
Пример строки из таблиц conntrack:
ipv4 2 tcp 6 300 ESTABLISHED src=1.1.1.2 dst=2.2.2.2 sport=2000 dport=80 src=2.2.2.2 dst=1.1.1.1 sport=80 dport=12000 [ASSURED] mark=0 use=2
все эти поля были описаны в другом месте, но я не могу найти никакой информации о самом последнем столбце (используйте =2, но обычно используйте =1).
при планировании моего сценария мне пришло в голову, что те же самые комбинации IP/ портов теоретически могут повторяться - то есть открываться, передавать некоторые данные, закрываться и через некоторое время открываться снова.
Может ли этот столбец "использовать" указывать, что эта комбинация ip/port уже была замечена ранее? Если да, то в какое время?
1 ответ
use Свойство является подсчетом ссылок. В основном это используется сборщиком мусора. Вместо периодического разбора /proc/net/nf_conntrack файл, который вы можете проанализировать вывод conntrack -E Команда для обработки событий Conntrack в режиме реального времени.
Если вам интересны подробности, вы можете прочитать главу 9 " Сетевое взаимодействие ядра Linux: реализация и теория ".