2011-02-15 4 views
4

나는 그것에 대해 검색했지만 답변을 찾을 수 없습니다.ServerSocket에 연결을 시도하는 프로그램의 IP를 찾으십시오.

의 내가 다음 Java 코드가 있다고 가정 해 봅시다 :

누군가가 내 서버에 연결할 때까지 server.accept()이 프로그램 블록을 호출되고
ServerSocket serve = null; 

    try { 
     server = new ServerSocket(5567); 
    } catch (IOException e) { 
     System.err.println("Problem with port 5567"); 
     System.exit(1); 
    } 

    Socket clientSocket = null; 
    try { 
     clientSocket = server.accept(); 
    } catch (IOException e) { 
     System.exit(1); 
    } 

. 내 서버에 연결하는 프로그램/사용자의 IP를 찾을 수있는 방법이 있습니까?

답변

4

이 전면에 다시 보인다

Socket clientSocket = null; 
    try { 
     clientSocket = server.accept(); 
     System.out.println("Connected from " + clientSocket .getInetAddress() + " on port " 
      + clientSocket .getPort() + " to port " + clientSocket .getLocalPort() + " of " 
      + clientSocket .getLocalAddress()); 
    } catch (IOException e) { 
     System.exit(1); 
    } 
+0

을보십시오. 'from'ip : port는 getInetAddress() : getPort()에 의해 제공됩니다. 로컬 IP : 포트는 getLocalAddress() : getLocalPort()에 의해 제공됩니다. – EJP

+0

@EJP 당신이 맞습니다. 결정된. –

관련 문제