마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 UDP 통신 서버 찾기

0 추천
안녕하세요 안드로이드 UDP 통신을 이용한 어플을 만들고있습니다.

같은 와이파이 망안에서 UDP통신을 이용하려고 하는데 현재는 서버와 클라이언트 IP를

고정으로 넣어서 사용하고 있습니다.

서버 아이피를 고정으로 안넣어주더라도 찾아서 연결하게 하고 싶은데 어떤것을 사용해야 할까요?
정폭폭 (140 포인트) 님이 2017년 3월 28일 질문

2개의 답변

0 추천

snmp 같은 프로토콜이 존재하긴 하는데,  이걸로 구현하긴 오버이구..

와이파이는 내부 주소기 때문에 앞의 9개 숫자가 동일합니다. 

예를 들어 폰의 ip가 192.168.0.2 일 경우 접속할 서버의 주소는 192.168.0.x 로 

폰의 IP인 2를 제외한 0~255 중 한 숫자입니다.

몇개 안되니  0~255로  연결을 시도 해보는게 제일 깔끔합니다. 최악의 경우 255 번만에 연결 될겁니다.

익명사용자 님이 2017년 3월 28일 답변
답변 감사합니다!
저도 질문 올리고 마지막 IP만 안바뀌는것을 발견해서
전체 다 돌려봐야하나..했는데  그렇게 해야할꺼 같네요!
0 추천
클라이언트에서 WIFI 연결시마다 IP주소를 서버로 저장하여

불러온 후 connect 하는것이 일반적인 방법이죠..

 

0~255 다 때려넣는건.....
개발자초심 (21,220 포인트) 님이 2017년 3월 28일 답변
그 처음을 알려면 0~255로 때려야합니다. 이후엔 말씀 처럼 기존에  접속되었던 주소로 먼저 요청 해 보고 안되면, 마찬가지로 0~255로 다시 검색 해 볼 수 밖에 없습니다.

이외 multicast 방식으로 요청하고, 서버에서 응답하는 방식도 가능은 한데, 안드로이드 단말이 오낙 다양해서 일부 단말의 경우 멀티캐스트 자체를 지원하지 않을 경우가 있고, 지원하더라도,  서버에서 대응해서 응답 해주는 로직이 추가로 들어가서 가장 간단한 방법을 말씀 드린겁니다.

실제로 ES 탐색기 같은데서 이런 방식을 사용하는 듯 합니다.
별도의 서버를 가지지 않고 한개의 안드로이드 기기에서 서버를 열고
다른 기기가 접속하려면  IP주소를 저장할 곳이 없지않나요 ?
SSDP 로 해야죠.. -_ - 이분들이..
...