Saltar al contenido

3.3 Redes Básicas y Diagnóstico

¡Prepárate!

  • Aprenderás la sintaxis de la moderna familia de comandos ip que reemplazó a ifconfig. - Sabrás identificar tu Interfaz de Red física y tu Interfaz Loopback. - Aprenderás a “sonar” a otros servidores usando ICMP (ping). - Interpretarás la tabla de enrutamiento y la “Puerta de Enlace” (Gateway). - Verás qué puertos están escuchando hackeos usando ss (Socket Statistics).

Un servidor de producción aislado y sin conexión a Internet es solo una costosa caja de metal calentando la habitación. Como administrador LFCS, saber leer o reparar la configuración de las tarjetas de red físicas e lógicas de Debian es una obligación ineludible.

Antigüedad: Durante 20 años usamos herramientas como ifconfig, route o netstat. Actualmente el proyecto Linux los ha marcado como obsoletos a favor de la herramienta navaja-suiza moderna: El comando multiusos ip.


Tu servidor puede tener varias tarjetas de red físicas reales, y algunas virtuales. Cada una es una “Interfaz”.

Para saber qué IPs tiene configuradas tu máquina ahora mismo, ejecuta:

ventana terminal
# Equivalente moderno para 'ifconfig' (ip address)
ip a

Lo que verás:

  1. Una interfaz llamada lo (Loopback): El sistema hablándose habitualmente a sí mismo en 127.0.0.1. Jamás la toques.
  2. Una interfaz física llamada eth0, enp0s3 o ens33: Tu tarjeta de red cableada real. Bajo su sección inet encontrarás tu Dirección IP IPv4 de área local (Ej. 192.168.1.150/24).

A veces tu servidor tiene asignada una IP perfectamente, pero “no tiene Internet”. Esto ocurre porque Linux no sabe a qué router entregarle los datos para que salgan del edificio. A la orden que marca por dónde salir al mundo se le llama “Ruta por defecto” o Default Gateway.

ventana terminal
# Equivalente moderno para 'route' (ip route)
ip r

La línea más vital que debes buscar dirá algo como: default via 192.168.1.1 dev eth0. Esto significa que si Linux necesita internet de fuera, le mandará los paquetes al router (puerta de enlace) 192.168.1.1.


Si una web falla, nuestro protocolo siempre debe ser diagnosticar desde la capa más básica. ¿Acaso el cable de red está desconectado?

El comando ping usa el protocolo ICMP de bajo nivel. Básicamente, tú gritas “¡Ecos!”, y la otra máquina (si está viva) te responde “¡Estoy aquí!”.

ventana terminal
# Probar conexión contra los DNS públicos de Google
ping 8.8.8.8
# Probar si el sistema de nombres (DNS) logra convertir texto a IPs reales
ping google.com

Imagina que tu jefe te llama paniqueando: “¡Instalaste el servidor Apache pero la web no carga!”. Tú hiciste el ping al servidor y sí responde. Entonces, ¿Acaso el programa web Apache está corriendo realmente encendido? ¿Está el puerto 80 (HTTP) abierto e iluminado para recibir al mundo?

Antiguamente usábamos el comando netstat. Hoy, los reyes usan ss (Socket Statistics), que es mil veces más rápido.

ventana terminal
# Lista procesos escuchando la red, resolviendo números en puertos (ss tunel plain listen)
sudo ss -tulpn

Los parámetros (TULPN) son el mantra del Sysadmin:

  • -t: Mostrar tráfico TCP.
  • -u: Mostrar tráfico UDP.
  • -l: Solo componentes en estado LISTEN (Escuchando a que alguien se conecte).
  • -p: Mostrar el nombre del Proceso culpable (apache2 o nginx).
  • -n: Mostrar los Números reales (Ej. puerto 80 en vez de imprimir un texto que diga http).

Si corres este comando y NO ves a tu programa listado en la columna (Local Address:Port) como 0.0.0.0:80, significa que el servidor web ni siquiera está arrancado en el sistema operativo.


  1. Usas el comando ip a en tu estación de trabajo y observas que la tarjeta física eth0 no tiene ninguna mención a inet o una dirección IP. Solo tiene una cadena larga link/ether C8:4B.... Sin embargo, sabes que tu router local debería darle una IP dinámicamente usando el servidor de asignación DHCP. ¿Cuál de estos antiguos procesos forzaría al sistema operativo a “pedirle por favor a la red que le conceda una IP”?

  2. Ejecutas un ping ubuntu.com y Linux te escupe el error: “ping: ubuntu.com: Name or service not known”. Acto seguido, ejecutas ping 8.8.8.8 (que es la máquina real de Google) y sí te llegan respuestas normales de tiempo de latencia en ms. ¿Cómo deduces este fallo?

  3. Quieres auditar un servidor y ver si algún Malware o Troyano oscuro está ejecutándose de fondo abriendo “puertos furtivos” al exterior para recibir órdenes de hackers sin que tú lo sepas. ¿Qué comando te dará la lista forense de programas exactos que mantienen las “orejas abiertas” (Listen) a la tarjeta de red en este preciso nanosegundo?