2016-08-22 13 views
0

웹 페이지를 호스팅하는 Android 장치에 응용 프로그램이 있습니다. 안드로이드 핫스팟을 통해이 장치를 실행하는 장치에 연결하면 기본 IP보기 페이지를 사용할 수 있습니다.모든 테 더링 데이터에서 인터넷을 비활성화하는 방법

이 페이지는 인터넷의 데이터입니다. 안드로이드 장치는 인터넷에 접속할 필요가 있습니다. 그러나 장치의 핫 스폿에 연결하는 사용자가 인터넷에 액세스 할 수 없도록하고 싶습니다. 안드로이드 핫스팟과 나가는 데이터 연결간에 데이터 브릿지를 끊는 최선의 방법이 무엇인지 궁금 해서요. (현재 이더넷을 사용하고 있습니다.)

해결할 수있는 것이므로 펌웨어 자체의 소스 파일을 편집 할 수있는 솔루션을 선호합니다. 나는 근원과 뿌리에 대한 완전한 통제력을 가지고있다.

미리 감사드립니다.

+0

:

그래서 응용 프로그램, 당신은 함께 명령 줄 스크립트를 실행할 수 있습니다. –

답변

0

그래서 나는 안드로이드 4.2.2에 설치되어있는 iptables를 보도록 조언했다. 그러나이 솔루션은 루트가있는 경우에만 작동합니다.

는 다행히 그것은이를 보여줍니다

Chain natctrl_FORWARD (1 references) 
pkts bytes target  prot opt in  out  source    destination 
0  0 natctrl_tether_counters all -- eth0 wlan0 0.0.0.0/0   0.0.0.0/0   [goto] state RELATED,ESTABLISHED 
0  0 DROP  all -- wlan0 eth0 0.0.0.0/0   0.0.0.0/0   state INVALID 
0  0 natctrl_tether_counters all -- wlan0 eth0 0.0.0.0/0   0.0.0.0/0   [goto] 
0  0 DROP  all -- *  *  0.0.0.0/0   0.0.0.0/0 

이 체인이 무선 랜을 이더넷의 데이터를 전달하는 것이다. 내가 달릴 경우에 따라서 명령 줄에서 다음

의 iptables -I natctrl_FORWARD 1

그냥 상단에 DROP을두고 멀리 모든 트래픽을 발생 DROP -j. 제가 4.2.2을 실행 끼 었어 언급해야

Runtime.getRuntime().exec(new String[]{"su", "-c", "iptables -I natctrl_FORWARD 1 -j DROP"});