![]() |
TCP Proxy
hi,
zur zeit versuche ich mich an einem tcp proxy für einen gameserver (ja tcp :)). der proxy soll sich vor den server stellen, daten abfangen/bearbeiten und dann an den server weiterleiten. theoretisch bis zum bearbeiten kein problem, allerdings das weiterleiten von proxy zu server wird wohl evtl nicht klappen wenn ich sockets richtig verstanden habe. wenn ich nun vom proxy die daten mit nem tcp client an den server leite, habe ich ja nur 1x ne verbindung, allerdings hat jeder client ohne den proxy ja eine eigene ip, also könnte der server es ja nichtmehr unterscheiden da der proxy ja immer die eine ip hat und nicht wie im normalfall jeder client ne eigene? ist das so korrekt oder verstehe ich was falsch? freue mich über jede hilfe! mfg |
Re: TCP Proxy
Hai Snoke,
es kommt jetzt darauf an wie der Server arbeitet. Bei einem Router (der ja auch nur eine IP nach aussen hat aber viele Clients mit anderen IPs hinter sich) wird das ganze über (Port)-NAT gemacht. Am Beispiel einer HTTP-Abfrage sieht das so aus:
Code:
Der Router speichert also die IP und den Port von dem er eine Anfrage bekommt. Jetzt sendet er unter seiner IP und einem zufälligen anderen Port an den Server. Der Server sendet seine Antwort jetzt an die IP des Router und den Port den der Router angegeben hat. Wenn der Router nun auf diesem Port eine Antwort vom Server erhalten hat schaut er in der Tabelle nach zu welchem Client der von ihm gewähle Port gehört und sendet das Packet jetzt an die IP und den Port des Client./ -----------Router--------- /Client-A : Port x I merkt sich IP und Port I Router-IP : Port a /Client-B : Port y <-> I merkt sich IP und Port I <-> Router-IP : Port b <-> Server /Client-C : Port z I merkt sich IP und Port I Router-IP : Port c -------------------------- Eventuell hilft Dir das ja weiter. |
Re: TCP Proxy
was ne antwort, danke das hilft wirklich gut, direkt probieren, danke! :-D
|
Re: TCP Proxy
nach längerem versuchen komme ich nicht ganz weiter, folgenden programm aufbau habe ich:
Code:
problem ist von von [TCPClient-Port: 1338] nach [TCPServer-Port: 1338]. hier setzt meine logik aus, da ich von tcp sockets (allgemein sockets) nicht wirklich viele gelesen habe. zur erinnerung [TCPServer-Port: 1338] ist der gameserver der die daten vom proxy erhalten soll. würde ich jetzt einfach alles weiterleiten wüsste der gameserver ja nicht was von wem ist, da ich ja nur 1x mit dem proxy ne connection aufbaue zum server, normalerweise würde der gameserver ja mehere connections bekommen und dementsprechend einfach zuweisen.[Client PC] [Proxy] .----------------------. .----------------------. | TCPClient-Port: 1337 | ----> | TCPServer-Port: 1337 | [gameserver] '----------------------' |----------------------| .----------------------. | TCPClient-Port: 1338 | ----> | TCPServer-Port: 1338 | '----------------------' ' ---------------------' mfg der ratlose Snoke :-( |
Re: TCP Proxy
Warum nehmen alle Leute den Port 1337? Das ist doch albern...
Du könntest es ca. folgendermaßen aufbauen: Proxy managed die Connections, sowie Login, registration, logout... und sendet das wichtige an den Server [int length(username)][str username][int PlayerAngle][int Speed][int InventoryCount]... was immer du brauchst. Sonst habe ich dich falsch verstanden. In diesem Falle definiere deine Frage bitte genauer ;) |
Re: TCP Proxy
soweit wie ich es verstehe, will er einen proxy zu einem bestehenden spiel haben (also spiel ist nicht selbstgemacht)
|
Re: TCP Proxy
Zitat:
|
Re: TCP Proxy
Das heisst, du weist nicht was der Server hören will?
Um welches Spiel handelt es sich? |
Re: TCP Proxy
[quote="inherited"]Das heisst, du weist nicht was der Server hören will?
Um welches Spiel handelt es sich?[/quote World of Warcraft, der dafuer soll fuer LANs sein, näheres ist noch geheim. |
Re: TCP Proxy
Knifflig. Frag doch den Server einfach alles mögliche und lies die Antwort aus, dann weist du ob es den Befehl gibt. Im Internet gibt es dazu leider nichts...
|
Re: TCP Proxy
nicht etwa cheaten^^
mir eigentlich egal aber ist WoW auf TCP??? und wenn es eine Antwort gibt: lasst es mich wissen, denn ich suche etwas ähnliches |
Re: TCP Proxy
Zitat:
|
Re: TCP Proxy
Zitat:
|
Re: TCP Proxy
Zitat:
Zitat:
Zitat:
|
Re: TCP Proxy
das schnelle UDP?
|
Re: TCP Proxy
Zitat:
Zitat:
![]() :roll: |
Re: TCP Proxy
Ich würde die Position der Spieler und deren bewegungen, vektoren, what ever mit UDP und handeln, Chatten, o.ä. mit TCP, aber mich fragt ja keiner...
|
Re: TCP Proxy
Eine Frage: Wie schaffe ich es eigentlich, dass mein Programm die Daten bekommt?
(Ich versuche momentan etwas ähnliches zu programmieren) |
Re: TCP Proxy
Zitat:
|
Re: TCP Proxy
alo alles von einem bestimmten port
die Daten-Pakete |
Re: TCP Proxy
Zitat:
|
Re: TCP Proxy
ja, aber dazu muss das programm ja explizit die daten an mich schicken...
|
Re: TCP Proxy
Dann ist deine Frage unverstaendlich. Wenn du einen TCP-Server auf irgendeinem Port benutzt, kommt da alles an was an deine IP und an den Port gesendet wird
|
Re: TCP Proxy
aber ich kann dem programm imho nicht dazu bringen, die daten erst an mich zu senden
|
Re: TCP Proxy
Zitat:
vielleicht versuchst du es nochmal mit einer KOMPLETTEN und VERSTÄNDLICHEN Erklärung, dann kann ich dir vielleicht auch helfen :roll: |
Re: TCP Proxy
Er möchte IMHO von einem Programm auf seinem PC, das irgendwohin connected, die Daten, die es sendet, abfangen.
|
Re: TCP Proxy
dazu dieser thread:
![]() aber weil es nicht so klappt wie ich will, habe ich gescuth und gesucht und gesucht und per zufall auf "WPE Pro" gekommen. das ist fast genau was ich suche, obwohl der manche programme (leider auch das betreffende nicht findet, also nicht in der liste anzeigt) und mittlerweile bekomme ich die daten mit meinem eigenen programm auch |
Re: TCP Proxy
Du willst Netzwerktraffic sniffen. Das geht per Netzwerk-Spürhund (:zwinker:), zwischengeschaltete Hardware, oder einen Monitoring-Treiber, z.B.
![]() ![]() EDIT: Ich sehe gerade, du willst die Daten auch manipulieren. Das geht meines Wissens nicht. Dazu brauchst du wirklich eine Hardware-Lösung bzw. so etwas wie eine VM, die eine Netzwerkkarte simulieren kann. Dann kannst du die Verbindung dort abfangen und entsprechend weiterleiten. |
Re: TCP Proxy
Ja, das mit Ethereal ist heutzutage Wireshark (grund kannst du dir bei wiki anzeigen lassen)
Ja und manipulieren geht eigentlich mit diesem WPE Pro ( ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:24 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