Solución avanzada de problemas de red en iPad y iPhone
Por George Gonzalez
- Lectura en 3 minutos - 450 palabrasDe vez en cuando experimentamos un problema de red en un dispositivo iOS o iPadOS que requiere una investigación más profunda. Por ejemplo, un cliente VPN que no se conecta y tiene una capacidad de registro limitada. Por otro lado, el equipo de red está diciéndonos: “No somos nosotros, es el cliente”.
La única forma de resolver esto es con información confiable. En un dispositivo macOS, iniciaría tcpdump y obtendría lo que necesito, pero ¿qué pasa con iOS y iPadOS? Bueno, la funcionalidad está ahí, es posible hacer una captura de paquetes en dispositivos móviles. Simplemente no es una característica llamativa de la que se hable a menudo.
Lo que se necesita
- Dispositivo macOS
- Cable USB-C o USB a Lightning
- Xcode
- Terminal
- Conocimiento de tcpdump, wireshark , etc.
Como hacerlo
Podemos utilizar rvictl para este propósito. La “Herramienta de interfaz virtual remoto” se utiliza para controlar capturas de paquetes remotos en dispositivos conectados y generalmente se encuentra en /Library/Apple/usr/bin/rvictl
Este binario se instala como parte de Xcode y los archivos relacionados para el desarrollo móvil. Una vez instalado, el dispositivo debe reiniciarse, ya que esto cargará el proceso rpmuxd. Si este no está cargado, puede recibir el muy críptico e inútil mensaje bootstrap_look_up(): 1102 al intentar ejecutar rvictl.
- Conecte el dispositivo móvil al sistema host macOS con el cable apropiado.
- Encuentre el UDID del dispositivo. Esto se puede hacer abriendo el Finder, haciendo clic en el dispositivo conectado y luego haciendo clic en el texto debajo del nombre del dispositivo hasta que muestre el UDID.
- En terminal escriba:
sudo rvictl -s 00000000-000000000000000E
*Presione enter y debería ver:
Starting device 00000000-000000000000000E [SUCCEEDED] with interface rvi0
- Luego comience la captura de paquetes.
sudo tcpdump -vv -i rvi0 -w iPad01.pcap
- Ahora tendrá un archivo pcap que puede abrir con una aplicación como Wireshark para análisis mas detallado.
¿Qué tal de solo ver “tráfico web”?
A veces, una captura de paquetes es excesiva. Si todo lo que necesita es el equivalente al “Modo desarrollador” en Safari, entonces ese es un proceso más fácil.
- Conecte el dispositivo móvil a macOS
- Habilite “Web Inspector” en el dispositivo móvil yendo a Configuración > Safari > Avanzado > Web Inspector
- Inicie Safari en el dispositivo macOS
- Habilite el modo de desarrollador en Safari
- Seleccione el dispositivo móvil en el menú Desarrollador.
- Esto abrirá Web Inspector en el dispositivo macOS y podrá ver y grabar el tráfico web.
¿Y solo ver los logs?
Si abre la aplicación Consola y selecciona el dispositivo móvil conectado, podrá ver los logs de la misma manera que en macOS.
Usando uno o una combinación de estos métodos, podrá resolver incluso los problemas de red más complejos con iPads y iPhones.