java.net.ConnectException: Connection 거부 문제 해결 방법

1569 단어 javaConnectException
Socket 예외
클라이언트 예외

java.net.ConnectException: Connection refused: connect。
이 이상은 클라이언트가 new Socket(ip,port) 작업을 할 때 발생합니다. 이 이상이 발생하는 원인은 IP 주소가 있는 기계가 찾을 수 없거나 (현재 기계에서 지정한 IP 루트로 존재하지 않음), 또는 이 IP가 존재하지만 지정한 포트를 찾을 수 없습니다.이 문제가 발생하면 우선 클라이언트의 IP와port가 잘못 쓰였는지 확인하고, 정확하면 클라이언트 ping에서 서버에서 ping이 가능한지, ping이 가능한지 확인하고, (서비스 서버에서 ping을 금지하려면 다른 방법이 필요함) 서버에서 지정한 포트를 감청하는 프로그램이 시작되는지 확인합니다. 
java.net.SocketException: Socket is closed
일반적인 원인은 자기 측이 주동적으로 연결을 닫은 후 (Socket의close 방법을 호출한 후) 네트워크 연결에 대해 읽기와 쓰기를 하기 때문이다.
java.net.SocketException: (Connection reset 또는 Connect reset by peer: Socket write error)
첫 번째는 한쪽의 Socket이 닫히거나 자발적으로 닫히거나 비정상적으로 종료되어 닫히면 다른 한쪽은 데이터를 보내고 첫 번째 패키지는 이 이상을 일으킨다(Connectreset by peer).다른 하나는 한쪽이 종료되었지만 종료할 때 연결을 닫지 않았고, 다른 한쪽은 연결에서 데이터를 읽으면 이상을 던졌다(Connection reset).간단하게 말하면 연결이 끊어진 후의 읽기와 쓰기 조작으로 인한 것이다.
java.net.SocketException: Broken pipe.
SocketExcepton:Connectreset by peer:Socket write error를 던진 후 데이터를 계속 쓰면 이 이상을 던집니다.
(당분간은 측정되지 않았다)
java.net.BindException:Address already in use: JVM_Bind.
이 이상은 서버에서 new ServerSocket(port) (port는 065536의 정형값) 작업을 할 때 발생합니다.이상한 이유는 포트와 같은 포트가 시작되고 감청된 줄 알았기 때문이다.netstat Can 명령을 사용하면 Listending 상태의 포트를 볼 수 있습니다.점용되지 않은 포트만 찾으면 이 문제를 해결할 수 있다.
java.net.SocketException: Socket is closed
(클라이언트와 동일)
java.net.SocketException: (Connection reset 또는 Connect reset by peer: Socket write error)
(클라이언트와 동일)
java.net.SocketException: Broken pipe.
읽어주셔서 감사합니다. 여러분에게 도움이 되었으면 좋겠습니다. 본 사이트에 대한 지지에 감사드립니다!

좋은 웹페이지 즐겨찾기