이제 4학년 올라가는 시점에서 휴학한 학생입니다.
해보고 싶은것도 많고 이대로 회사에 취직하게 되면 많이 부족할듯하여 휴학하고 여러가지 공부를 해보고 있습니다.
요즘은 작은 앱하나를 만들어 보면서 안드로이드 공부를 하고 있습니다.
개발도중 IP문제로 인해 NETMANIAS에 찾아오게 되었고
"LTE 망에서 IP 주소 할당 방법 II: 두 도시 모델"
이 게시글을 보고 질문드리게 되었습니다.
전문적인 글이지만 열심히 이해하려고 정독하였지만,,
사실 어려운 용어가 많아서 완벽하게 이해되지 않았는데요.. ㅠㅠ
제가 이해한 내용으로는 예를 들어서 제가 가지고 있는 스마트폰을 서울 지역에서 LTE를 On하게 되면
두가지 방식으로 IP주소를 할당하게 되는데 한가지는 P-GW가 Local IP pool에서 IP주소를 해당 지역에 맞는 IP주소를 할당하게되고
제 스마트폰을 들고 서울에서 부산으로 이동한 다음 LTE를 On 하게되면 그 지역에 맞는 IP 주소를 P-GW가 자동으로 할당을 해주게 된다라고 이해를 하였구요.
고정 IP주소라면 서울지역이든 부산지역이든 지역에 상관없이 HSS에 저장된 고정 IP주소를 할당되게 된다.
라고 이해를 하였습니다.
그래서 안드로이드를 통해서 간단하게 버튼하나만 누르면 현재 서울지역의 IP에서 부산지역에 있는 특정한 고정아이피를 가져와서
서울에 있지만 마치 부산에 있는것처럼 구현을 해보고 싶은데요.
안드로이드 개발자 센터의 Reference에서 network에 관한 여러 package를 찾아보았지만 P-GW나 HSS에 관한 내용을 찾지 못하였습니다.
그래서 글을 올립니다.
이 "LTE 망에서 IP 주소 할당 방법 II: 두 도시 모델" 에 나온 내용을 안드로이드 앱으로 만들려면 어떻게 해야할지 질문드립니다.
바쁘신와중에 긴글 읽어주셔서 감사합니다.!
이동통신단말(스마트폰)의 IP주소는 "LTE망에 접속하는 과정"에서 할당받게 되며(고정IP이든 유동IP이든), 단말은 LTE 망 접속을 위해 3GPP 표준에 정의된 메시지를 LTE망(MME)과 주고 받게 됩니다.
여기서 중요한 점은 이 "LTE 망 접속을 위해 단말이 생성하는 메시지"은 안드로이드 앱에서 제어/수행할 수 있는 레벨이 아닙니다. 단말제조사에서 개발하여 Kernel에 포함되기 때문입니다.
윤현호님. 답변 너무 감사드립니다. 안드로이드 앱에서 제어할 수 있는 부분이 아니군요. 그럼 안드로이드 kernel쪽을 제어하면 해결 할 수 있을까요?
단말의 IP는 이통사의 P-GW에서 결정하여 할당해 주는 방식이라 단말에서 제어는 불가능해 보입니다.
게다가 현재 우리나라에서는 모바일 단말에 고정IP를 제공해주는 서비스는 없는걸로 알고있구요.
단말단에서는 제어 방법이 없다고 봐야 겠지요..
"서울에 있지만 마치 부산에 있는 것 처럼" 만을 본다면 Android Level 에서 Mock Location 을 적용 하는 방법 이 있을것 같네요. 어떤 App 을 만들지 모르겠지만 만약 테스트를 위해 App 이 송수신 하는 Traffic 이 마치 부산에 위치한 네트워크 에서 송수신 되는 것 처럼 하려면 VPN 을 이용하는 방법이 있을 수 있습니다. 물론 누군가 님을 위해 부산에서 VPN 서버를 설치하고 Account 를 열어 줘야 하겠지요...