투케이2K

150. (TWOK/ERROR) [Android] 안드로이드 모바일 핫스팟 테더링에 연결된 클라이언트 IP 주소 확인 에러 - (Hotspot Connect Client Ip) 본문

투케이2K 에러관리

150. (TWOK/ERROR) [Android] 안드로이드 모바일 핫스팟 테더링에 연결된 클라이언트 IP 주소 확인 에러 - (Hotspot Connect Client Ip)

투케이2K 2023. 6. 4. 17:57

[환경 설정 및 설명]

프로그램 : AndroidStudio

설 명 : [Android] 안드로이드 모바일 핫스팟 테더링에 연결된 클라이언트 IP 주소 확인 에러

 

[에러 원인]

1. 안드로이드 OS 11 이상 부터 기존에 사용하던 핫스팟 테더링에 연결 된 클라이언트 IP 확인 시 퍼미션 접근 권한 에러가 발생하는 이슈

- 기존 방법 [1] : 안드로이드 커맨드 명령어를 사용해 추출 Runtime.getRuntime().exec("ip neigh");

- 기존 방법 [2] : 파일을 읽어 데이터 파싱 new FileReader("/proc/net/arp")

 

[해결 방법]

1. Enumeration<NetworkInterface> 를 사용해 현재 핫스팟이 활성화된 부모 IP 주소 획득 실시

2. 부모 IP 주소에서 C 클래스까지 데이터 파싱 수행 (ex : 192.168.145. / 마지막은 제외)

3. Runtime.getRuntime().exec() ping 핑 명령어를 사용해 1 ~ 255 까지 반복문 수행

4. 정상적으로 ping 이 날아 오는 경우 부모에 연결된 자식 클라이언트 장치 IP 조합 실시 (부모 IP 와 + 핑 체크에서 성공한 자식 IP : ex - 192.168.145.51)


 

반응형
Comments