Forum: PC-Programmierung Eigene Netzwerkpakete generieren


von Thomas F. (thomas-hn) Benutzerseite


Lesenswert?

Hallo,

ich möchte mir ein Windows-Programm schreiben, welches mir selbst 
definierte Pakete über die Netzwerkkarte versendet bzw. auch Pakete 
empfangen kann. Das Ganze soll unter Win2000/XP laufen. Bei der Wahl der 
Programmiersprache bin ich recht offen...ich nehme da gern Visual Basic, 
Delphi, Visual C,... oder was ihr mir sonst bei dieser Problemstellung 
empfehlen könnt. Es geht mir nur darum, dass ich eben eine Library oder 
ne Beispielanwendung benötige anhand der ich das Ganze angehen kann.
Und ja, das Programm soll selber geschrieben werden und ich will da 
keine fertige Anwendung verwenden ;-)
Mit den Netzwerkprotokollen kenne ich mich soweit aus...das sollte nicht 
das Problem sein. Es geht mir eben hauptsächlich darum wie ich 
selbstdefinierte Pakete über die Netzwerkkarte versenden kann.

Ich hoffe ihr könnt mir da weiterhelfen.

Danke,

Thomas

von *.* (Gast)


Lesenswert?

WinPCap (Kerneltreiber + DLL) kann das. Wird auch vom Drahthai 
verwendet.

von sniper (Gast)


Lesenswert?

hmm... WinPCAP braucht er nicht, denke ich. Er will ja einfach nur Daten
versenden und empfangen.

Daher:

für UDP:
socket aufmachen
mit sendto senden
mit recvfrom auf eingehende Daten warten

für TCP:
wie UDP, jedoch auf client Seite bind aufrufen und auf Serverseite
mit listen auf das bind warten

von Simon K. (simon) Benutzerseite


Lesenswert?

Und wenn er weder UDP noch TCP nehmen will?

von Michael N. (bigmike47)


Lesenswert?

dann macht man das ganze einfach mit einem raw-socket

von Thomas F. (thomas-hn) Benutzerseite


Lesenswert?

> Daher:
>
> für UDP:
> socket aufmachen
> mit sendto senden
> mit recvfrom auf eingehende Daten warten
>
> für TCP:
> wie UDP, jedoch auf client Seite bind aufrufen und auf Serverseite
> mit listen auf das bind warten

Gibt's denn dafür nen Beispielcode? Meine Windows-Programmierkenntnisse 
kommen nicht an meine Kenntnisse von Mikrocontrollern ran ;-)

von Andreas K. (a-k)


Lesenswert?

Michael Niegl wrote:

> dann macht man das ganze einfach mit einem raw-socket

Wobei Microsoft den ursprünglich einfachen Zugang dazu irgendwann 
gesperrt hatte, weil das allzu leicht missbraucht werden konnte.

von Michael N. (bigmike47)


Lesenswert?

achja, keine ahnung ob u wie das unter windows geht, ich kenn das nur 
auf unix-systemen, da geht das ohne problem

von Jorge (Gast)


Lesenswert?

Man wird sich wundern was so ein DSL-Anschluss unter der Haube an Daten 
schiebt. Ausspioniert wird in ganz kleinen Raten. Früher gabs mal 
Ethereal heute weiss ich nicht was das noch anzeigt (darf).

http://www.ethereal.com/

von Gast (Gast)


Lesenswert?

guck die mal http://www.zotteljedi.de/doc/socket-tipps/ an das ist ganz 
gut erklärt (wenns denn TCP oder UDO sein soll)

RAW Sockets:
http://www.c-worker.ch/tuts/raw_icmp.php

von Simon K. (simon) Benutzerseite


Lesenswert?

Jorge wrote:
> Früher gabs mal
> Ethereal

und heute gibt es Wireshark.

von Sebastian (Gast)


Lesenswert?

solange man sich auf IP beschränkt, ist NetCat ziemlich gut(TCP / UPD 
etc. in listen und send mode.....).

Gruß
Sebastian

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.