Cliente: http://pastebin.com/0vLsiiBQ
Servidor: http://pastebin.com/Y751Ty0x
Lo que hace es dividir el mensaje en partes de 2 bytes, y envía cada par como identificador de cada ping.
Los mensajes siempre se envían del cliente al servidor, y los dos necesitan permisos de root.
Los parámetros del servidor son:
[-f <dump file>] [-d | -s] [-1] | -h
-f : Guarda los datos en un archivo
-d : Muestra información de debugging
-s : No muestra ninguna salida por pantalla
-1 : Solo muestra un mensaje (y después se cierra)
-h : Muestra esto
Los del cliente son:
-s <ip de origen> -d <ip de destino> [-t <nº de hilos>] [-p <paquetes/hilo>] [-b <datos a enviar>] [-r <nº de repeticiones de los datos>] [ -f <archivo a enviar>] [ -u ]
Con -u : los datos enviados (no los identificadores) son aleatorios
o
-h : muestra esto
Si no se especifica al cliente el archivo a enviar, se introducirá por teclado (saldrá '>>>' como prompt).
Con -f y -1 se pueden enviar "facilmente" archivos completos.
Los comandos para hacer la transferencia
Envío en curso
Envío completado
Al menos en local (solo he podido probarlo en localhost), la información llega intacta... aun así, por seguridad añadí un pequeño retardo entre los mensajes ( 0.01s ) para evitar en lo posible que haya problemas.
MD5 Correcto
Hasta otra
gracias mungu
ResponderEliminarLo he estado probando con Mari remotamente pero creo que no funciona por que mi router dropea los pings ahora mismo.
ResponderEliminarEl caso es que esto podria servir perfectamente para que dependiendo del contenido de un ping tu equipo realice una tarea determinada.
implementar eso para android o para otros dispositivos podria ser interesante de forma que fuesen un par de comandos personalizados y una ip o dominio al que enviar esos pings-ordenes.
En fin, la idea es cojonuda aunque por el momento solo la he visto funcionar en local.
si, la verdad estaría interesante usarlo como control remoto :D.
ResponderEliminarEl problema es que se necesitan permisos de root para lanzar los ping, habría que ver si android da acceso a esto, sino sería necesario jailbrakearlo
gracias por confirmar que funciona