다른 라우터에 연결된 컴퓨터에서 집에있는 한 컴퓨터의 ServerSocket에 연결하려고합니다. 나는 몇 시간 동안 인터넷 검색을 해왔고 이미 포트 포워딩을 설정했다. 이미 공개 IP 주소와 포트 번호로 소켓을 만들려고했지만 성공하지 못했습니다. 내 질문은 : 내 공용 IP 주소, 서버의 로컬 IP 주소 및 포트 번호를 알고 서버에 제대로 연결되도록 소켓을 어떻게 만듭니 까?다른 라우터의 클라이언트에서 서버에 연결
이 내가 시도 생성자는하지만 성공이다 : 사전에
new Socket(my_public_ip_address, port);
new Socket(my_local_ip_address, port); <- this one works only if both computers are connected to the same router
감사합니다!
1. 오류 출력/스택 추적을 추가 할 수 있습니까? 2. 공용 IP (공개 라우터 -> 클라이언트 및 공용 라우터 -> 두 번째 라우터 -> 서버)로 표시된 네트워크 내의 클라이언트 컴퓨터입니까? 라우터의 공용 인터페이스에 내부 네트워크의 공용 IP로 연결하지 못할 수도 있습니다. 서버의 내부 IP 또는 두 번째 라우터의 "공용"IP에 직접 연결을 시도 할 수 있습니다. – Konrad
여기에 나와있는 문제는 라우터에서 NAT를 사용하고있어 종단 간 연결을 수행 할 수없는 경우가 거의 확실합니다. Java 코드는이 코드와 아무 관련이 없습니다. 들어오는 연결을 허용하도록 라우터를 구성해야합니다. 수퍼 유저가 더 유용한 사이트가 될 수 있습니다. – chrylis
귀하의 빠른 답장을 보내 주신 많은 분들께 감사드립니다. 내일 모든 제안을 시도해 보도록하겠습니다! – andyfed