2010-01-12 2 views
1

저는 TCP를 사용하여 통신하는 클라이언트/서버 응용 프로그램을 만들 때 Java를 사용하고 있습니다. 클라이언트가 실행중인 네트워크에는 클라이언트가 서버에 연결하지 못하도록하는 아웃 바운드 방화벽이 있습니다. 이 방화벽을 통해 TCP 연결을 만드는 방법/해결 방법이 있습니까?제한된 발신 방화벽을 통한 TCP 연결

포트 80, 443 및 113과 같이 열려있는 일반 포트를 사용하려고했지만 방화벽이 만들어지면 (아마도 비 프로토콜 패킷을 감지하여) 연결이 끊어지는 것처럼 보입니다.

클라이언트 소프트웨어를 외부 웹 사이트에서 호스팅되는 Java 애플릿으로 실행하는 방법도 있지만 아웃 바운드 방화벽이이 연결을 계속 차단할 수 있는지는 잘 모르겠습니다.

도움을 주시면 감사하겠습니다.

+2

주위에 방법이 있다면 방화벽이별로 없을 것입니다 ... – skaffman

답변

0

http 또는 https를 사용하여 통신을 시도 할 수 있습니다. 이 프로토콜을 터널링하면 방화벽이 트래픽을 통과시킬 수 있습니다.

+0

HTTP (80) 및 HTTPS (443)를 통해 연결을 시도했지만 방화벽이 연결을 차단/삭제하는 경우도 있습니다. 이 포트들을 통해. – Jephir

+1

실제 HTTP 요청을하려고 했습니까? 앞에서 말했듯이 방화벽은 패킷 검사를 기반으로 연결을 끊을 수 있습니다. 연결을 할 수 있다고 표시했으나 사용을 시작하면이 연결은 끊어집니다 (올바르게 이해 한 경우). 따라서 실제 http 요청을 보내고 http 응답으로 응답해야합니다. Wikipedia는이를 수행하는 방법을 보여줍니다 : http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol. – villintehaspam

0

사용자가 인터넷에 액세스 할 수 있고 포트 80/443을 통해 텔넷 연결할 수 없다고 가정하면 사용자가 브라우저에 구성된 HTTP 프록시를 통해 연결한다는 것을 의미합니다. HTTP 프록시를 통해 다양한 터널링 방법을 연구 할 수는 있지만 ... 매우 불안정한 해킹이 될 수 있습니다.

시스템 관리자에게 문의하여 필요 사항을 설명하고 제안 내용을 확인하는 것이 좋습니다.