Post

Comandos Linux / Networking

Los comandos de red más útiles en Linux.

Comandos Linux / Networking

Consultas DNS

dig

Herramienta avanzada para consultar servidores DNS. Permite resolver dominios, hacer búsquedas inversas por IP y depurar problemas de resolución de nombres.

Resolución inversa (IP → dominio):

1
dig -x 1.1.1.1

Resolución directa (dominio → IP):

1
dig alejandroalsa.es

Consultar un tipo de registro específico (MX, CNAME, TXT, NS…):

1
2
dig ejemplo.com MX
dig ejemplo.com TXT

Usar un servidor DNS concreto para la consulta:

1
dig @1.1.1.1 ejemplo.com

Modo corto, solo muestra el resultado sin cabeceras:

1
dig +short ejemplo.com

host

Versión simplificada de dig. Muestra rápidamente la IP asociada a un dominio o el dominio asociado a una IP.

1
host alejandroalsa.es

Consultar un tipo de registro concreto:

1
host -t MX ejemplo.com

nslookup

Consulta interactiva o directa a servidores DNS. Útil para verificar registros A, MX, CNAME, etc.

1
nslookup ejemplo.com

Consultar usando un servidor DNS específico:

1
nslookup ejemplo.com 1.1.1.1

whois

Muestra información del propietario registrado de un dominio: nombre, organización, fechas de registro y expiración, servidores DNS autoritativos.

1
whois alejandroalsa.es

Diagnóstico de red

ping

Comprueba la conectividad con un host enviando paquetes ICMP. Muestra latencia y pérdida de paquetes.

1
ping alejandroalsa.es

Limitar el número de paquetes enviados:

1
ping -c 4 alejandroalsa.es

Especificar el intervalo entre paquetes en segundos:

1
ping -i 0.5 alejandroalsa.es

Usar IPv6 explícitamente:

1
ping6 alejandroalsa.es

traceroute

Muestra el camino que siguen los paquetes desde tu equipo hasta el destino, saltando por cada router intermedio. Ideal para localizar dónde se produce una pérdida de conectividad.

1
traceroute alejandroalsa.es

Usar ICMP en lugar de UDP (más compatible con firewalls):

1
traceroute -I alejandroalsa.es

mtr

Combina ping y traceroute en una vista en tiempo real. Muestra latencia y pérdida de paquetes en cada salto de forma continua.

1
mtr alejandroalsa.es

Modo no interactivo, genera un informe tras N ciclos:

1
mtr --report --report-cycles 10 alejandroalsa.es

netstat

Muestra conexiones de red activas, puertos en escucha, tablas de enrutamiento y estadísticas de interfaces.

-p proceso, -e extendido, -l escuchando, -t TCP, -u UDP, -n sin resolver nombres

1
netstat -peltu

Solo puertos en escucha con el proceso asociado:

1
netstat -tlnp

ss

Sustituto moderno de netstat, más rápido y con más detalle. Sintaxis muy similar.

Mostrar todos los sockets TCP en escucha:

1
ss -tlnp

Ver conexiones establecidas:

1
ss -tnp state established

Filtrar por puerto específico:

1
ss -tnp sport = :443

nmap

Escáner de red para descubrir hosts activos, puertos abiertos y servicios en ejecución. Muy útil para auditorías y diagnóstico.

Escaneo básico de un host:

1
nmap 10.1.0.1

Escanear un rango de IPs:

1
nmap 10.0.0.0/8

Detectar sistema operativo y versiones de servicios:

1
sudo nmap -A 10.1.0.1

Escanear solo puertos específicos:

1
nmap -p 22,80,443 10.1.0.1

Interfaces de red

ifconfig

Muestra o configura interfaces de red. Disponible en sistemas más antiguos o instalando net-tools.

1
ifconfig

Ver solo una interfaz concreta:

1
ifconfig eth0

Activar o desactivar una interfaz:

1
2
sudo ifconfig eth0 up
sudo ifconfig eth0 down

ip addr

Versión moderna de ifconfig. Muestra todas las interfaces con sus IPs asignadas, máscaras de subred y estado.

1
ip addr show

Ver solo una interfaz:

1
ip addr show eth0

Asignar una IP fija a una interfaz:

1
sudo ip address add 10.1.0.100/8 dev eth0

Eliminar una IP de una interfaz:

1
sudo ip address del 10.1.0.100/8 dev eth0

Activar o desactivar una interfaz:

1
2
sudo ip link set eth0 up
sudo ip link set eth0 down

ip route

Muestra y gestiona la tabla de enrutamiento del sistema.

Ver la tabla de rutas actual:

1
ip route show

Añadir una ruta estática:

1
sudo ip route add 10.0.0.0/8 via 192.168.1.1

Eliminar una ruta:

1
sudo ip route del 10.0.0.0/8

Ver por qué interfaz saldría el tráfico hacia una IP:

1
ip route get 1.1.1.1

ip neigh

Muestra la tabla ARP/NDP, es decir, la relación entre IPs y MACs de los equipos en la red local.

1
ip neigh show

arp

Versión clásica para ver y manipular la tabla ARP.

1
arp -n

Descarga de archivos

wget

Descarga archivos desde una URL por HTTP, HTTPS o FTP. Soporta reintentos automáticos y descargas en segundo plano.

1
wget https://ejemplo.com/archivo.zip

Continuar una descarga interrumpida:

1
wget -c https://ejemplo.com/archivo.zip

Descargar en segundo plano:

1
wget -b https://ejemplo.com/archivo.zip

Descargar un sitio web completo de forma recursiva:

1
wget -r -np https://ejemplo.com

curl

Herramienta versátil para transferir datos con URLs. Soporta HTTP, HTTPS, FTP, SCP y muchos más protocolos.

Descargar un archivo manteniendo el nombre original:

1
curl -O https://ejemplo.com/archivo.zip

Guardar con un nombre diferente:

1
curl -o nuevo_nombre.zip https://ejemplo.com/archivo.zip

Ver las cabeceras HTTP de una respuesta:

1
curl -I https://ejemplo.com

Hacer una petición POST con JSON:

1
2
3
curl -X POST https://api.ejemplo.com/datos \
  -H "Content-Type: application/json" \
  -d '{"clave": "valor"}'

Seguir redirecciones automáticamente:

1
curl -L https://ejemplo.com

Transferencia FTP / SFTP

ftp / sftp

Clientes para transferir archivos a servidores FTP o SFTP. sftp es la versión segura y recomendada.

Conectarse a un servidor:

1
sftp usuario@10.1.0.100

Una vez dentro de la sesión:

Descargar un archivo del servidor:

1
get archivo.txt

Subir un archivo al servidor:

1
put archivo.txt

Listar archivos en el servidor remoto:

1
ls

Cambiar de directorio remoto:

1
cd /ruta/remota

Cerrar la sesión:

1
quit

Túneles y conexión remota

ssh

Conexión remota segura a otro equipo. También permite crear túneles de red cifrados.

Conectarse a un servidor:

1
ssh usuario@10.0.1.100

Conectarse por un puerto distinto al 22:

1
ssh -p 2222 usuario@10.0.1.100

Túnel local: redirige el puerto local 8080 al puerto 80 del servidor remoto:

1
ssh -L 8080:localhost:80 usuario@10.0.1.100

Ejecutar un comando remoto sin abrir shell interactiva:

1
ssh usuario@10.0.1.100 "df -h"

scp

Copia segura de archivos entre equipos usando SSH.

Copiar un archivo local al servidor remoto:

1
scp archivo.txt usuario@10.0.1.100:/ruta/destino/

Copiar un archivo del servidor al equipo local:

1
scp usuario@10.0.1.1000:/ruta/archivo.txt ./

Copiar un directorio completo de forma recursiva:

1
scp -r carpeta/ usuario@10.0.1.100:/ruta/destino/

Monitorización de tráfico

tcpdump

Captura y analiza paquetes de red en tiempo real. Esencial para depurar problemas de conectividad a bajo nivel.

Capturar tráfico en una interfaz:

1
sudo tcpdump -i eth0

Filtrar por host:

1
sudo tcpdump -i eth0 host 10.1.0.1

Filtrar por puerto:

1
sudo tcpdump -i eth0 port 443

Guardar la captura en un fichero para analizarla con Wireshark:

1
sudo tcpdump -i eth0 -w captura.pcap

iftop

Muestra el ancho de banda consumido en tiempo real por cada conexión activa en una interfaz.

1
sudo iftop -i eth0

nethogs

Muestra el consumo de ancho de banda agrupado por proceso, en tiempo real.

1
sudo nethogs eth0
This post is licensed under CC BY 4.0 by the author.