WLAN-Abfrage mit der PCap-Library

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
Columbus
Beiträge: 1051
Registriert: 30.04.2002 15:25:02
Wohnort: Mainz
Kontaktdaten:

WLAN-Abfrage mit der PCap-Library

Beitrag von Columbus » 28.01.2008 03:29:42

Hallo zusammen,
ich hänge im Moment an einem Problem. Und zwar möchte ich ein Programm schreiben, daß mit der pcap-Library (Wireshark, TCPDump...) WLAN-Frames untersucht. Genauer gesagt sollen alle Packte angezeigt werden, die wiederholt übertagen wurden. Dazu gibt es im WLAN-Header ein Flag im Control-Feld. Es ist fünfte Flag, wenn man von rechts nach links zählt. Also "feld & 16"?
Die IEEE 802.11-Structur sieht hier folgerndermaßen aus:

Code: Alles auswählen

struct ieee_802_11_header {
	u16	frame_control;// needs to be subtyped
	u16	duration;
	u8	mac1[6];
	u8	mac2[6];
	u8	mac3[6];
	u16	SeqCtl;
	u8	mac4[6];
	u16	gapLen;
	u8	gap[8];
};
Hier kann man den Aufbau des Feldes sehen:
http://safari.informit.com/0596001835/w ... P-4-SECT-2

Das besagte Feld ist das erste, also "frame_control". Das möchte ich jetzt untersuchen auf das Vorhandensein des 5.Bits.

Bei der pcap-Library gibt es hierfür die Funktion:

Code: Alles auswählen

pcap_compile(handle, &fp, filter_exp, 0, net)
in filter_exp wird dann spezifiziert was man sucht, als eine Art Expression. Die Sprache/Ausdruck ist hier von der gleichen Art wie man es mit TcpDump beschreibt. Nun meine Frage: kennt jemand die Pcap-Lib so gut, daß er mir schreiben kann, welche Expression ich hier einsetzen muss, oder wie würde man mit TCPDump meine Abfrage ausdrücken?

Danke vorab

Gruss Christian
Die größten Kritiker der Elche,
waren früher selber welche.

F.W. Bernstein

Antworten