Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 10/04/2007, à 16:40

Rodriguez

[Java]Comment obtenir l'adresse ip d'un client ?[Résolu]

Bonjour,

je suis en train d'écrire un programme client/Serveur.
Dans le main de la classe Client, j'ai :

Dernière modification par Rodriguez (Le 11/04/2007, à 23:17)

Hors ligne

#2 Le 10/04/2007, à 16:48

Nicolas2b

Re : [Java]Comment obtenir l'adresse ip d'un client ?[Résolu]

Désolé, je ne répond pas à ta question, mais pourquoi as tu besoin de l'adresse IP du client ?
J'ai aussi fait un serveur en Java, et tout ce que je voulais envoyer au client, je le mettais ds les flux que l'on récupere avec le socket  :

public InputStream getInputStream() throws IOException
public OutputStream getOutputStream() throws IOException

Nicolas.

PS : je me trompe peut être sur l'utilisation que tu veux faire de ton programme.
Le mien était un serveur HTTP.

Dernière modification par Nicolas2b (Le 10/04/2007, à 16:49)


Ubuntu Gutsy sur ASUS A6JA Q016H
2 Go de RAM
ATI X1600
Core Duo 1,8 GHz

Hors ligne

#3 Le 10/04/2007, à 17:07

Rodriguez

Re : [Java]Comment obtenir l'adresse ip d'un client ?[Résolu]

Parce que je suis en train de coder un p2p.
J'ai besoin de savoir les clients à contacter pour récupérer les fichiers souhaités.

Hors ligne

#4 Le 10/04/2007, à 17:41

Nicolas2b

Re : [Java]Comment obtenir l'adresse ip d'un client ?[Résolu]

D'accord, donc mon idéé n'etait pas correcte.
Désolé sad


Ubuntu Gutsy sur ASUS A6JA Q016H
2 Go de RAM
ATI X1600
Core Duo 1,8 GHz

Hors ligne

#5 Le 10/04/2007, à 17:42

ePi

Re : [Java]Comment obtenir l'adresse ip d'un client ?[Résolu]

salut,

essaye un

client_socket.getInetAddress()
ou
client_socket.getRemoteSocketAddress()

sinon une petite remarque, d'après ton code tu lances un thread pour chaque connection avec un client. Pour de meilleurs perf il plutôt conseillé de créer une seule socket pour tout le monde et d'utiliser ensuite select() pour savoir si tu reçois des données sur ta socket (et de quel client).

[edit] ca te fera donc un seul thread pour tes X clients [/edit]

Dernière modification par ePi (Le 10/04/2007, à 17:47)

Hors ligne

#6 Le 10/04/2007, à 17:55

DoK

Re : [Java]Comment obtenir l'adresse ip d'un client ?[Résolu]

essaie :

request.getHeader("X-Forwarded-For") == null ? request.getRemoteAddr() : request.getHeader("X-Forwarded-For")

Hors ligne

#7 Le 10/04/2007, à 18:28

Rodriguez

Re : [Java]Comment obtenir l'adresse ip d'un client ?[Résolu]

ePi a écrit :

salut,

essaye un

client_socket.getInetAddress()
ou
client_socket.getRemoteSocketAddress()

sinon une petite remarque, d'après ton code tu lances un thread pour chaque connection avec un client. Pour de meilleurs perf il plutôt conseillé de créer une seule socket pour tout le monde et d'utiliser ensuite select() pour savoir si tu reçois des données sur ta socket (et de quel client).

[edit] ca te fera donc un seul thread pour tes X clients [/edit]

Ca ne fonctionne pas.

Hors ligne

#8 Le 10/04/2007, à 20:05

ePi

Re : [Java]Comment obtenir l'adresse ip d'un client ?[Résolu]

pourrais tu afficher ce que te donne un System.out.println(getInetAddress()) stp ?

Hors ligne

#9 Le 11/04/2007, à 11:18

Rodriguez

Re : [Java]Comment obtenir l'adresse ip d'un client ?[Résolu]

Salut,

en faite tu avais raison. J'obtenais la même ip car je faisais ça en local c'est pour ça que le client et le serveur avaient la même ip.

Hors ligne