Selon cette question sur Stack Overflow
- iptables est disponible dans la distribution des sources d'Android.
-
Les utilisateurs de dispositifs Android de détail ne peuvent pas accéder à iptables binaire. Même Android OS lui-même ne peut pas accéder à ce binaire. Ceci est codé en dur dans Android. De nombreux appareils ne disposent pas non plus d'iptables.
- La seule façon d'accéder au binaire d'iptables est de construire vos propres images Android. Consultez http://randomizedsort.blogspot.com/2010/08/building-Android-and-linux-kernel-for.html . Une fois que vous vous sentirez à l'aise avec ce processus, allez voir http://randomizedsort.blogspot.com/2011/03/porting-iptables-1410-to-Android.html .
iptables
est un module par défaut dans aosp vous pouvez utiliser netfilter pour écrire du code c pour gérer cela.
Par exemple, vous pouvez créer un projet Android, et écrire un fichier JNI, utiliser ndk-build pour le compiler, puis adb pousser l'exécutable dans le système de fichiers Android pour qu'il s'exécute. Et du côté du mobile, vous pouvez utiliser le shell adb, utiliser directement la commande iptables en tant qu'utilisateur racine, comme sous Linux.
Pour vérifier si votre appareil prend en charge iptables :
Exécutez la commande suivante dans le shell ADB ou dans l'émulateur de terminal :
iptables -L -t nat
Vous pouvez également essayer la version bêta de L'application Tables IP sur Google Play pour voir s'il fait ce que vous voulez.
Il existe également Mur de droïdes que vous pourriez essayer. Il prend en charge des scripts qui peuvent être utiles, par exemple
$IPTABLES -A "droidwall" --destination "192.168.0.1" -j RETURN