je voudrais récupérer l'adresse ip du client qui se connecte au serveur,
voila comment j'ai procédé dans mon code,

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
 
import java.io.*;
import java.net.*;
 
 
public class Serveur extends Object{
 
	protected ServerSocket socketEcoute;
	protected Socket socketService;
	protected InputStream entreeSocket;
	protected OutputStream sortieSocket;
 
 
	// constructeur, créer un Serveur
	public Serveur(int numPort){
		try{
		//création du socket d'écoute (port numPort)
		socketEcoute = new ServerSocket(numPort);
 
		}catch (Exception ex){
      			// erreur de connexion
      			System.err.println("Une erreur est survenue : "+ex);
      			ex.printStackTrace();
    		}	
	}
 
	// attente d'une connexion
	public void attenteConnexion(){
		try{
			// attente d'une demande de connexion
			socketService = socketEcoute.accept();
 
			System.out.println("Nouvelle connexion : " + socketService); // pour test...
 
			// récupération des flux d'entrée/sortie de la socket de service
			entreeSocket = socketService.getInputStream();
	        	sortieSocket = socketService.getOutputStream();		
 
		}catch (IOException ex){
          		// fin de connexion
          		System.out.println("Une erreur est survenue : "+ex);
          		ex.printStackTrace();
		}	
	}
 
	// methode qui retourne la chaine de caractere recue dans la socket ainsi que l'adresse de l'expéditeur, dans un 
	// tableau de String, 1er element du tableau = adresse, 2eme element = message 
	public String[] receptionMessage(){
 
		String mess="";
		String strIpClient="";
		String tabMess[]=null;
 
		tabMess=new String[2];
 
		try{
 
			// on charge le contenu du scoket dans un BufferedReader	
			BufferedReader br = new BufferedReader(new InputStreamReader(entreeSocket));
			// on lit le contenu du buffer
			mess = br.readLine();
 
 
		// afficher l'ip du client  ???
			InetAddress ipClient=socketService.getInetAddress();
			strIpClient=ipClient.getHostAddress();
 
 
			// System.out.println("reception message de "+strIpClient+" : "+mess);	// on fait deja cette affichage dans l'appelant									
 
		}catch (IOException ex){
          		// fin de connexion
          		System.out.println("Une erreur est survenue : "+ex);
  			ex.printStackTrace();
		}	
 
		tabMess[0]=strIpClient;
		tabMess[1]=mess;
 
		return tabMess;	
 
	}
 
...
// afficher l'ip du client ???
InetAddress ipClient=socketService.getInetAddress();
strIpClient=ipClient.getHostAddress();


Mais hélàs j'ai l'impression que c'est l'IP du serveur et non celle du client
que je récupère....