내 안드로이드 장치에서 호스팅되는 HTTP 서버가 있습니다. 무선 라우터 뒤에있는 가정용 와이파 이로 연결되어 있어도 인터넷에서 액세스 할 수 있기를 바랍니다.NATed HTTP 서버에 액세스
또한 인터넷에서 라우터 구성에 액세스 할 수 없기 때문에 라우터에서 정적 포트 포워딩을 구성하는 것은 옵션이 아닙니다.
어떤 옵션이 있습니까?
내가이 시도 :안드로이드 앱은 안드로이드 장치에서 HTTP 요청을 전송 특정 포트 번호에서 (8080 말), 가정을 통해 인터넷에서 웹 서버 (로컬 IP 주소를 192.168.0.1 말) WIFI,
라우터는 원본 주소를 공개 IP 주소 (예 : 111.100.45.65)로 수정하고 원본 포트 번호를 임의의 임의의 포트 번호 (예 : 39824)로 수정하고 동적 NAT 테이블에 항목을 만듭니다.
내부 IP 내부 포트 외부 포트 192.168.0.1이 항목이어야 몇 시간 동안 유지됩니다 내 이해 당으로서 8080 39824
. 인터넷상의 웹 서버는 원본 IP와 포트를 각각 111.100.45.65와 39824로보고합니다.
android 앱에서 인터넷의 웹 서버로 HTTP 요청을 보낸 후 장치의 포트 8080에서 HTTP 서버를 실행합니다. 이제 인터넷에서 포트 39824에있는 111.100.45.65 주소로 HTTP 요청을 보내려면 장치에서 실행중인 HTTP 서버가이를 받아야합니다 (라우터는 동적 NAT 테이블에서 요청을 해결하고이를 내 장치로 전달합니다) .
하지만 어떤 이유로이 요청이 해결되지 않습니다. 모든 포인터.
정말 VPN을 사용하고 싶습니다. –
VPN도 옵션이 아닙니다.나는 TCP 구멍 펀칭을 달성하기 위해 노력하고 있습니다. 나는 안드로이드 (라우터 뒤에)의 특정 포트에서 공개 서버에 연결하고 있습니다. 또한, 내 애플 리케이션의 동일한 포트에서 다른 스레드에서 듣고 있어요. 공개 서버가 이제 라우터 IP와 포트를 인식하고 있기 때문에 스레드가 공개 서버에서 클라이언트의 HTTP 요청을받을 수 있어야합니까? – rohitverma