Según esta pregunta en Stack Overflow
- iptables está disponible en la distribución de fuentes de Android.
-
Los usuarios de dispositivos Android minoristas no pueden acceder a iptables binario. Ni siquiera el propio sistema operativo Android puede acceder a ese binario. Esto está codificado en Android. Muchos dispositivos tampoco tienen iptables en absoluto.
- La única forma de acceder al binario de iptables es construir tus propias imágenes de Android. Consulte http://randomizedsort.blogspot.com/2010/08/building-Android-and-linux-kernel-for.html . Una vez que te sientas cómodo con ese proceso, echa un vistazo a http://randomizedsort.blogspot.com/2011/03/porting-iptables-1410-to-Android.html .
iptables
es un módulo por defecto en aosp Puedes usar netfilter para escribir un código c que se encargue de ello.
Por ejemplo, puedes crear un proyecto Android, y escribir un archivo JNI, usar ndk-build para compilarlo, y luego adb empujar el ejecutable al sistema de archivos de Android para que se ejecute. Y en el extremo móvil, puede adb shell a él, directamente utilizar el comando iptables como un usuario Root, al igual que en Linux.
Para comprobar si su dispositivo soporta iptables:
Emita el siguiente comando en el shell ADB o en el emulador de terminal:
iptables -L -t nat
También puedes probar la beta de Aplicación IP Tables en Google Play para ver si hace lo que quieres.
También hay Muro para drogadictos que podrías probar. Soporta scripts que pueden ayudar, por ejemplo
$IPTABLES -A "droidwall" --destination "192.168.0.1" -j RETURN