Raw Sockets
Verfasst: Mi Apr 03, 2013 12:35 pm
Hallo zusammen,
ich bastel gerade an einem Python Netzwerk Sniffer und habe das Problem, das ich trotz aktivierten promisc Mode nur die zugesandten Pakete empfange, aber nicht die am gleichen PC gesendeten (2. Konsole ping -c1 http://www.google.de)
Wenn ich das ganze in Wireshark anschaue, sehe ich beide, sprich Anfrage und Antwort. Vielleicht jemand eine Idee wie ich unter Python auch die gestellten Anfragen vom gleichen Rechner "lesen" kann, oder eine andere Idee woran es liegen könnte?
# root
ifconfig eth0
# root - Relevanter Code Schnipsel
Gruß Fisherman
ich bastel gerade an einem Python Netzwerk Sniffer und habe das Problem, das ich trotz aktivierten promisc Mode nur die zugesandten Pakete empfange, aber nicht die am gleichen PC gesendeten (2. Konsole ping -c1 http://www.google.de)
Wenn ich das ganze in Wireshark anschaue, sehe ich beide, sprich Anfrage und Antwort. Vielleicht jemand eine Idee wie ich unter Python auch die gestellten Anfragen vom gleichen Rechner "lesen" kann, oder eine andere Idee woran es liegen könnte?
# root
Code: Alles auswählen
ifconfig eth0 promisc
Code: Alles auswählen
eth0 Link encap:Ethernet Hardware Adresse xx:xx:xx:xx:xx:xx
inet Adresse:192.168.xxx.xxx Bcast:192.168.xxx.255 Maske:255.255.255.0
inet6-Adresse: fe80::xxxx:xxxx:xxxx:xxxx/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metrik:1
RX packets:21420 errors:0 dropped:0 overruns:0 frame:0
TX packets:15138 errors:0 dropped:0 overruns:0 carrier:1
Kollisionen:0 Sendewarteschlangenlänge:1000
RX bytes:19808386 (18.8 MiB) TX bytes:2844448 (2.7 MiB)
Interrupt:43
Code: Alles auswählen
...
import socket
...
rawSocket = socket.socket(socket.PF_PACKET, socket.SOCK_RAW, socket.htons(0x0800))
pkt = rawSocket.recvfrom(2048)