Этот код не захватывает пакеты, когда это должно быть. Я на Mac OS.
Я искал в стеке, и ни один из кодов не работает из-за того, что он написан для Windows, Linux или на python 2.
import socket
import time
import datetime
import os
host = "127.0.0.1"
s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_TCP)
s.bind((host, 0))
s.setsockopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1)
amount = 0
print('------------------------------------------------------------------------')
print('[*]TIME:'+str(datetime.datetime.fromtimestamp(time.time())))
print('------------------------------------------------------------------------')
print('[+]CAPTURING PACKETS')
print('------------------------------------------------------------------------')
print('')
while True:
amount = amount + 1
create = open(('PACKET '+str(amount)+'.txt'),'w+')
create.write('')
f = open(('PACKET '+str(amount)+'.txt'),'w')
PACKET = s.recvfrom(65565)
f.write(PACKET)
print('--------------------------------------------------------------------')
print('[*]TIME:'+str(datetime.datetime.fromtimestamp(time.time())))
print('--------------------------------------------------------------------')
print('[+]PACKET '+str(amount))
print('--------------------------------------------------------------------')
print('')
f.close()
create.close()
Я ожидаю, что он будет захватывать пакеты, однако ничего не происходит.