En cualquier momento en que uses tu PC, el cual está conectado a un enrutador, formarás parte de una red. Ya sea que estés en un entorno de oficina o simplemente trabajando desde casa, tu computadora estará en una red.
¿Qué es una red de computadoras?
A computer network is defined as a group of 2 or more computers that are connected and can electronically communicate with each other. The computers are identified using their hostnames, IP, and mac addresses.
A simple home or office network is referred to as a LAN, short for Local Area Network. A LAN covers a small area such as a home, office, or restaurant network. In contrast, a WAN (Wide Area Network) spans a large geographical region. WAN is mostly used to connect various sites such as office buildings in different locations.
Este artículo es Parte 4 de la serie LFCA, aquí en esta parte, te familiarizarás con comandos generales de redes y lo beneficiosos que pueden ser para solucionar problemas de conectividad.
1. Comando de hostname
El comando de hostname muestra el nombre de host de un sistema Linux. Por lo general, se establece o configura durante la instalación. Para verificar el nombre de host, ejecuta el comando:
$ hostname tecmint
2. Comando de ping
Abreviatura de paquete de internet groper, el comando ping se utiliza para verificar la conectividad entre 2 sistemas o servidores. Envía una solicitud de eco ICMP a un host remoto y espera una respuesta. Si el host está activo, la solicitud de eco rebota en el host remoto y se envía de vuelta a la fuente informando al usuario que el host está activo o disponible.
El comando ping sigue la sintaxis mostrada.
$ ping options IP address
Por ejemplo, para hacer ping a un host en mi red local con la IP de 192.168.2.103, ejecutaré el comando:
$ ping 192.168.2.103 PING 192.168.0.123 (192.168.0.123) 56(84) bytes of data. 64 bytes from 192.168.2.103: icmp_seq=1 ttl=64 time=0.043 ms 64 bytes from 192.168.2.103: icmp_seq=2 ttl=64 time=0.063 ms 64 bytes from 192.168.2.103: icmp_seq=3 ttl=64 time=0.063 ms 64 bytes from 192.168.2.103: icmp_seq=4 ttl=64 time=0.061 ms 64 bytes from 192.168.2.103: icmp_seq=5 ttl=64 time=0.062 ms
El comando ping continúa enviando el paquete de ping ICMP hasta que lo interrumpas presionando Ctrl + C
en el teclado. Sin embargo, puedes limitar los paquetes enviados usando la opción -c
.
En el ejemplo a continuación, estamos enviando 5 paquetes de solicitud de eco, y una vez hecho, el comando ping se detiene.
$ ping 192.168.2.103 -c 5 PING 192.168.0.123 (192.168.0.123) 56(84) bytes of data. 64 bytes from 192.168.2.103: icmp_seq=1 ttl=64 time=0.044 ms 64 bytes from 192.168.2.103: icmp_seq=2 ttl=64 time=0.052 ms 64 bytes from 192.168.2.103: icmp_seq=3 ttl=64 time=0.066 ms 64 bytes from 192.168.2.103: icmp_seq=4 ttl=64 time=0.056 ms 64 bytes from 192.168.2.103: icmp_seq=5 ttl=64 time=0.066 ms --- 192.168.2.103 ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4088ms rtt min/avg/max/mdev = 0.044/0.056/0.066/0.008 ms
Además, también puedes hacer ping al nombre de dominio de un host o servidor. Por ejemplo, puedes hacer ping a Google como se muestra.
$ ping google.com PING google.com (142.250.183.78) 56(84) bytes of data. 64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=1 ttl=117 time=2.86 ms 64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=2 ttl=117 time=3.35 ms 64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=3 ttl=117 time=2.70 ms 64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=4 ttl=117 time=3.12 ms ...
También puedes hacer ping al DNS. Por ejemplo, puedes hacer ping a la dirección de Google que es 8.8.8.8.
$ ping 8.8.8.8 -c 5 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=118 time=3.24 ms 64 bytes from 8.8.8.8: icmp_seq=2 ttl=118 time=3.32 ms 64 bytes from 8.8.8.8: icmp_seq=3 ttl=118 time=3.40 ms 64 bytes from 8.8.8.8: icmp_seq=4 ttl=118 time=3.30 ms 64 bytes from 8.8.8.8: icmp_seq=5 ttl=118 time=2.92 ms --- 8.8.8.8 ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4005ms rtt min/avg/max/mdev = 2.924/3.237/3.401/0.164 ms
A failed ping test is pointed to one of the following:
- A host that is offline.
- Fallo general de red.
- Presencia de un firewall que está bloqueando las solicitudes ICMP.
3. Comando traceroute
El comando traceroute muestra la ruta que toma un paquete de ping ICMP desde tu dispositivo hasta el host o servidor de destino. Muestra las direcciones IP de los dispositivos por los que salta el paquete antes de llegar al destino remoto.
En la línea 2, la salida muestra un signo de asterisco *
en el viaje de ida y vuelta. Esto indica que el paquete fue descartado y no se recibió respuesta. Esto muestra que el paquete de ping fue descartado por el enrutador, y esto podría ser por una variedad de razones como la congestión de red.
El comando Traceroute es un comando de diagnóstico útil que puedes usar para solucionar problemas de red cuando el comando ping te da resultados fallidos. Muestra el dispositivo en el que se están descartando los paquetes.
$ traceroute google.com

4. Comando mtr
El comando mtr (mi trazador de ruta) combina las funcionalidades de los comandos ping y traceroute. Muestra una serie de estadísticas que incluyen el host por el que viaja cada paquete y los tiempos de respuesta para todos los saltos de red.
$ mtr google.com

5. Comando ifconfig
El comando ifconfig lista las interfaces de red conectadas a la PC junto con otras estadísticas como las direcciones IP asociadas con cada interfaz, la máscara de subred y el MTU, por mencionar solo algunos.
$ ifconfig

El parámetro inet muestra la dirección IPv4 de la interfaz de red mientras que inet6 señala la dirección IPv6. Puedes ver los detalles de una única interfaz especificando la interfaz como se muestra:
$ ifconfig enp0s3

6. Comando IP
Otra forma de ver estadísticas de interfaz es usando el comando ip address como se muestra.
$ ip address

7. Comando de ruta IP
El comando ip route imprime la tabla de enrutamiento de tu PC.
$ ip route OR $ ip route show

8. Comando dig
La utilidad dig (abreviatura de Domain Information Groper) es una herramienta de línea de comandos para sondear servidores de nombres DNS. Toma un nombre de dominio como argumento y muestra información como la dirección del host, el registro A, el registro MX (intercambios de correo), los servidores de nombres, etc.
En resumen, el comando dig es una utilidad de búsqueda DNS y es principalmente utilizada por administradores de sistemas para solucionar problemas de DNS.
$ dig ubuntu.com

9. Comando nslookup
La utilidad nslookup es otra herramienta de línea de comandos que se utiliza para realizar búsquedas de DNS con el fin de recuperar nombres de dominio y registros A.
$ nslookup ubuntu.com

10. Comando netstat
El comando netstat imprime estadísticas de la interfaz de red. Puede mostrar la tabla de enrutamiento, los puertos en los que varios servicios están escuchando, conexiones TCP y UDP, PID y UID.
Para mostrar las interfaces de red conectadas a su PC, ejecute:
$ netstat -i Kernel Interface table Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg enp1s0 1500 0 0 0 0 0 0 0 0 BMU lo 65536 4583 0 0 0 4583 0 0 0 LRU wlp2s0 1500 179907 0 0 0 137273 0 0 0 BMRU
Para consultar la tabla de enrutamiento, use la opción -r
como se muestra.
$ netstat -r Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface default _gateway 0.0.0.0 UG 0 0 0 wlp2s0 link-local 0.0.0.0 255.255.0.0 U 0 0 0 wlp2s0 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 wlp2s0
Para examinar las conexiones TCP activas, invoque el comando:
$ netstat -ant

11. Comando ss
El comando ss es una herramienta de red que se utiliza para mostrar estadísticas de socket y muestra métricas de red del sistema de manera similar al comando netstat. El comando ss es más rápido que netstat y muestra más información sobre TCP y estadísticas de red que netstat.
$ ss #list al connections $ ss -l #display listening sockets $ ss -t #display all TCP connection
Resumen
Esa fue una visión general de los comandos básicos de red que resultarán especialmente útiles al solucionar problemas menores de red en su hogar o entorno de oficina. Pruébelos de vez en cuando para afilar sus habilidades de resolución de problemas de red.