Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi IP - Hardcore (https://www.delphipraxis.net/38391-ip-hardcore.html)

Meflin 18. Jan 2005 16:56


IP - Hardcore
 
Hi zusammen,

ich habe im moment vor, mich mal auf etwas systemnaherer ebene mit der internetprogrammierung zu beschäftigen, sprich ohne indy oder ähnliche komponenten.
da dachte ich mir wäre es ein anfang, einfach mal ein ip paket zu versenden. da hört mein basiswissen aber dann auch auf ;)

also, ein ip paket hat ja diesen aufbau:
Code:
Bits | 0  1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
     |-----------------------------------------------------------------------------------------------|
     |   Version  |Headerläng.|       Service Typ     | Gesamtlänge                               |
     |-----------------------------------------------------------------------------------------------|
     |                   Identifikation                |  Flags |          Fragment Offset         |
     |-----------------------------------------------------------------------------------------------|
     |       Time To Live     |       Protokoll       | Header Prüfsumme                          |
     |-----------------------------------------------------------------------------------------------|
     |                                            Sende Adresse                                     |
     |-----------------------------------------------------------------------------------------------|
     |                                           Empfangs Adresse                                   |
     |-----------------------------------------------------------------------------------------------|
     |       IP Optionen                                                         | Füllbits        |
     |-----------------------------------------------------------------------------------------------|
     |      Daten...                                                                                |
     |-----------------------------------------------------------------------------------------------|
so, erstmal dazu ein paar fragen:
Version: das ist die IP Version oder? also IPv4, nur in welchem format gibt man das an?
Headerlänge: klar, die länge des headers, aber in bit oder in byte?
Service typ: was kommt hierein?
Gesamtlänge: klar, nur frage wie headerlänge
Identifikation: hat doch was mit fragmentierung zu tun oder?
Flags und Fragment Offset gleiche Frage
Time To Live: klar
Protokoll: kommt da sowas rein wie telnet, smtp, ftp etc?
Header Prüfsumme: auch klar, nur wie bilden?
Sende Adresse: IP des Senders (von mir)
Empfangs Adresse: IP des Empfängers
IP Optionen: welche gibts da?
Füllbits: haben wohl keine weitere aufgabe
Daten: auch klar.

(ach ja und: neue frage neuer thread macht imho wenig sinn hier)

Nunja, wenn man nun so ein paket gebastelt hat, und nun kommt das hauptproblem, wie kriegt mane s dann dazu, sich zum empfänger zu bewegen? das ist mir im moment noch absolut schleierhaft!

hoffe auf eure hilfe,

*MFG*

PierreB 18. Jan 2005 17:02

Re: IP - Hardcore
 
Moin,

das dürfte dich interessieren: IP Aufbau
;)

Luckie 18. Jan 2005 17:03

Re: IP - Hardcore
 
Guck dich mal auf dieser Seite etwas um: http://c-worker.ch/ Da hat es auch Demos, wie man ohne Komponenten einen Ping realisiert. Das C Demo wollte ich schon längst selber mal nach Delphi übersetzten.

c113plpbr 18. Jan 2005 17:04

Re: IP - Hardcore
 
hmm ... zur erklärung eines IP-Packetes, da kam mal nen guter vortrag darüber im IT-Kompaktkurs auf BR-Alpha, vielleicht hilft dir das ja weiter (TCP/IP). Ein paar links dazu: http://www.br-online.de/alpha/it-kom...nikation.shtml http://make-it.fh-augsburg.de/fernse...lesungen/tcpip
Allerdings denke ich, dass das größere problem ist, diese packete zu senden, denn meineswissens nach kann man das (unter win) nicht so direkt, außer man ist rein zufällig netzwerktreiber ... ;)

ciao, Philipp

Chewie 18. Jan 2005 20:12

Re: IP - Hardcore
 
Zitat:

Zitat von c113plpbr
Allerdings denke ich, dass das größere problem ist, diese packete zu senden, denn meineswissens nach kann man das (unter win) nicht so direkt, außer man ist rein zufällig netzwerktreiber ... ;)

Doch doch, geht schon. Raw Sockets sind dein Freund (du brauchst dafür aber höchtstwahrscheinlich Admin-Rechte).

PierreB 18. Jan 2005 20:19

Re: IP - Hardcore
 
Zitat:

Doch doch, geht schon. Raw Sockets sind dein Freund
Weißt du wie man die in Delphi verwenden kann ??

Hier noch ein kleiner Link: Wiki: IP-Header

Chewie 18. Jan 2005 20:22

Re: IP - Hardcore
 
Zitat:

Zitat von delphman
Zitat:

Doch doch, geht schon. Raw Sockets sind dein Freund
Weißt du wie man die in Delphi verwenden kann ??

Genauso wie auch in C: Indem man die WinSockets entsprechend benutzt. Dazu gibts leider aber nur recht wenig Doku-Material im Netz (zumindest war das vor 1,5 Jahren so).

c113plpbr 19. Jan 2005 13:01

Re: IP - Hardcore
 
In Sachen RAW-Sockets hab ich noch was interessantes gefunden, denn wie es scheint, können diese unter WinXP SP 2 nichtmehr richtig eingesetzt werden: http://www.interact-sw.co.uk/iangblo...2/norawsockets

ciao, Philipp

endeffects 31. Jan 2005 19:13

Re: IP - Hardcore
 
danach hab ich leider auch sehr lange vergebens gesucht,
ich bin dabei nur auf eine udp variante gestoßen:
http://www.delphipraxis.net/internal...ght=udp+packet

vielleicht bringt dich das ja ein wenig weiter

iaby 31. Jan 2005 20:44

Re: IP - Hardcore
 
oder per Ethereal (sf.net) mal ein paar packets mitprotokollieren, dann kannst du genau sehen, wie sie aufgebaut sind!


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:29 Uhr.
Seite 1 von 2  1 2      

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