Как сделать глубокую проверку пакетов перед их пересылкой

Мне нужно выполнить задачу dpi для всех пакетов, поступающих на сервер Ubuntu, а затем перенаправить их к месту назначения в моей локальной сети. Сервер является шлюзом и машиной NAT локальной сети.

Я пишу приложение на python и не не знаю, как обрабатывать каждый пакет, а затем пересылать их.


person I.khaksari    schedule 05.09.2016    source источник
comment
Пожалуйста, проверьте эту ссылку. stackoverflow.com/help/how-to-ask   -  person Dinesh Pundkar    schedule 05.09.2016


Ответы (2)


Если я правильно понимаю, вам нужно создать программу для перехвата (из живых или проходящих pcap) пакетов, выполнения DPI и последующей классификации их по протоколу приложения, не так ли?

Прежде всего, я предлагаю вам прочитать этот< /а>.

Затем вы можете использовать множество библиотек Python:

  1. API Wireshark
  2. Pcapy
  3. Scapy

ИМХО это смотря на каком уровне нужно иметь мелкозернистость. Возможно, вы ищете что-то похожее на модуль dpkt.

person Kyrol    schedule 10.08.2017

Вы можете использовать пакет nfstream python

   from nfstream import NFStreamer
   my_awesome_streamer = NFStreamer(source="facebook.pcap") # or network interface (source="eth0")
   for flow in my_awesome_streamer:
       print(flow)  # print it, append to pandas Dataframe or whatever you want :)!
person Edzi    schedule 07.01.2020