I
irgendjemand
Gast
wie der titel schon vermuten lässt habe ich probleme mit UDP Hole Punching
wie das ganze an sich funktioniert ist mir klar
A will eine UDP verbindung zu B aufbauen
B's NAT verhindert dies
A kontaktiert public server S und teil diesem mit das er eine verbindung zu B aufbauen will
S reicht diese information an B weiter
B sendet nun UDP pakete an A auf einem bestimmten port den B über S von A erhalten hat
B sendet wiederum seinen port an S der diesen A mitteilt
A sendet nun UDP pakete auf dem entsprechenden port an B
beide NAT erlauben nun eingehenden UDP verkehr von den entsprechenden IP adressen auf dem bestimmten ports ...
soweit die theroie ... die so ja auch bei allen diensten verwendet wird *skype , teamspeak , online spiele*
und das ganze funktioniert auch ansonsten könnte ich solche dienste ja nicht nutzen
ich habe natürlich schon google gefragt und so einige beispiel codes ausprobiert
einige beispiele hatten test-klassen welche einen entsprechenden test zu einem server im netz gemacht haben und lieferten als ergebnis ERFOLG
auch ein in C geschriebener test der TU München lieferte mir beim UDP Hole Punching test ERFOLG ...
im großen und ganzen : sowohl mein system als auch mein router sind fähig für UDP Hole Punching
mein problem :
wenn ich das ganze von meinem rechner aus testen will und versuche mit mir selbst eine UDP session aufzubauen scheitert dies
mitlerweile bin ich zur überzeugung gekommen das dieses problem durch meine router *d-link dir-100* verursacht wird da dieser offenbar probleme damit hat die richtigen daten in die NAT einzutragen bzw die IP-adressen nicht richtig erkennt
eigentlich müssten in meiner NAT zwei einträge stehen
UDP out *local ip*
ORT > *public ip*
ORT
UDP in *public ip*
ORT > *local ip*
ORT
doch genau das ist eben nicht der fall
da ich leider nur sehr begrenzte möglichkeiten und weder einen externen server für z.b. STUN noch ein zweites , externes netz mit NAT zur verfügung habe wollte ich mal die genrelle frage stellen :
könnte es wirklich an meinem router liegen und daran das dieser nicht darauf klar kommt das er pakete an sich selbst schicken soll welche als ziel bzw quelle seine public IP haben ?
zum testen habe ich folgenden source verwendet : NAT tunnel using UDP hole punching mehod in Java language Ma?karáda: masquerade.cz - GNU/Linux | TCP/IP sít? | a ostatní… *unten auf DOWNLOAD SOURCE*
wenn jemand lust hat das ganze mal mit mir übers netz zu testen -> ICQ : 345-169-219
wie gesagt : die grundlegende funktionsweise von UDP Hole Punching habe ich verstanden und verschiedene tools bestätigen mir auch das dieses mit meinem netz mit einem externen partner möglich ist ... nur ein test von "innen" scheitert offenbar am router
danke schon mal im vorraus über die zerbrochenen köpfe
*falls weitere infos benötigt : einfach sagen was noch fehlt*
wie das ganze an sich funktioniert ist mir klar
A will eine UDP verbindung zu B aufbauen
B's NAT verhindert dies
A kontaktiert public server S und teil diesem mit das er eine verbindung zu B aufbauen will
S reicht diese information an B weiter
B sendet nun UDP pakete an A auf einem bestimmten port den B über S von A erhalten hat
B sendet wiederum seinen port an S der diesen A mitteilt
A sendet nun UDP pakete auf dem entsprechenden port an B
beide NAT erlauben nun eingehenden UDP verkehr von den entsprechenden IP adressen auf dem bestimmten ports ...
soweit die theroie ... die so ja auch bei allen diensten verwendet wird *skype , teamspeak , online spiele*
und das ganze funktioniert auch ansonsten könnte ich solche dienste ja nicht nutzen
ich habe natürlich schon google gefragt und so einige beispiel codes ausprobiert
einige beispiele hatten test-klassen welche einen entsprechenden test zu einem server im netz gemacht haben und lieferten als ergebnis ERFOLG
auch ein in C geschriebener test der TU München lieferte mir beim UDP Hole Punching test ERFOLG ...
im großen und ganzen : sowohl mein system als auch mein router sind fähig für UDP Hole Punching
mein problem :
wenn ich das ganze von meinem rechner aus testen will und versuche mit mir selbst eine UDP session aufzubauen scheitert dies
mitlerweile bin ich zur überzeugung gekommen das dieses problem durch meine router *d-link dir-100* verursacht wird da dieser offenbar probleme damit hat die richtigen daten in die NAT einzutragen bzw die IP-adressen nicht richtig erkennt
eigentlich müssten in meiner NAT zwei einträge stehen
UDP out *local ip*
UDP in *public ip*
doch genau das ist eben nicht der fall
da ich leider nur sehr begrenzte möglichkeiten und weder einen externen server für z.b. STUN noch ein zweites , externes netz mit NAT zur verfügung habe wollte ich mal die genrelle frage stellen :
könnte es wirklich an meinem router liegen und daran das dieser nicht darauf klar kommt das er pakete an sich selbst schicken soll welche als ziel bzw quelle seine public IP haben ?
zum testen habe ich folgenden source verwendet : NAT tunnel using UDP hole punching mehod in Java language Ma?karáda: masquerade.cz - GNU/Linux | TCP/IP sít? | a ostatní… *unten auf DOWNLOAD SOURCE*
wenn jemand lust hat das ganze mal mit mir übers netz zu testen -> ICQ : 345-169-219
wie gesagt : die grundlegende funktionsweise von UDP Hole Punching habe ich verstanden und verschiedene tools bestätigen mir auch das dieses mit meinem netz mit einem externen partner möglich ist ... nur ein test von "innen" scheitert offenbar am router
danke schon mal im vorraus über die zerbrochenen köpfe
*falls weitere infos benötigt : einfach sagen was noch fehlt*