cs_Booster
Messages postés235Date d'inscriptionmercredi 30 octobre 2002StatutMembreDernière intervention 6 octobre 2009
-
27 sept. 2007 à 19:12
cs_Booster
Messages postés235Date d'inscriptionmercredi 30 octobre 2002StatutMembreDernière intervention 6 octobre 2009
-
28 sept. 2007 à 11:23
Bonjour à tous,
J'ai réalisé un programme test qui envoi un trame udp et qui en recoi une.
Ce programme marche trés bien! Testé et retesté avec les configs suivantes:
- 1) Reseau local : OK
- 2) Internet : MACHINE_1 et MACHINE_2 sur routeur : OK
- 3) Internet : MACHINE_1 sur modem, MACHINE_2 sur routeur OK
- 4) Internet : MACHINE_1 relié à MACHINE_3 qui lui même est sur modem (Connexion partagé avec windows), MACHINE_2 sur routeur : PROBLEME
Donc l'envoi de trame merde lorsqu'un gars est derriere une machine qui partage ça connexion, et la question c'est POURQUOI ?
Les trucs étranges:
Prenons donc la config 4) Lorsque MACHINE_1 envoi une trame à MACHINE_2 la trame est reçu, maintenant lorsque MACHINE_2 veu répondre à MACHINE_1, la trame n'est jamais reçu. De plus MACHINE_2 va recevoir un -1 si elle fait un recv par la suite ! (Pourquoi ce -1 au moment du recv ?)
J'espere que j'ai était clair car c'est difficile à expliquer et trés bizare de plus je répéte que l'application marche parfaitement ...
Merci d'avance de vos réponses ;)
Ps: Si le problème est "normal" ce qui ne m'étonnerais pas puisqu'en UDP on est en mode non connecté du cou c'est MACHINE_3 qui reçoi la trame et qui croi quelle est pour elle...donc la trame n'est pas transmisse à MACHINE_2 ! Comment puis je évité ce problème sans passer par TCP ?
luhtor
Messages postés2023Date d'inscriptionmardi 24 septembre 2002StatutMembreDernière intervention28 juillet 20086 28 sept. 2007 à 11:13
Euh je sais pourrais pas trop t'aider, mais as tu regarder si déja la machine 3 reçoit les datagrames UDP que la machine 2 envoit. Si oui, ca signifie que la machine 3 fait mal son boulot en ne redirigeant pas le paquet UDP.
Mais en meme temps, comment peux tu envois ton paquet de la machine 3 vers la machine 1, puisque la machine 1 n'est pas sur internet, donc son adresse ip n'est pas disponible sur internet. Il faudrait l'envoyer a la machine 2 et lui dire de l'envoyer à son tour vers la machine 1.
cs_Booster
Messages postés235Date d'inscriptionmercredi 30 octobre 2002StatutMembreDernière intervention 6 octobre 2009 28 sept. 2007 à 11:23
Voila c'est exactement le problème c'est que la machine_1 ne posséde pas d'adresse IP internet elle est bien connecter sur le net mais à traver la machine_3 donc possède la meme adresse IP internet que la machine_3. De plus la machine_3 est incapable de savoir que la trame qui est envoyer depuis la machine_2 est pour la machine_1 totalement logique puisque je suis en udp... c'est tout la le problème et enfet la question c'est y à t'il possibilité de passer outre se problème et en restant en UDP ^^ (Je sais pas par encapsulation ou autre ?) et bien entendu sans rien installer sur la machine_3 ... :D Je crois que je peu me répondre seul c'est non ^^ Bon enplus de toute manière ya un double hic que je viens de m'apercevoir pour mon projet ! En gros ce topic sert à rien et je suis obliger de passer par du tcp arf ! les problèmes ne font que commencer !!!!
Merci à toi ! (Parce que ce problème est inrésolvable ...)