Saltar al contenido principal

Herramientas de solución de problemas de red

La interfaz web no tiene una herramienta de ping o traceroute integrada, así que para cualquier cosa más allá de "el enlace está activo", el acceso SSH y estas herramientas de línea de comandos son el camino. Esta página recorre capa por capa, desde la tarjeta de red hasta el DNS, con las herramientas que esta unidad realmente trae. La mayoría vienen instaladas por defecto; unas pocas son paquetes opcionales, indicado donde corresponda.

Interfaces y estado del enlace​

TareaComando
Listar direcciones de cada interfazip -4 addr, ip -6 addr
Estado de la interfaz y de la portadoraip link
Velocidad del enlace, dúplex, y si un cable realmente se detectaethtool <interfaz>
Throughput en vivo por interfazbwm-ng

ethtool es la forma más rápida de distinguir un problema de cableado o de autonegociación de cualquier otra cosa más arriba en la pila — compruebe Link detected y Speed antes de mirar cualquier otro lado si toda una interfaz parece estar fallando.

El segmento local: ARP​

TareaComando
Ver lo que la unidad ya resolvió en el segmento localip neigh
Preguntarle activamente a un host específico si respondearping -I <interfaz> <ip>
Barrer toda una red local para ver qué hay realmente presentearp-scan --interface=<interfaz> --localnet

arp-scan es la herramienta para "hay una IP duplicada en esta red" o "qué está realmente conectado a este switch", ya que pregunta a nivel de ARP y obtiene respuesta incluso de hosts que bloquean ICMP.

Enrutamiento y enrutamiento por políticas​

TareaComando
Tabla de enrutamiento principalip route
Qué ruta tomaría realmente un destino específicoip route get <destino>
Reglas de enrutamiento por políticas (muy usadas cuando SD-WAN está configurado)ip rule
Una tabla de enrutamiento específica por númeroip route show table <id>

Cuando SD-WAN está activo, mwan3 mantiene sus propias tablas y reglas de enrutamiento por WAN — ip rule muestra qué tráfico se dirige a qué tabla, y ip route get <destino> es la forma más rápida de confirmar por cuál WAN saldrá realmente un destino determinado. Para el estado en que mwan3 mismo cree que está cada enlace, vea la sección de comandos de diagnóstico en la Referencia de comandos de servicios y registros.

Alcanzabilidad​

TareaComando
Alcanzabilidad básicaping <host>
Alcanzabilidad con un tamaño de paquete específico, sin fragmentar (prueba de MTU/PMTU)ping -M do -s <tamaño> <host>
Alcanzabilidad a nivel de ARP, sin enrutamiento IP de por medioarping -I <interfaz> <ip>

Esta unidad trae el ping completo de iputils, no el reducido de BusyBox, específicamente para que -M do -s funcione — es la forma estándar de encontrar la MTU real de una ruta, algo que importa sobre todo en túneles VPN: envíe tamaños cada vez más pequeños hasta que uno deje de necesitar fragmentación, y esa es la MTU utilizable para ese túnel.

DNS​

TareaComando
Resolver un nombre usando el propio resolvedor de la unidaddig <nombre>
Resolver usando un servidor específico, sin pasar por el resolvedor de la unidaddig @<servidor> <nombre>
Rastrear la resolución desde la raízdig +trace <nombre>
Resolver mediante DNS sobre HTTPSdig +https <nombre>

Consultar @1.1.1.1 u @8.8.8.8 directamente le dice si un nombre realmente no resuelve, o si el problema es específico del resolvedor de esta unidad — filtrado de DNS, un reenviador mal configurado, o el propio dnsmasq. Vea la Referencia de comandos de servicios y registros para reiniciar dnsmasq y leer su registro.

Captura de paquetes​

tcpdump -i <interfaz> -n host <ip> and port <puerto>

Algunos filtros que vale la pena conocer más allá de lo básico:

Qué quiere verFiltro
Solo un hosthost <ip>
Solo un puerto, en cualquier direcciónport <puerto>
Tráfico por un túnel VPN específico-i tun-nsplug, -i tun0, o el nombre que tenga la interfaz del túnel
Guardar en un archivo para análisis fuera de línea (por ejemplo en Wireshark)-w /tmp/captura.pcap

Capturar en la interfaz del lado LAN frente a la del lado WAN de la misma conexión es cómo comprueba si el NAT y las reglas de firewall se están aplicando de verdad como se espera — el paquete debería verse distinto (dirección de origen, y a menudo el puerto) en cada lado.

NAT, reglas de firewall y estado de conexión​

TareaComando
El conjunto de reglas nftables compilado, tal como lo ve el kernelnft list ruleset
Lo mismo, en la forma de más alto nivel del propio firewall4fw4 print
La tabla de seguimiento de conexiones: lo que el kernel considera una conexión activa ahora mismoconntrack -L
Flujo en vivo de conexiones creándose y destruyéndoseconntrack -E
Filtrar la tabla de seguimiento a un hostconntrack -L -s <ip> o -d <ip>

conntrack -L responde una pregunta común y específica que la página de Monitorización y conexiones de la interfaz no siempre deja clara: si una conexión realmente se está siguiendo y pasando por NAT como se espera, o si nunca llegó a alcanzar conntrack (lo cual generalmente apunta a un bloqueo anterior, no a un problema de NAT).

Puertos y procesos​

TareaComando
Qué está escuchando, y en qué interfazss -tlnp, ss -ulnp
Qué proceso tiene ocupado un puerto o archivolsof -i :<puerto>
Qué proceso matar para liberar un puertofuser -k <puerto>/tcp
Probar manualmente si un puerto TCP o UDP está abierto desde aquínc -zv <host> <puerto>

nc -zv es la forma más rápida de separar "la ruta de red está bien pero nada está escuchando" de "la ruta de red en sí está bloqueada" — una conexión rechazada es el primer caso, un tiempo de espera agotado es el segundo.

Throughput y ancho de banda​

TareaComando
Vista en vivo del throughput de la interfazbwm-ng
Prueba de velocidad de la WAN desde la línea de comandosspeedtestcpp
Prueba de throughput controlada entre esta unidad y otro hostiperf3

iperf3 y nmap son paquetes opcionales, no forman parte de la imagen por defecto — instálelos primero con opkg update && opkg install iperf3 (o nmap). Ejecute iperf3 -s en un lado y iperf3 -c <servidor> en el otro para medir el throughput real alcanzable entre dos puntos específicos, lo cual separa un problema genuino de ancho de banda o de enlace de algo específico de la aplicación.

Uniendo todo​

Un orden razonable para trabajar, de abajo hacia arriba en la pila, para no perseguir un síntoma de DNS o de aplicación que en realidad es un cable:

  1. Enlace: ethtool — ¿la interfaz está realmente activa, a la velocidad esperada?
  2. Segmento local: ip neigh, arping, arp-scan — ¿la unidad puede alcanzar a sus vecinos inmediatos?
  3. Enrutamiento: ip route get, ip rule — ¿el tráfico se está enviando a donde usted espera?
  4. Firewall y NAT: nft list ruleset, conntrack -L — ¿el tráfico está permitido, y realmente se está siguiendo?
  5. DNS: dig @<resolvedor público> — ¿el nombre resuelve, independientemente de esta unidad?
  6. Aplicación: nc -zv, tcpdump, iperf3 — ¿el servicio específico es alcanzable, y el throughput es el esperado?

Páginas relacionadas​