Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Pakete senden (https://www.delphipraxis.net/79032-pakete-senden.html)

Delphi Star 15. Okt 2006 10:32


Pakete senden
 
Wie kann man Pakete senden :?:
Ich überwache im Moment, die Pakete einer Netzwerkkarte mit WinPcap. Kann man damit auch Pakete senden, oder wie mache ich das?

mkinzler 15. Okt 2006 10:35

Re: Pakete senden
 
Um das Zerlegen der Nutzdaten und Verpacken dieser in die Pakete kümmert sich der TCP/IP-Stack.
Was für welche Pkete willst du den Senden?

Delphi Star 15. Okt 2006 10:46

Re: Pakete senden
 
Ich müsste Pakete auf eine bestimmte Netzwerkkarte senden. Diese Pakete werden einfach von einer anderen weitergeleitet und ein bisschen verändert. (Software-Router)

mkinzler 15. Okt 2006 10:48

Re: Pakete senden
 
Dann verwende eine einfache Socket-Komponente, mit der du Dummy-Daten versendest.

Delphi Star 15. Okt 2006 10:56

Re: Pakete senden
 
und wie genau mache ich das?
Die Antworten empfange ich ja dadurch, dass ich die Internet-Schnittstelle mit WinPcap überwache.

mkinzler 15. Okt 2006 11:00

Re: Pakete senden
 
Den Rechner mit Softwarerouter als Standardgateway des senden Rechners einstellen, und ein als Zielrechner des Sockets eine Adresse außerhalb deines Netztes angeben.

Delphi Star 15. Okt 2006 16:46

Re: Pakete senden
 
:gruebel:

Delphi Star 15. Okt 2006 18:08

Re: Pakete senden
 
Das sollte man auch irgendwie mit WinPcap machen können.
http://www.wikistc.org/wiki/Network_packet_generator

Delphi Star 15. Okt 2006 23:52

Re: Pakete senden
 
:arrow: Mit WinPcap kann man Pakete senden, steht zumindest in der Anleitung.
Aber wie mache ich das :?:
Momentan benutze ich zur Kommunikation mit WinPcap die "Winpcap network library headers for Delphi. (version 25-05-2005)" von www.nzlab.dk. Ich habe das Gefühl, das dies damit nicht möglich ist. Gibt es eine bessere/neuere Übersetzung der Headers für Delphi?

Delphi Star 16. Okt 2006 23:23

Re: Pakete senden
 
*push*

Delphi Star 17. Okt 2006 13:53

Re: Pakete senden
 
Weiß den wirklich niemand, wie man mit WinPcap und Delphi Pakete senden kann :?:

@Mod: Es wäre schön, wenn jemand den Titel in "Pakete senden mit WinPcap" umbenennen könnte.

nitschchedu 17. Okt 2006 14:00

Re: Pakete senden
 
Na ja du könntest per Socket mit RAW ein Packet schicken ! Abfangen musste es ab mit WinPcap.

Delphi Star 17. Okt 2006 19:41

Re: Pakete senden
 
Ich würde das gerne mit WinPcap machen. Ich experementiere gerade mit den Übersetzungen der Headers für Delphi von nzlab.dk herum. Wenn sich jemand (ein bisschen) damit auskennt und weiß wie man Pakete sendet, bitte posten.

Meflin 17. Okt 2006 19:43

Re: Pakete senden
 
Es gibt bereits einen Delphi-Wrapper Namens Snoop. Diesen Komponenten ist auch eine Demo-Anwendung beigefügt, die unter Anderem auch in der LAge ist, Pakete zu senden. Besorgs dir und du weist wies geht ;)


Delphi Star 17. Okt 2006 19:52

Re: Pakete senden
 
Zitat:

Zitat von Meflin
Es gibt bereits einen Delphi-Wrapper Namens Snoop. Diesen Komponenten ist auch eine Demo-Anwendung beigefügt, die unter Anderem auch in der LAge ist, Pakete zu senden. Besorgs dir und du weist wies geht ;)

Davon habe ich bei Recherchen im Internet auch schon gelesen. Allerdings musste ich feststellen, dass es die Internetseite nicht mehr gibt: www.snoopanalyzer.com/
http://www.snoopanalyzer.com/download/Snoop2.zip

Basilikum 17. Okt 2006 21:05

Re: Pakete senden
 
ich gehe nun einmal davon aus, dass Du die notwendige Import-Unit bereits hast.... danach wie folgt:
Delphi-Quellcode:
var
  Adapter : PAdapter;
  Packet : PPacket;
  Buffer : Pointer;
  Len : Word;
Begin
  Adapter:=..... // wirst Du bereits wissen wie, da Du bereits sniffen kannst

  Len:=364; // Grösse des zu senden Packets
  GetMem(Buffer,Len);
  Try
    // Buffer befüllen
    FillChar(Buffer^,6,$ff); // Destination-MAC = Broadcast
    // etc...

    Packet:=PacketAllocatePacket(); // WinPCap-API
    Try
      PacketInitPacket(Packet,Buffer,Len); // WinPCap-API

      If not PacketSendPacket(Adapter,Packet,True) Then raise Exception.Create('Send failed');
    Finally
      PacketFreePacket(Packet); // WinPCap-API
    end;
  Finally
    FreeMem(Buffer,Len);
  end;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz