Læse data fra pakker c#

Tags:    programmering

Da jeg er relativt ny i programmeringens verden, kan det være at denne beskrivelse ikke er komplet. Holder øje med forummet så uddybende spørgsmål kan besvares :)

Jeg programmerer KUN for egen fornøjelses skyld og har for nylig kastet mig over et projekt, hvor jeg vil lave et program der kan lave statistik over et mmo baseret spil. Rettighedsspørgsmål er afklaret med spilejeren, og det er derfor ikke et problem at få lov at læse pakkerne. MEN.

Hvordan lytter jeg til en port, og læser den data der kommer i pakkerne?

Desuden vælges den samme port ikke altid, men afsender IP er altid den samme.

Derfor er spøgsmålet: Hvordan lytter jeg til en port, hvor port nummeret er defineret ud fra den data der ligger i første pakke jeg modtager fra en specifik IP address.

Hjælp til en nybegynder ville være rart :)

Programmet er skrevet i Microsoft Visual Studio 2008, c#



Derfor er spøgsmålet: Hvordan lytter jeg til en port, hvor port nummeret er defineret ud fra den data der ligger i første pakke jeg modtager fra en specifik IP address.

Tror ikke det foregår på denne måde. Hvordan skal klienten vide hvilken port den skal læse den første pakke som indeholder den rigtigt port?

Det kan godt være at serveren forbinder til dig gennem forskellige porte (på serveren) men du modtager højst sandsynligt på den samme port hele tiden. Kan så ligeledes være at din klient sender på fra forskellige porte til forskellige porte, det ved jeg ikke.

Du er nød til at finde ud af hvilken port din klient bruger til at modtage. Hvis det er tilfældigt, kan jeg ikke tænke på nogen måde det kan løses på.



Jeg har kørt en portsniffer på computeren, mens jeg kører spillet. Og jeg har modtaget på 3 forskellige porte, de 3 gange jeg har gjort det. Mit problem er nemlig at jeg skal find porten, før jeg kan lytte på den...

Skal jeg lytte på ALLE porte, for at finde den som ip'en sender til? Det vírker jo som en temmelig krævende ting, for et program der skal køre i baggrunden mens man spiller.



Okay, du modtog ikke på 3 forskellige porte samtidig?
Hvis ikke så er der jo et rigtig stort problem som jeg ikke tror kan løses. Nej du kan ikke lytte på alle porte. Hvis du ikke kan finde ud af hvilken port vil blive brugt, bliver det nok meget besværligt at lave dit program.



Indlæg senest redigeret d. 18.10.2009 21:25 af Bruger #14645
Hmm Præcis min pointe...

Derfor jeg spørger om hjælp her... Hehe...

Men jeg undersøger sagen nærmere, og ser om det evt. kan være mig der har overset noget.

Ihvertfald indtil videre, tak for vejledningen :)



t