Skip to content

Latest commit

 

History

History
38 lines (30 loc) · 3.13 KB

README.md

File metadata and controls

38 lines (30 loc) · 3.13 KB

Парсилка NAT-events netflow дампов

NAT-events log parser/searcher

На входе ожидает текстовый дамп в виде

2023-11-23 09:00:05.121     ADD 6   abonent1-IP:50036 ->  destination1-IP:443   my-NAT1-IP:39553 ->  destination1-IP:443
2023-11-23 09:00:05.134  DELETE 6   abonent2-IP:48876 ->  destination2-IP:443   my-NAT2-IP:48876 ->  destination2-IP:443

Ищет по задаваемому дате/времени и дополнительным условиям (адрес NAT'а, dst-адреса, порты) соответствующие NAT-сессии, открывшиеся ДО заданного времени и закрывшиеся ПОСЛЕ. Иначе говоря, выдает ответ на традиционный вопрос "кто ходил с IP NAT'а в такое-то время на сайт vk.com?"

Как работает

Скрипт search-task.pl хочет читать файл tasks.txt, в котором описаны требуемые точки времени и исходные файлы, которые надо парсить. Дополнительно можно дописать адреса, куда ходил абонент, после комментария "допусловия" в строке 59. Сейчас там вбиты адреса ok.ru.

Формат tasks.txt:

5 3 24 2 19 13 57 33 NAT1-IP
6 6 24 3 20 16 5 43 NAT2-IP
  • Первое число - номер задачи, с этим числом будет сформирован файл 'result#.txt', где # - этот номер.
  • Второе число - номер исходного файла - по умолчанию скрипт ищет в текущем каталоге файл с именем 'search#', где # - этот номер.
  • Третье число - последние две цифры года
  • Четвертое число - месяц
  • Пятое число - день
  • Шестое число - час
  • Седьмое число - минута
  • Восьмое число - секунда
  • Девятое значение - внешний IP NAT'а

Пример tasks.txt выше ищет сначала в файле search3 запись о выходе в интернет абонента с внешним адресом NAT1-IP 19 февраля 2023 года в 13:57:33 и пишет найденное в файл result5.txt. Потом - в файле search6 ищется запись о выходе в интернет абонента с внешним адресом NAT2-IP 20 марта 2024 года в 16:05:43 и пишется найденное в файл result6.txt.

Памяти при работе скрипт кушает в полтора раза больше, чем размер search-файла - если файл 2Гб, то памяти будет съедено 3Гб.

Весь этот ужас родился по причине получения от местного угрозыска запроса с 250 (двухсот пятидесятью) записями о похождениях абонента ))