Socket en C, communication entre machines distantes

Résolu/Fermé
Xioth - 25 janv. 2014 à 13:54
 Xioth - 25 janv. 2014 à 16:58
Bonjour,

Mon problème est le suivant, je cherche à faire communiquer 2 programmes entre eux, alors qu'ils ne sont pas sur le même ordinateur. Par conséquent, je dois passer par Internet. Avant ça, j'ai quand même testé en local (127.0.0.1) les deux programmes, qui fonctionnaient parfaitement, mais aussi en LAN par acquis de conscience (entre 2 PC relié sur la même Box). Les deux fois, aucun problème.

Je me lance donc dans la création d'une IP "Fixe" via No-IP, j'ouvre les ports 5151 sur ma box que je redirige à l'adresse IP local du PC avec le Server. Et je teste, premier fail "La fonction connect a echoue()". Je désactive temporairement le Firewall de Windows, et je recommence. Encore le même message. Et depuis, je n'arrête pas de faire des tests, je modifies les options du Firewall, j'ai même été jusqu'à recoder le server.c pour qu'il soit fonctionnel sur Linux (c'était pas mon idée à la base, d'où le fait d'avoir uniquement mit Winsock), toujours et encore le même soucis. J'ai essayer de passer la machine Host en DMZ via la Box, encore et toujours le même problème.

J'avoue que je commence à avoir quelque problème d'imagination sur quelle stratégie tordue pourrais-je encore employer pour faire certains tests.

Là où ça devient tout de même assez curieux, c'est quand j'utilise Telnet (Via Putty), et que je me connecte à mon serveur, même Telnet n'arrive pas à se connecter (Connection Time Out). Je suis sûr d'avoir zappé quelque chose (peut-être même quelque chose de simple), c'est pourquoi je me tourne vers vous, si vous avez une idée d'où peux venir le problème, parce que ça doit bien faire 2 ou 3 jours que je me casse le crâne à chercher (en Solo et via l'amis Google (en Anglais et en Français)), et rien ne passe.

Je vous remercie. :)

PS : Les liens pastebin de "mes" deux codes sources :
Client.c : http://pastebin.com/bUASmPQx
Server.c : http://pastebin.com/wWikLTxL

1 réponse

Résolu. J'ai bidouillé sur le No-Ip, et j'ai fini par trouvé. Au final c'était ni le code, ni le PC, mais le No-Ip qui était mal configuré. :)
-1