Mejores artículos y tutoriales de Linux
Mejores artículos y tutoriales de Linux
  • Autor de la entrada:
  • Tiempo de lectura:19 minutos de lectura

Un nuevo repositorio de comandos, tanto para los más principiantes con Linux como para los usuarios más avanzados. Hoy toca, hablar de la red de Internet en Linux.

Con anterioridad, ya he atacado la explicación de comandos en Linux dentro de nuestro blog para ciberninjas, puesto que Linux es algo imprescindible hoy en día dentro del mundo de la tecnología.

Más para los devops, personas que trabajen con servidores, etc Aquí te dejo, mis otras publicaciones sobre comandos en Linux:

También otras publicaciones sobre Linux que seguramante te interesará revisar: ¿Por qué usar EXA en vez de LS en Linux?, 3 Terminales de Linux diferentes, 11 Mejores Emuladores de Terminal para Linux, ¿Cómo comprobar tu versión de Linux Mint?, ¿Cómo crear una copia de seguridad de Linux con Timeshift?, https://ciberninjas.com/kali-herramientas-20/, ¿Cómo instalar Linux WSL2 en Windows 10?, Chuleta de Linux, Kali Linux para principiantes, etc.

Al lío, hoy vamos a ver una lista de comandos esenciales para la red en Linux que te van ayudar a conocer más sobre tu propia red desde la propia consola de Linux.

Además, con estos comandos vas a poder configurar y solucionar problemas de red que puedas encontrar dentro de tu sistema Linux.

Comandos de red esenciales en Linux

Esta compilación incluye utilidades CLI que te ayudarán a solucionar problemas de red, monitorear paquetes, dispositivos conectados y mucho más.

Antes de mostrar los comandos con algunos detalles, permiteme compartir una breve descripción general de todos los comandos que vamos a ver:

Dominio Descripción
ip Manipulación de enrutamiento para asignar y configurar parámetros de red
traceroute Identificar la ruta que toman los paquetes para llegar al host
tracepath Obtiene la unidad de transmisión máxima mientras rastrea la ruta al host de la red
ping A menudo se usa para verificar la conectividad entre el host y el servidor
ss Obtiene detalles sobre los sockets de red.
dig Proporciona toda la información necesaria sobre el servidor de nombres DNS.
host Imprime la dirección IP de un dominio específico y vísceras
hostname Se utiliza principalmente para imprimir y cambiar el nombre de host
curl Transfiere datos a través de la red al admitir varios protocolos
mtr Se utiliza una combinación de ping y traceroute para diagnosticar la red.
whois Obtiene información sobre dominios registrados, direcciones IP, servidores de nombres y más
iflugstatus Detecta el estado del enlace de un dispositivo Ethernet local
iftop Supervisa las estadísticas relacionadas con el ancho de banda
tcpdump Utilidad de detección y análisis de paquetes utilizada para capturar, analizar y filtrar el tráfico de red
ethtool Permite a los usuarios configurar dispositivos Ethernet
nmcli Utilidad de solución de problemas para conexiones de red
nmap Se utiliza principalmente para auditar la seguridad de la red.
bmon Una utilidad de código abierto para monitorear el ancho de banda en tiempo real
firewalld Herramienta CLI para configurar reglas de Firewall
iperf Utilidad para medir el rendimiento y ajuste de la red
speedtest-cli Utilidad CLI de speedtest.net para verificar las velocidades de Internet
vnstat Se utiliza principalmente para monitorear el tráfico de red y el consumo de ancho de banda

Seguidamente, veamos ejemplos y expliquemos en profundidad cada uno de elos.

Debes tener en cuenta que no todos los comandos se encuentran preinstalados, pero vas a encontrar las instrucciones necesarias para Debian/Ubuntu a lo largo de la entrada.

Si quieres instalaro en otras distribuciones, recuerda que debes utilizar tu administrador de paquetes particular.

1. IP

IP (Protocolo de Internet) es uno de los comandos más básicos pero lo suficientemente esencial como para que los administradores de sistemas lo utilicen a menudo.

Sus casos de uso pueden variar desde la manipulación del enrutamiento hasta la asignación y configuración de parámetros de red.

Si bien los casos de uso pueden ser infinitos, déjame mostrarte el caso de uso más básico del comando Ip, el encontrar una dirección IP):

ip address

De manera similar, también puedes usar el comando Ip para monitorear continuamente el estado de los dispositivos usando la opción de monitor en lugar de la opción de address si quieres obtener las direcciones IP.

ip monitor

2. Traceroute

Con el comando traceroute, puedes identificar la ruta que toman los paquetes para llegar al host.

Este es un comando que puede ser bastante útil cuando deseas revisar la transmisión de paquetes de datos y los saltos que realizan los paquetes.

De forma predeterminada, es posible que tu sistema no tenga instalado traceroute y si estás en una distro derivada de Debian (incluido Ubuntu) la instalación se realizar con solamente un comando:

sudo apt install traceroute

Por ejemplo, con el siguiente comando estarías rastreando los paquetes a google.com

traceroute google.com

De manera predeterminada, traceroute utiliza IPv4 pero puedes cambiar este comportamiento utilizando la opción -6 que sirve para indicar que traceroute use IPv6.

~$ traceroute -6 google.com

3. Tracepath

El comando tracepath se usa para descubrir la MTU mientras se rastrea la ruta al host de la red.

Es bastante similar al comando anterior, pero requiere privilegios de sudo y tampoco tiene funciones predeterminadas como traceroute.

Antes de seguir, ¿Qué es MTU?

MTU o la unidad máxima de transmisión no es más que el marco o paquete más grande que se puede transmitir o recibir a través de la red.

Ahora sí, echemos un vistazo al ejemplo básico de tracepath con google.com

tracepath google.com

De manera similar, puedes imprimir tanto la dirección IP como el nombre de host usando la opción -b.

tracepath -b google.com

4. Ping

El comando ping (Packet Internet Groper) puede considerarse uno de los comandos más importantes a la hora de solucionar problemas de una red, puesto que es la forma más común de verificar la conectividad entre el host y el servidor.

Por ejemplo, así es como podríamos hacer ping a Google:

ping google.com

Pero podrías hacer ping a cualquier IP que desees, simplemente modificando “google.com” por el número IP.

En la última línea de respuesta luego de realizar el comando, se muestran los siguientes parámetros (min/avg/max), que indican el tiempo para obtener una respuesta del servidor especificado.

Si recibes un error que dice “bash: ping: comando no encontrado” es que debes Ping en tu sistema.

Si se muestra cualquier mensaje de conexión finalizada antes de tiempo o de paquetes transmitidos pérdidos o no recibidos; significa que la conexión entre host y servidor es errónea por alguna razón.

5. ss

El comando ss (estadísticas de socket) se usa para detallar el socket de la red (punto final para enviar y recibir datos a través de la red).

Para enumerar todas las conexiones TCP que escuchan y no escuchan, se debe usar la opción de -at como se muestra continuación:

ss -at

Del mismo modo, puedes hacer lo mismo con los puertos UDP usando la opción -au:

ss -au

6. Dig

El comando dig (Domain Information Groper) se utiliza para obtener toda la información necesaria sobre el servidor de nombres DNS.

Si quieres instalar la utilidad de excavación en distribuciones basadas en Ubuntu, sigue el siguiente comando:

sudo apt install dnsutils

Bien, ahora veamos cómo obtener información de un DNS específico para este ejemplo, usemos por ejemplo ciberninjas.com como DNS.

dig ciberninjas.com

7. Host

El comando host se usa principalmente para obtener la dirección IP de un dominio específico o el nombre de dominio de una dirección IP específica.

En otras palabras, es solo una utilidad de búsqueda de DNS. Si quieres encontrar la IP del dominio, solo tienes que agregar el nombre de dominio con el comando host delante.

Déjame enseñarte como:

host google.com

De manera similar, puedes usar una dirección IP para obtener el nombre de dominio:

host 8.8.4.4

8. Hostname

Debes estar familiarizado con este comando si has estado usando Linux por un tiempo, ya que se usa principalmente para cambiar el nombre de host de tu sistema y el nombre de dominio NIS (Sistema de información de red).

Cuando se usa sin ninguna opción, se obtiene el nombre de host del sistema actual:

hostname

Cambiar el nombre de host de un archivo que contiene el nombre de host deseado es otra característica interesante de esta utilidad.

sudo hostname -F

9. Curl

El comando curl (URL del cliente) se usa principalmente para transferir datos a través de la red y admite varios protocolos; incluidos HTTP, FTP, IMAP y muchos otros.

Esta herramienta se utiliza para la automatización, ya que está diseñada para funcionar sin interacción humana y también se puede usar en pruebas de punto final, depuración y registro de errores.

La utilidad curl no viene preinstalada y si estás en cualquier derivado de Debian, solo tienes que usar el siguiente comando para instalarlo:

sudo apt install curl

Es bastante fácil descargar archivos usando el comando curl, solamente tienes que usar la opción -O con la URL, ¡y estará listo para comenzar!

curl -O [URL]

Al descargar archivos grandes, puede ser bastante conveniente manejar la barra de progreso, usando la opción -#.

10. Mtr

Mtr es una combinación de utilidades de ping y traceroute que se utiliza principalmente para realizar diagnósticos de red y brindar una visión en vivo de la respuesta y la conectividad de la red.

La forma más sencilla de usar mtr es agregar un nombre de dominio o una dirección IP y te devolverá un informe del seguimiento de la ruta en vivo.

mtr [URL/IP]

Si deseas que mtr muestre tanto los nombres de host como las direcciones IP, puedes emparejarlos con la opción -b que se muestra a continuación:

mtr -b [URL]

11. Whois

El whois puede ayudarte a encontrar información sobre dominios registrados, direcciones IP, servidores de nombres y mucho más.

Es posible que esta utilidad no esté preinstalada en tu dispositivo y para la instalación en una distribución basada en Ubuntu, puede usar el comando:

sudo apt install whois

Generalmente, el comando whois se empareja con el nombre de dominio como se indica a continuación:

whois [DomainName]

Alternativamente, también puede pasar una dirección IP en lugar de un dominio y obtendrás los mismos detalles.

12. ifplugstatus

ifplugstatus es uno de los comandos más básicos pero lo suficientemente útil para solucionar problemas de conectividad a nivel básico.

Se utiliza para detectar el estado del enlace de una red Ethernet local y funciona de manera similar a mii-diag, mii-tool y ethtool puesto que admite APIs para los 3.

Para la instalación en distribuciones basadas en Ubuntu, puedes usar el siguiente comando:

sudo apt install ifplugd

Esta utilidad no tiene opciones complejas y a menudo, se usa sin estar emparejada con ningún otro atributo:

ifplugstatus

13. iftop

Los administradores suelen utilizar iftop (Interface TOP) para monitorear las estadísticas relacionadas con el ancho de banda y también se puede usar como una herramienta de diagnóstico cuando tienes problemas con la red.

Esta utilidad requiere instalación manual y se puede instalar fácilmente en máquinas que ejecutan Ubuntu mediante el comando:

sudo apt install iftop

Cuando iftop se usa sin ninguna otra opción, se muestran las estadísticas del ancho de banda de la interfaz predeterminada:

sudo iftop

Además, se puede especificar el dispositivo de red agregando el nombre del dispositivo con la opción -i.

sudo iftop -i

14. tcpdump

tcpdump es una utilidad de detección y análisis de paquetes que se utiliza para capturar, analizar y filtrar el tráfico de red.

Se puede usar como una herramienta de seguridad porque guarda los datos capturados en un archivo pcap al que se puede acceder a través de Wireshark.

Como muchas otras herramientas, tcpdump no viene preinstalado y se instala mediante el comando:

sudo apt install tcpdump

Una vez que hayas terminado con la instalación, puedes obtener los paquetes capturados para la interfaz actual como se indica a continuación:

sudo tcpdump

Bien, pero vayamos un poco lejos, ¿Se pueden guardar los paquetes capturados en un archivo pcap?

Déjame enseñarte como puedes hacerlo:

sudo tcpdump -w Paquetes_Capturados.pcap -i

Para acceder al archivo guardado, debes usar la opción -r agregando el nombre del archivo:

sudo tcpdump -r Paquetes_Capturados.pcap

15. ethtool

Como sugiere su nombre, la utilidad ethtool se ocupa principalmente de administrar dispositivos Ethernet.

El uso de esta utilidad permite modificar la velocidad de la tarjeta de red, la negociación automática y mucho más.

Pero es posible que no esté preinstalado en tu máquina, pero puede instalarse con:

sudo apt install ethtool

Si quieres obtener los detalles de la interfaz, solamente tienes que agregar el nombre del dispositivo junto al comando, como se muestra a continuación:

sudo ethtool

16. nmcli

Nmcli pasar por ser una herramienta de solución de problemas de red simple pero poderosa, es una de las primeras utilidades que cualquier administrador de sistemas usaría para solucionar problemas de red y además, se puede usar en scripts.

Puedes usar el comando nmcli tal como se indica para monitorear el estado de conectividad de los dispositivos:

nmcli dev status

Cuando se usa sin ninguna opción, mostrará información sobre todos los dispositivos presentes en el sistema.

nmcli

17. nmap

La herramienta nmap sirve para explorar y auditar la seguridad de la red.

A menudo, los piratas informáticos y los entusiastas de la seguridad informática lo utilizan, puesto que permite obtener información en tiempo real sobre la red, IP conectadas a tu red de manera detallada, escaneo de puertos y mucho más.

Para la instalación de la utilidad nmap en distribuciones basadas en Ubuntu, usa el comando:

sudo apt install nmap

Si quieres comenzar a escanear, ejecuta el comando más el nombre de host a investigar:

nmap google.com

18. bmon

Bmon es una utilidad de código abierto para monitorear el ancho de banda en tiempo real y depurar problemas al presentar estadísticas de una manera más amigable para los humanos.

¡La mejor parte de esta herramienta es la presentación gráfica e que incluso se puede obtener la salida en código HTML!

La instalación es bastante simple ya que bmon está presente en los repositorios predeterminados de las distribuciones más populares de Linux y eso también incluye a Ubuntu.

sudo apt install bmon

Ahora, solo tienes que iniciar bmon y podras monitorear el ancho de banda de una manera agradable a la vista:

bmon

19. Firewalld

La administración de firewalls puede considerarse la parte central de la seguridad de la red y esta herramienta le permite agregar, configurar y eliminar reglas en el firewall.

Pero el firewalld requiere una instalación manual, puedes utilizar el comando siguiente para la instalación siempre que estés utilizando una distribución basada en Ubuntu:

sudo apt install firewalld

Por ejemplo, vamos a ver cómo puedesa abrir el puerto 80 de forma permanente para toda la zona pública:

sudo firewall-cmd --permanent --zone=public --add-port=80/tcp

De manera similar, para eliminar la regla agregada, debes usar la opción -remove como se muestra a continuación:

sudo firewall-cmd --zone=public --remove-port=80/tcp

20. iperf

El iperf es una utilidad de código abierto escrita en C que permite a los usuarios realizar mediciones y ajustes del rendimiento de la red.

Esta herramienta está presente en el repositorio predeterminado de Ubuntu y se puede instalar mediante el comando siguiente:

sudo apt install iperf

Para comenzar a monitorear la red, los usuarios deben iniciar este cliente en el servidor mediante el comando dado:

iperf -s -u

Donde la opción -s indica el servidor y la opción -u es para el formato UDP.

Bien, puedes conectarte a tu servidor (usando la opción -c que indica el lado del cliente) proporcionando una carga útil de dirección IP para el protocolo preferido.

Para este ejemplo, opté por UDP (usando la opción -u) con una carga útil de 100.

iperf -c 10.0.2.15 -u 100

21. speedtest-cli

Como sugiere su propio nombre, esta es la utilidad CLI para el sitio web speedtest.net.

Esta utilidad de código abierto lanzada bajo la licencia Apache 2.0 puede ser muy útil cuando deseas una fuente confiable para verificar las velocidades de Internet desde la CLI.

La instalación es bastante sencilla y se puede instalar fácilmente utilizando el comando siguiente:

sudo apt install speedtest-cli

Una vez que hayad terminado con la parte de la instalación, solo tiene que usar el comando único para probar las velocidades de la red:

speedtest-cli

22. vnstat

Los administradores de sistemas utilizan principalmente la utilidad vnstat para monitorear el tráfico de red y el consumo de ancho de banda, ya que esta herramienta monitorea el tráfico en las interfaces de red del sistema.

Al igual que con cualquier otra herramienta de red, puedess encontrar vnstat en los repositorios predeterminados usando el comando:

sudo apt install vnstat

Posteriormente con el comando vnstat sin ninguna opción, se mostrarán las estadísticas básicas de todas las interfaces disponibles en el sistema:

vnstat

Si quieres ejecutar el monitoreo en vivo, puedes emparejar el comando vnstat con la opción -l:

vnstat -l

Conclusión final

Esta es una lista bastante larga, ¿Verdad?

Pues esta compilación no es ni siquiera la punta del iceberg y solamente hemos visto los atributos más básicos de cada uno de los comandos, puesto que el post se habría hecho mucho más largo.

Si olvidé mencionar alguno de tus favoritos, házmelo saber en los comentarios o vía cualquiera de nuestras redes sociales.