Redes y conectividad (RSA-08)

La ruta del SysAdmin 15 de jul. de 2025

En este apartado vamos a ver los comandos que te ayudan a entender y administrar la red en un sistema Linux.

Podrás comprobar la conexión, configurar interfaces, revisar puertos abiertos y diagnosticar problemas comunes de conectividad.


Comando: ip

Sintaxis Básica

Muestra información sobre interfaces de red, direcciones IP y estado de conexión.

Ejemplos:

$ ip a        # Muestra interfaces y direcciones IP
$ ip link     # Muestra el estado de cada interfaz
$ ip route    # Muestra la tabla de enrutamiento

Sintaxis Avanzada

Permite modificar interfaces, añadir rutas o aplicar configuraciones temporales.

Ejemplos:

# ip link set eth0 down
# ip addr add 192.168.1.99/24 dev eth0
# ip route add default via 192.168.1.1

Comando: ping

Sintaxis Básica

Comprueba si un host está accesible y mide latencia de respuesta.

Ejemplos:

$ ping google.com
$ ping 8.8.8.8

Sintaxis Avanzada

Se usa con intervalos, cantidad de paquetes o condiciones de error.

Ejemplos:

$ ping -c 5 google.com
$ ping -i 0.2 servidor.local
$ ping -W 2 servidor_remoto

Comando: netstat / ss

Sintaxis Básica

Muestra las conexiones de red activas y los puertos en uso.

Ejemplos:

$ ss -tuln
$ netstat -tuln    # Si está instalado

Sintaxis Avanzada

Usado para verificar servicios en escucha, conexiones abiertas y tráfico activo.

Ejemplos:

$ ss -tp | grep ssh
$ ss -s             # Estadísticas resumidas
$ netstat -pant     # Ver procesos conectados si está disponible

Comando: nmcli (NetworkManager)

Sintaxis Básica

Herramienta para administrar conexiones de red en sistemas con NetworkManager.

Ejemplos:

$ nmcli device status
$ nmcli connection show

Sintaxis Avanzada

Permite crear conexiones, configurar Wi-Fi, cambiar IPs y gestionar redes.

Ejemplos:

# nmcli con up id "WIFI_Hogar"
# nmcli con modify eth0 ipv4.addresses "192.168.1.10/24"
# nmcli device wifi list

Comando: curl / wget

Sintaxis Básica

Realizan solicitudes a servidores web y descargan archivos.

Ejemplos:

$ curl https://ejemplo.com
$ wget https://archivo.com/fichero.zip

Sintaxis Avanzada

Se usan en pruebas de respuesta, cabeceras HTTP, envío de datos o scripts automatizados.

Ejemplos:

$ curl -I https://ejemplo.com
$ curl -X POST -d "usuario=luisgulo" https://api.misitio.com/login
$ wget -r --no-parent https://sitio.com/documentacion/

Comando: traceroute / tracepath

Sintaxis Básica

Muestra el recorrido que siguen los paquetes hasta alcanzar un destino.

Ejemplos:

$ traceroute google.com
$ tracepath 8.8.8.8

Sintaxis Avanzada

Útil para diagnosticar problemas de salto o lentitud en conexiones.

Ejemplos:

$ traceroute -n sitio.com
$ tracepath -n servidor.local | tee ruta.log

Comando: dig / nslookup

Sintaxis Básica

Consulta información DNS de dominios y servidores.

Ejemplos:

$ dig ejemplo.com
$ nslookup ejemplo.com

Sintaxis Avanzada

Permite realizar consultas específicas, verificar registros MX, A, TXT o problemas de resolución.

Ejemplos:

$ dig +short ejemplo.com
$ dig ejemplo.com MX
$ nslookup -type=TXT ejemplo.com

Comandos para gestionar Wi-Fi

nmcli (NetworkManager)

Permite conectar, listar y configurar redes Wi-Fi desde la terminal.

Sintaxis Básica:

$ nmcli device wifi list
$ nmcli device wifi connect "SSID" password "clave_secreta"

Sintaxis Avanzada:

$ nmcli connection modify "SSID" ipv4.addresses "192.168.1.15/24"
$ nmcli connection up "SSID"

iwconfig

Muestra información sobre dispositivos inalámbricos en sistemas que usan herramientas wireless-tools.

Sintaxis Básica:

$ iwconfig

Sintaxis Avanzada:

$ iwconfig wlan0 txpower 15    # Ajusta la potencia de transmisión

rfkill

Permite activar o desactivar dispositivos de red inalámbricos (Wi-Fi o Bluetooth).

Sintaxis Básica:

$ rfkill list

Sintaxis Avanzada:

# rfkill unblock wifi
# rfkill block bluetooth

Comandos para comprobar velocidad de red

speedtest-cli

Herramienta para medir velocidad de subida/bajada (requiere conexión a Internet).

Sintaxis Básica:

$ speedtest-cli

Sintaxis Avanzada:

$ speedtest-cli --bytes    # Muestra resultados en bytes/s
$ speedtest-cli --share    # Genera enlace con resultado

iperf3

Permite realizar pruebas de velocidad entre dos máquinas en red local.

Servidor:

$ iperf3 -s

Cliente (desde otro equipo):

$ iperf3 -c IP_DEL_SERVIDOR

Sintaxis Avanzada:

$ iperf3 -c IP_DEL_SERVIDOR -t 30 -i 5
$ iperf3 -c IP -u -b 100M    # Prueba en modo UDP

Cerramos este apartado con tres bloques imprescindibles:

  • Comandos de diagnóstico y visualización en tiempo real
  • Captura de paquetes y herramientas de análisis de red
  • Introducción breve a subredes y redes IP

Comandos de diagnóstico y visualización en tiempo real

tcpdump

Captura paquetes de red en tiempo real desde la terminal.

Sintaxis Básica:

# tcpdump -i eth0

Sintaxis Avanzada:

# tcpdump -i eth0 port 80    # Solo tráfico HTTP
# tcpdump -nn -v -i wlan0    # Sin resolución de nombres
# tcpdump -i any -w captura.pcap

iftop

Monitoriza el uso de ancho de banda por conexión activa (interfaz interactiva).

Ejemplo:

$ sudo iftop -i eth0

nload

Muestra en consola el tráfico de entrada y salida en tiempo real por interfaz.

Ejemplo:

$ sudo nload

bmon

Visualiza el tráfico por interfaz con gráficos ASCII.

Ejemplo:

$ bmon

Herramientas para análisis de redes

Wireshark

Analizador gráfico de protocolos. Permite ver el contenido de cada paquete.

  • Captura en tiempo real o desde archivo .pcap
  • Filtrado por protocolos: TCP, UDP, DNS, TLS…
  • Inspección detallada de cabeceras y cargas

tshark

Versión en línea de comandos de Wireshark.

$ tshark -i eth0
$ tshark -r captura.pcap -Y http

netdiscover / arp-scan

Detectan equipos conectados a la red local mediante peticiones ARP.

$ sudo netdiscover
$ sudo arp-scan --localnet

nmap

Escanea hosts y puertos para descubrir servicios expuestos.

$ nmap -sP 192.168.1.0/24       # Descubre hosts activos
$ nmap -sV -p 22,80 192.168.1.10  # Detecta versiones de servicios
$ nmap --script vuln 192.168.1.10

Introducción a subredes y redes IP

Una red IP está formada por dos partes:

  • Identificador de red (network): define el segmento o subred
  • Identificador de host: define el dispositivo específico dentro de esa red

La máscara de red determina cuántos bits pertenecen a cada parte.

Ejemplo

La dirección 192.168.1.10/24:

  • 192.168.1 → red
  • .10 → host

La máscara /24 equivale a 255.255.255.0, lo que permite hasta 254 hosts por red.

Otras máscaras comunes

CIDRMáscara tradicionalHosts disponiblesClase
/8255.0.0.0~16 millonesA
/16255.255.0.0~65 milB
/24255.255.255.0254C
/30255.255.255.2522 (para enlaces)Subred pequeña

Rango típico de red local

IP de red:     192.168.1.0
IP de router:  192.168.1.1
IP de broadcast: 192.168.1.255
Rango usable:  192.168.1.2 - 192.168.1.254

¿Para qué sirve subnetear?

  • Separar grupos de equipos (red de oficina vs. red de servidores)
  • Limitar el tamaño de una red para evitar congestión
  • Aumentar la seguridad segmentando servicios

Herramientas para cálculo y visualización de subredes

ipcalc

Calculadora de subredes en terminal. Permite obtener información detallada sobre una red IP y su máscara.

Ejemplos:

$ ipcalc 192.168.1.10/24

Salida típica:

Address:   192.168.1.10
Netmask:   255.255.255.0 = 24
Network:   192.168.1.0
Broadcast: 192.168.1.255
HostMin:   192.168.1.1
HostMax:   192.168.1.254
Hosts/Net: 254

Opciones avanzadas:

$ ipcalc -b 10.0.0.0/16        # Muestra uso binario
$ ipcalc -n -m 192.168.2.33/27 # Muestra sólo red y máscara

subnetcalc

Herramienta similar a ipcalc, especialmente útil en redes IPv6 o cálculos más técnicos.

Ejemplos:

$ subnetcalc 192.168.1.0/28

Opciones comunes:

$ subnetcalc --ipv6 2001:db8::/64
$ subnetcalc -i eth0           # Detecta IP de interfaz y calcula subred

Ruteo básico en Linux

Linux mantiene una tabla de rutas para saber por qué interfaz enviar cada paquete.

Ver tabla de rutas

$ ip route

Añadir o modificar rutas

# ip route add default via 192.168.1.1
# ip route add 192.168.2.0/24 via 192.168.1.254

Eliminar rutas

# ip route del 192.168.2.0/24

Rutas estáticas persistentes

En Debian/Ubuntu se definen en /etc/network/interfaces o en NetworkManager. En Red Hat/CentOS suelen ir en archivos como /etc/sysconfig/network-scripts/route-<interfaz>.


Ejemplo de subneteo sencillo

Caso: Dividir la red 192.168.1.0/24 en 4 subredes iguales

La red /24 tiene 256 direcciones. Si la dividimos en 4 subredes:

  • Cada subred será de /26 → 64 direcciones (62 utilizables)
  • Subredes generadas:
SubredRango de hostsBroadcast
192.168.1.0/26192.168.1.1 - 192.168.1.62192.168.1.63
192.168.1.64/26192.168.1.65 - 192.168.1.126192.168.1.127
192.168.1.128/26192.168.1.129 - 192.168.1.190192.168.1.191
192.168.1.192/26192.168.1.193 - 192.168.1.254192.168.1.255

¿Cómo se calcula?

Usas ipcalc o haces la división manual:

$ ipcalc 192.168.1.0/26
$ ipcalc 192.168.1.64/26
...

¿Para qué sirve?

  • Separar áreas: red de usuarios, red de servidores, red para cámaras de seguridad
  • Gestionar tráfico o aplicar reglas de firewall por segmentos
  • Limitar rangos DHCP

¿Qué es una “red de cámaras”?

Una red de cámaras es un segmento de red donde se conectan múltiples dispositivos de videovigilancia —como cámaras IP— para que transmitan vídeo en tiempo real, graben imágenes, y sean gestionadas desde servidores, grabadores (NVR) o aplicaciones.

Características comunes:

  • Rango separado o subred dedicada: suele usarse una subred específica (ej. 192.168.2.0/24) para cámaras, separada de los equipos de usuario.
  • Consumo intensivo de ancho de banda: las cámaras transmiten vídeo, por lo que su tráfico puede afectar al rendimiento de la red si no se segmenta.
  • Gestión centralizada: el tráfico se suele dirigir hacia un servidor de grabación, una consola web o software tipo ZoneMinder, iSpy, Milestone, etc.
  • Acceso remoto protegido: mediante VPN, firewall o acceso externo restringido.

Ejemplo de red de cámaras en un esquema de red local:

  • Red de usuarios: 192.168.1.0/24
  • Red de cámaras: 192.168.2.0/24
  • Un router conecta ambas redes, y puede aplicar reglas para limitar acceso entre ellas.

Segmentar una red así permite mejorar la seguridad (las cámaras son vulnerables si están mal configuradas), gestionar la calidad del vídeo, y evitar que se mezclen con el tráfico de navegación de usuarios.


Tabla comparativa de herramientas comunes de red

HerramientaFunción principalUso básicoEntorno típico
pingComprobar conectividad y latenciaping ejemplo.comDiagnóstico rápido
tracerouteVer recorrido de paquetes hasta destinotraceroute google.comProblemas de salto/lentitud
ss / netstatVer puertos y conexiones activasss -tuln / netstat -tulnAuditoría y seguridad
nmcliConfigurar interfaces (NetworkManager)nmcli device statusEntornos de escritorio
ipVer y modificar configuración IPip a, ip routeAdministración de red
dig / nslookupConsultar DNSdig dominio.com / nslookup dominioFallos en resolución DNS
nmapEscaneo de puertos y serviciosnmap -sP 192.168.1.0/24Auditoría y pentesting
tcpdumpCaptura de paquetestcpdump -i eth0Análisis profundo de tráfico
iperf3Medir velocidad entre dos equiposiperf3 -s / iperf3 -c IPRedes internas
speedtest-cliMedir velocidad contra Internetspeedtest-cliVelocidad pública
wifi / iwconfigVer info y ajustar Wi-Fiiwconfig wlan0Sistemas ligeros o portátiles

Etiquetas

Luis GuLo

🐧 SysAdmin GNU/Linux - 🐳 Docker - 🖥️ Bash Scripting - 🐪 Perl - 🐬 MySQL - 👥 Formador de TI - 👥 Formador de SysAdmin's - 💢 Ansible - ☁️ Cloud Computing - ❤️ Debian GNU/Linux