3g 환경에서 UDP 통신을 어떻게 해야할까요?

유훈이의 이미지

안드로이드 프로그래밍 중입니다.

3g로 인터넷을 연결하게되면

각 통신사에서 할당해주는 사설ip를 받게 되어지는데요~

이렇게 되니 UDP 통신을 일반적인 방법으론 할 수가 없더군요..

UDP를 위해 12121포트로 소켓을 연다해도~

통신사측이 공인아이피의 12121포트를 제 폰으로 포트포워딩을 해주는것이 아니니

외부에서 공인아이피:12121 로 UDP패킷을 보내봤자 제 폰까지 도달을 하지 못합니다.

제가 알기론 카톡이 UDP를 사용하여 구현된걸로 알기에 분명 해결법이 있는것 같은데

아무리 뒤져봐도 해결방법이 없군요... 혹시 아시는 분 계시면 도와주세요!!!

(*평소엔 생각 못했는데;; 사설ip로 포트포워딩이 안된 포트를 사용하여 TCP 서버의 소켓에

바인딩을 해버리면~ 소켓끼리 통신이 가능하지 않습니까? 이것도 어떻게 이루어지는건지

궁금합니다. 사설ip의 해당 포트까지 어떻게 binding이 되었을까요? 이게 왠지

UDP통신의 답일것 같은데...)

도움 요청합니다!! 고수분들 도와주세욥!!!!