Java.net.SocketException: Connection reset by peer: connect

Frouf85 Messages postés 106 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 7 octobre 2004 - 1 juil. 2004 à 16:27
Frouf85 Messages postés 106 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 7 octobre 2004 - 12 juil. 2004 à 09:52
Bonjour,

bon j'ai un gros probleme :( :

Je fait une application rmi (ce n'est pas important), en fait l'application cliente utilise le port 1099 du serveur pour pouvoir se connecter (ca s'est le plus important). ces applications communique (normalement) par le net et le serveur est derrière un routeur.

J'ai configuré le routeur pour qu'il ouvre le port 1099 et pour qu'il redirige ce qu'il reçoit sur ce port vers la machine hébergeant le serveur sur le port 1099.

Jusque la à part quelques petit pb au début, maintenant je pense que l'application cliente trouve le serveur puisqu'elle me fait l'exception ci-dessous (avant ces modifs elle me faisait un time out).

Donc, ma question est que penser de tout ça et surtout comment le résoudre?

si vous avez la moindre petite remarque, je suis à l'écoute,
merci.

java.rmi.ConnectIOException: Exception creating connection to: 82.126.84.33; nested exception is: 
java.net.SocketException: Connection reset by peer: connect
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
at sun.rmi.server.UnicastRef.newCall(Unknown Source)
at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
at java.rmi.Naming.lookup(Unknown Source)



Frouf

7 réponses

wargre Messages postés 649 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 9 septembre 2004 7
1 juil. 2004 à 16:35
est ce que tu peut voir sur le routeur si le serveur n'essais pas de se connecter au client suivant un autre port
(je me souviens plus tres bien du RMI mais je pense qu'il utilise 2 ports minimum)
0
Frouf85 Messages postés 106 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 7 octobre 2004
1 juil. 2004 à 16:42
Je ne sais pas comment voir les port utiliser sur le routeur, c'est un assez vieux routeur et il ne possède pas beaucoup de fonction. Tu as une méthode pour vérifier?

Le port 1099 c'est pour le rmiregistry
Le port 1098 c'est pour le rmid (mais ne communique pas avec l'extérieur (enfin je pense)).
Sinon chaque objet possède un port mais je crois quil communique à l'extérieur via le rmiregistry.

je vais me renseigner sur les ports mpar défaut.

Frouf
0
wargre Messages postés 649 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 9 septembre 2004 7
1 juil. 2004 à 16:47
prend un truc comme ethereal et met le sur le serveur La tu regarde se qu'il envoie en exterieur vers ton client
0
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
1 juil. 2004 à 19:59
:big) Neodante :big)

Ou snisphere (www.securesphere.net) ... pas mal comme sniffer la présentation est mieux faite que ethereal ...
@+

[Responsable www.neogamedev.com]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
wargre Messages postés 649 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 9 septembre 2004 7
2 juil. 2004 à 09:23
effectivement meme backoffice mais les filtres ont l'air plus sympa a ecrire :)
0
Frouf85 Messages postés 106 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 7 octobre 2004
2 juil. 2004 à 09:37
Merci pour ces informations, ce sniffer m'a permis de détecter une erreur ICMP qui indique que le port n'est pas accessible.

Vu que je teste le serveur et le client sur une même machine et donc sur le même réseau local, il se peut que le routeur renvoie les informations pas forcément sur les bon ports.

Explications:

- Le client envoie sur un port (peu importe lequel, on va prendre le 1356 pour l'exemple), vers le port du routeur 1099.

- le routeur va alors vouloir rediriger ce qu'il reçoit sur ce port(1099) vers le serveur (sur machine sur le port 1099) comme je l'ai configuré avec les filtres du routeur.

- mais le protocole NAT se met entre les deux et vu qu'il voit que le client a envoyé un paquet vers le port 1099 à partir du port 1356, il va vouloir rediriger le paquet qu'il a reçu sur le port 1099 vers le port 1356.

Ce qui pose des problemes.

Je pense que c'est ça, c'est d'après un raisonnement personnel, si je me trompe n'hésitez pas à me le dire.

Je vais essayer de le faire marcher de l'extérieur ce week-end, je vous tiens au courant la semaine prochaine.

Frouf
0
Frouf85 Messages postés 106 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 7 octobre 2004
12 juil. 2004 à 09:52
Bon ben, je suis toujours bloqué!!!
Ca y est j'ai réussi à configurer le routeur mais en fait maintenant, je suis bloqué sur un pb de pur rmi, mon serveur renvoie son adresse ip locale au client, alors que je voudrais qu'il envoie l'adresse ip externe du routeur avec un numero de port, donc si vous vous y connaissez en rmi, n'hésitez pas.

En tout les cas merci pour vos conseils,

Frouf
0
Rejoignez-nous