Declaration serveur derriere un routeur [Résolu]

GordoCabron 34 Messages postés jeudi 16 décembre 2004Date d'inscription 14 mars 2007 Dernière intervention - 5 mai 2005 à 00:40 - Dernière réponse : yserver 203 Messages postés lundi 2 août 2004Date d'inscription 8 septembre 2006 Dernière intervention
- 6 mai 2005 à 06:06
Bonjour

Je programme un seveur sur un pc relie a internet via un routeur. La methode normale consiste a configurer le routeur pour faire une redirection d'un port vers mon ip local.
J'aimerais savoir comment faire pour eviter cela. Apres avoir vu des programme P2P fonctionner il me parait evident que c possible.
Prenons eMule par exemple, il se comporte comme client rapport au Serveur ed2k mais lorsqu'il est bien configure il est possible d'echanger des infos avec d'autres pc sur le net directement (donc sans passer par le serveur), dans ce cas la chaque client emule fait office de serveur. Hors dans la configuration du routeur j'ai juste a ouvrir les ports concernes mais pas besoin de preciser une redirection, eMule se declare tout seul.

Qeulqu'un sait-il comment ?
Merci
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
yserver 203 Messages postés lundi 2 août 2004Date d'inscription 8 septembre 2006 Dernière intervention - 6 mai 2005 à 06:06
3
Merci
C'est que ton routeur supporte l' uPnP, qui permet d'ouvrir dynamiquement et automatiquement les ports et effectuer le routage.

Bon courage.

Merci yserver 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de yserver
cs_aardman 1905 Messages postés mercredi 22 janvier 2003Date d'inscription 17 septembre 2012 Dernière intervention - 5 mai 2005 à 02:08
0
Merci
Salut,
Dans le cas du protocol edonkey/emule, c'est la structure du reseau tout entier qui a été prévue pour "contourner" le probleme, mais le probleme existe toujours (un client caché derriere un routeur, i.e en low-id ne joue JAMAIS le role du serveur lors de l'etablissement d'une connexion entre 2 clients, et c'est pour ca que la connexion entre 2 low-id est impossible).
Je ne pense pas qu'il soit possible de resoudre ce probleme autrement qu'en configurant correctement le routeur.
Commenter la réponse de cs_aardman
yserver 203 Messages postés lundi 2 août 2004Date d'inscription 8 septembre 2006 Dernière intervention - 5 mai 2005 à 09:59
0
Merci
Bonjour,
Je rejoins aardman. Pour héberger un serveur derrière un routeur, il faut nécessairement faire du NAT. Pour avoir un service qui tourne derrière un routeur il faut que ca soit ce service qui initie la connexion, se créer alors automatiquement des règles de routage. C'est ce qui se passe avec emule lors ce que le client a une low ID. Ce n’est plus alors le client qui reçoit des données mais le client qui demande des données.


<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />


Bon courage.
Commenter la réponse de yserver
GordoCabron 34 Messages postés jeudi 16 décembre 2004Date d'inscription 14 mars 2007 Dernière intervention - 5 mai 2005 à 10:51
0
Merci
Salut

Oui, ca c'est le cas du Low-Id mais pour le High-Id ? Mon projet comporte un serveur et des clients. Si je doit faire du nat pour mon serveurs ok pas de probleme, je me demais juste si je pouvais l'eviter pour mes clients.Mes clients devrait pouvoir interagir entre eux sans surcharger le serveur avec de la redireccion.
Sur mon router y'a une page de config 'Special Application' ou je donne juste les port a ouvrir pour tel ou tel appli, indiferement de la machine ou il doit etre utilise apres (pas sur 2 macines en meme temps bien sur). Que dois-je faire pour que mon prog passe par cette voie (comme emule mais sur un autre port bien-sur ). A premiere vu juste ouvrir un socket et se mettre a l'ecoute ne suffit pas (ou j'ai loupe un episode).

Merci
Commenter la réponse de GordoCabron
yserver 203 Messages postés lundi 2 août 2004Date d'inscription 8 septembre 2006 Dernière intervention - 5 mai 2005 à 12:23
0
Merci
Pour tes clients pas de port à router, si toutes les connexions passe par le serveurs. En revanche, tes clients ne pouront établire des connexions directes entre eux. Pour qu'ils le puissent ton applis doit etre à la foi client et serveur en soit pas de pb, mais pour que la partie serveur recoive des connexions au travère d'un routeur, le routeur devra être configuré correctement (routage du port).

Bon courage
Commenter la réponse de yserver
cs_aardman 1905 Messages postés mercredi 22 janvier 2003Date d'inscription 17 septembre 2012 Dernière intervention - 5 mai 2005 à 16:54
0
Merci
Salut,
Dans le cas l'emule:

Un client en High-ID c'est un client dont le routeur est bien configuré, ou un client qui n'est tout simplement pas derriere un routeur (connexion modem direct). Ce client, peut recevoir des accepter des connexions de n'importe quels autres clients.

En Low-ID, le client n'est pas accessible depuis l'exterieur.
Lorsqu'un client A (High-ID) veut se connecter a un client B (Low-ID), le client A envois un message a son serveur (qui contient l'id du client B), le serveur se charge de transmettre l'ip du client A au client B, et c'est le client B qui initialise la connexion vers A.

Ca resoud "partiellement" le probleme, mais ca remplace pas une bonne configuration du routeur..
Commenter la réponse de cs_aardman
GordoCabron 34 Messages postés jeudi 16 décembre 2004Date d'inscription 14 mars 2007 Dernière intervention - 6 mai 2005 à 00:07
0
Merci
Ok,Ok

Dabord merci a tous pour vos reponses.

Pour en revenir au High-ID, comment emule arrive t'il a le faire sans que j'ai besoin de redirection, sur mon router y'a une seule redirection c pour mon serveur ftp, mais j'ai 2 emule en High-Id (avec des port distinct evidement).

bye
Commenter la réponse de GordoCabron

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.