2010-03-15 3 views
0

내 RMI 응용 프로그램이 제대로 작동 함을 알 수 있습니다. 서버가 로컬 호스트와 LAN에있을 때 제대로 작동하지만 외부 RMI 서버에 연결할 때 스텁 호출을 시도 할 때 실패합니다.방화벽 뒤에있는 RMI 서버에 연결하고 있습니까?

서버가 로컬 호스트 (내부 IP - 192.168.1.73) 클라이언트가 외부 IP (45.4.234.56)를 지정하면 내부 서버로 전달됩니다. 이 문제를 어떻게 해결합니까?

감사

+0

잘 끝나지 않습니다. RMI 서버를 공개하고 싶지는 않습니다. –

답변

2

은 "간단한"접근 방식은 서버에 방화벽에서 특정 포트에서 IP 포워딩을 추가 할 수있는 네트워크 관리자를위한 것입니다.

RMI는 HTTP를 통한 터널링을 지원합니다 (옵션이 아닌 경우). 성능은 좋지 않지만 방화벽 친화적입니다.

http://java.sun.com/javase/6/docs/technotes/guides/rmi/faq.html#firewallOut

이 잘 착용 방법은 거의 설정이 필요하지 때문에 인기가있다, 당신은 프록시를 통해 HTTP 를 처리 할 수 ​​있도록 방화벽 환경 에 아주 잘 을 작동하지만 정규 허용 아웃 바운드 TCP 연결.

자바 RMI는 의도 서버에 정상 (또는 SOCKS) 연결을 실패하고는 HTTP 프록시 서버가 구성되어 있음을 통지하는 경우

, 그것은 터널 자바 RMI에 시도는 프록시 서버를 통해 을 요청합니다 하나는 시간입니다.

관련 문제