AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Socks4 - Mehrfachverbindungslogikproblem ^^
Thema durchsuchen
Ansicht
Themen-Optionen

Socks4 - Mehrfachverbindungslogikproblem ^^

Ein Thema von Aphton · begonnen am 3. Okt 2009 · letzter Beitrag vom 4. Okt 2009
Antwort Antwort
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#1

Socks4 - Mehrfachverbindungslogikproblem ^^

  Alt 3. Okt 2009, 21:41
Hallöchen liebe Leute

Ich habe eine Frage zu dem sogenannten "Handshake" bei einer Socks4 Verbindung. Die Frage liegt nicht genau bei einer normalen Connection, sondern viel eher darin, wie das ganze funktioniert, wenn mehrere Socks4 Server hintereinander geschaltet werden.

Ich habe beim Internet Explorer den Proxy eingeschaltet und als Daten die lokale IP angegeben
dh. dieser verbindet sich mit meiner Applikation - welches auch wunderbar funktioniert.
Der Browser schickt zuert den Header, der so aussieht:
Delphi-Quellcode:
  TSocks4Header = record
    Version: Byte; // 0x04 -> SOCKS4
    Command: Byte; // 0x01 = stream connection; 0x02 port binding
    Port: Word; // in network byteorder
    IP: DWord; // in network byteorder
    UserID: Array[0..63] of Char; // zer0 terminated
  end;
Bei der Anfrage enthält Command den Wert 1. Meine Applikation verbindet sich dann nun zu dieser IP Adresse und antwortet dem Browser je nachdem, obs erfolgreich war.
Ab diesem Punkt - Handshake ist abgeschlossen - werden nun die Daten (Anfrage vom Browser) gesendet. Diese empfängt meine Applikation und leitet sie an die Wunsch IP und von dieser empfängt es anschließend eine Antwort, die an den Browser geschickt wird.

So nun die konkrete Frage: Wie schalte ich nun - sagen wir - vier weitere Socks4 Server dazwischen?

Ich hab mir anfangs gedacht, nachdem der Handshake erfolgreich durchgeführt wurde, schicke ich einen Socks4 Header Stream, das ich vorher zusammengesetzt habe.
Nur dürfte das nicht funktionieren, da beim Handshake nur 1 Header ankommt bzw erst nach dem Handshake die Daten an die Wunsch IP weitergeleitet werden.

Ich bin iwie aussichtslos
Im Internet hab ich nur ein Forum gefunden, nur wurde es dort auch nicht beantwortet und extra anmelden wollt ich mich nun auch nicht..

Ich hoffe, mir kann irgendeiner helfen. Und versucht bitte so genau wie möglich zu sein.
Danke schon im voraus.

MfG
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Socks4 - Mehrfachverbindungslogikproblem ^^

  Alt 4. Okt 2009, 12:50
OK ich glaube ich habe die Lösung

Code:
Legende:

  IE - Internet Explorer
  ME - Meine Applikation
  P1 - Server 1
  P2 - Server 2
  PN - Server N
  H - Host

Verbindungskette:

  IE <-> ME <-> P1 <-> P2 <-> ... <-> PN <-> H

Lösung zum Verbindungsaufbauproblem:

  1. IE schickt ME den Socks4 Header mit der IP = Host
  2. ME schickt nun seinerseits einen neuen Socks4 Header mit IP = P2 an P1
  3. ME schickt anschließend einen weiteren Socks4 Header mit IP = PN an P1 -> dieser leitet es an P2 und dieser baut nun die Verbindung zu ..PN auf.
  4. ME schickt letztendlich den letzten Socks4 Header mi IP = Host an P1 -> der leitet es weiter an P2 - und der wiederum -> PN = nun ist die Kette vollständig
  5. Jetzt werden die Daten geschickt
Immer wieder schön, wenn man seine Probleme selbst lösen kann.
Trotzdem danke an die 46, die diesen Thread gelesen haben.

MfG
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#3

Re: Socks4 - Mehrfachverbindungslogikproblem ^^

  Alt 4. Okt 2009, 13:13
Zitat von Aphton:
Trotzdem danke an die 46, die diesen Thread gelesen haben.
Bitte bitte, kein Problem!

Liebe Grüße,
Valle
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:31 Uhr.
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