13 Comandos de resolución de problemas y configuración de red de Linux


Las computadoras están conectadas en una red para intercambiar información o recursos entre sí. Dos o más computadoras conectadas a través de un medio de red llamado red de computadoras. Hay varios dispositivos de red o medios involucrados para formar una red informática. La computadora cargada con el sistema operativo Linux también puede ser parte de la red, ya sea una red pequeña o grande, debido a su naturaleza multitarea y multiusuario. Mantener el sistema y la red en funcionamiento es una tarea del administrador del sistema/red. En este artículo, revisaremos la configuración de red de uso frecuente y los comandos de solución de problemas en Linux.

1. ifconfig

El comando ifconfig (configurador de interfaz) se utiliza para inicializar una interfaz, asignar una dirección IP a la interfaz y habilitar o deshabilitar la interfaz a pedido. Con este comando puede ver la dirección IP y la dirección de hardware/MAC asignada a la interfaz y también el tamaño de MTU (unidad máxima de transmisión).

# ifconfig

eth0      Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:192.168.50.2  Bcast:192.168.50.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6093 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4824 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:6125302 (5.8 MiB)  TX bytes:536966 (524.3 KiB)
          Interrupt:18 Base address:0x2000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:480 (480.0 b)  TX bytes:480 (480.0 b)

El comando ifconfig con interfaz (eth0) solo muestra detalles específicos de la interfaz como dirección IP, dirección MAC, etc. con las opciones -a mostrarán todos los detalles de la interfaz disponibles si también está deshabilitado.

# ifconfig eth0

eth0      Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:192.168.50.2  Bcast:192.168.50.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6119 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4841 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:6127464 (5.8 MiB)  TX bytes:539648 (527.0 KiB)
          Interrupt:18 Base address:0x2000

Asignación de una dirección IP y una puerta de enlace a la interfaz sobre la marcha. La configuración se eliminará en caso de reiniciar el sistema.

# ifconfig eth0 192.168.50.5 netmask 255.255.255.0

Para habilitar o deshabilitar una interfaz específica, usamos el comando de ejemplo de la siguiente manera.

# ifup eth0
# ifdown eth0

Por defecto, el tamaño de MTU es 1500. Podemos establecer el tamaño de MTU requerido con el siguiente comando. Reemplace XXXX con tamaño.

# ifconfig eth0 mtu XXXX

La interfaz de red solo los paquetes recibidos pertenecen a esa NIC en particular. Si coloca la interfaz en modo promiscuo, recibirá todos los paquetes. Esto es muy útil para capturar paquetes y analizarlos más tarde. Para ello, es posible que necesite acceso de superusuario.

# ifconfig eth0 - promisc

2. Comando PING

El comando PING (Packet INternet Groper) es la mejor manera de probar la conectividad entre dos nodos. Ya sea una red de área local (LAN) o una red de área amplia (WAN). Ping utiliza ICMP (Protocolo de mensajes de control de Internet) para comunicarse con otros dispositivos. Puede hacer ping al nombre de host de la dirección IP utilizando el siguiente comando.

# ping 4.2.2.2

PING 4.2.2.2 (4.2.2.2) 56(84) bytes of data.
64 bytes from 4.2.2.2: icmp_seq=1 ttl=44 time=203 ms
64 bytes from 4.2.2.2: icmp_seq=2 ttl=44 time=201 ms
64 bytes from 4.2.2.2: icmp_seq=3 ttl=44 time=201 ms

OR

# ping www.tecmint.com

PING tecmint.com (50.116.66.136) 56(84) bytes of data.
64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=284 ms
64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=287 ms
64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms

En Linux, el comando ping sigue ejecutándose hasta que interrumpas. Haga ping con la opción -c exit después de N número de solicitud (respuesta exitosa o error).

# ping -c 5 www.tecmint.com

PING tecmint.com (50.116.66.136) 56(84) bytes of data.
64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=4 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=5 ttl=47 time=285 ms

--- tecmint.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4295ms
rtt min/avg/max/mdev = 285.062/285.324/285.406/0.599 ms

3. Comando TRACEROUTE

traceroute es una utilidad de resolución de problemas de red que muestra el número de saltos realizados para llegar al destino y también determina la ruta de viaje de los paquetes. A continuación, estamos rastreando la ruta a la dirección IP del servidor DNS global y la capacidad de alcanzar el destino también muestra la ruta de ese paquete que está viajando.

# traceroute 4.2.2.2

traceroute to 4.2.2.2 (4.2.2.2), 30 hops max, 60 byte packets
 1  192.168.50.1 (192.168.50.1)  0.217 ms  0.624 ms  0.133 ms
 2  227.18.106.27.mysipl.com (27.106.18.227)  2.343 ms  1.910 ms  1.799 ms
 3  221-231-119-111.mysipl.com (111.119.231.221)  4.334 ms  4.001 ms  5.619 ms
 4  10.0.0.5 (10.0.0.5)  5.386 ms  6.490 ms  6.224 ms
 5  gi0-0-0.dgw1.bom2.pacific.net.in (203.123.129.25)  7.798 ms  7.614 ms  7.378 ms
 6  115.113.165.49.static-mumbai.vsnl.net.in (115.113.165.49)  10.852 ms  5.389 ms  4.322 ms
 7  ix-0-100.tcore1.MLV-Mumbai.as6453.net (180.87.38.5)  5.836 ms  5.590 ms  5.503 ms
 8  if-9-5.tcore1.WYN-Marseille.as6453.net (80.231.217.17)  216.909 ms  198.864 ms  201.737 ms
 9  if-2-2.tcore2.WYN-Marseille.as6453.net (80.231.217.2)  203.305 ms  203.141 ms  202.888 ms
10  if-5-2.tcore1.WV6-Madrid.as6453.net (80.231.200.6)  200.552 ms  202.463 ms  202.222 ms
11  if-8-2.tcore2.SV8-Highbridge.as6453.net (80.231.91.26)  205.446 ms  215.885 ms  202.867 ms
12  if-2-2.tcore1.SV8-Highbridge.as6453.net (80.231.139.2)  202.675 ms  201.540 ms  203.972 ms
13  if-6-2.tcore1.NJY-Newark.as6453.net (80.231.138.18)  203.732 ms  203.496 ms  202.951 ms
14  if-2-2.tcore2.NJY-Newark.as6453.net (66.198.70.2)  203.858 ms  203.373 ms  203.208 ms
15  66.198.111.26 (66.198.111.26)  201.093 ms 63.243.128.25 (63.243.128.25)  206.597 ms 66.198.111.26 (66.198.111.26)  204.178 ms
16  ae9.edge1.NewYork.Level3.net (4.68.62.185)  205.960 ms  205.740 ms  205.487 ms
17  vlan51.ebr1.NewYork2.Level3.net (4.69.138.222)  203.867 ms vlan52.ebr2.NewYork2.Level3.net (4.69.138.254)  202.850 ms vlan51.ebr1.NewYork2.Level3.net (4.69.138.222)  202.351 ms
18  ae-6-6.ebr2.NewYork1.Level3.net (4.69.141.21)  201.771 ms  201.185 ms  201.120 ms
19  ae-81-81.csw3.NewYork1.Level3.net (4.69.134.74)  202.407 ms  201.479 ms ae-92-92.csw4.NewYork1.Level3.net (4.69.148.46)  208.145 ms
20  ae-2-70.edge2.NewYork1.Level3.net (4.69.155.80)  200.572 ms ae-4-90.edge2.NewYork1.Level3.net (4.69.155.208)  200.402 ms ae-1-60.edge2.NewYork1.Level3.net (4.69.155.16)  203.573 ms
21  b.resolvers.Level3.net (4.2.2.2)  199.725 ms  199.190 ms  202.488 ms

4. Comando NETSTAT

El comando Netstat (Estadística de red) muestra información de conexión, información de la tabla de enrutamiento, etc. Para mostrar información de la tabla de enrutamiento, use la opción como -r.

# netstat -r

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.50.0    *               255.255.255.0   U         0 0          0 eth0
link-local      *               255.255.0.0     U         0 0          0 eth0
default         192.168.50.1    0.0.0.0         UG        0 0          0 eth0

Para obtener más ejemplos del comando Netstat, lea nuestro artículo anterior sobre 20 ejemplos de comandos Netstat en Linux.

5. Comando DIG

Dig (buscador de información de dominio) consulta información relacionada con DNS como un registro, CNAME, registro MX, etc. Este comando se utiliza principalmente para solucionar problemas de consultas relacionadas con DNS.

# dig www.tecmint.com; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> www.tecmint.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<

Para obtener más ejemplos del comando Dig, lea el artículo sobre 10 comandos Dig de Linux para consultar DNS.

6. Comando NSLOOKUP

El comando nslookup también se usa para encontrar consultas relacionadas con DNS. Los siguientes ejemplos muestran un registro (dirección IP) de tecmint.com.

# nslookup www.tecmint.com
Server:         4.2.2.2
Address:        4.2.2.2#53

Non-authoritative answer:
www.tecmint.com canonical name = tecmint.com.
Name:   tecmint.com
Address: 50.116.66.136

Para obtener más comandos NSLOOKUP, lea el artículo sobre 8 ejemplos de comandos Nslookup de Linux.

7. Mando de RUTA

El comando route también muestra y manipula la tabla de enrutamiento IP. Para ver la tabla de enrutamiento predeterminada en Linux, escriba el siguiente comando.

# route

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.50.0    *               255.255.255.0   U     0      0        0 eth0
link-local      *               255.255.0.0     U     1002   0        0 eth0
default         192.168.50.1    0.0.0.0         UG    0      0        0 eth0

Agregar, eliminar rutas y puerta de enlace predeterminada con los siguientes comandos.

# route add -net 10.10.10.0/24 gw 192.168.0.1
# route del -net 10.10.10.0/24 gw 192.168.0.1
# route add default gw 192.168.0.1

8. Comando HOST

comando de host para encontrar el nombre de IP o IP para nombrar en IPv4 o IPv6 y también consultar registros DNS.

# host www.google.com

www.google.com has address 173.194.38.180
www.google.com has address 173.194.38.176
www.google.com has address 173.194.38.177
www.google.com has address 173.194.38.178
www.google.com has address 173.194.38.179
www.google.com has IPv6 address 2404:6800:4003:802::1014

Usando la opción -t podemos encontrar registros de recursos DNS como CNAME, NS, MX, SOA, etc.

# host -t CNAME www.redhat.com

www.redhat.com is an alias for wildcard.redhat.com.edgekey.net.

9. Comando ARP

ARP (Protocolo de resolución de direcciones) es útil para ver/agregar el contenido de las tablas ARP del kernel. Para ver la tabla predeterminada, use el comando como.

# arp -e

Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.50.1             ether   00:50:56:c0:00:08   C                     eth0

10. Comando ETHTOOL

ethtool es un reemplazo de mii-tool. Sirve para ver, configurar la velocidad y el modo dúplex de su tarjeta de interfaz de red (NIC). Puede configurar dúplex de forma permanente en/etc/sysconfig/network-scripts/ifcfg-eth0 con la variable ETHTOOL_OPTS.

# ethtool eth0

Settings for eth0:
        Current message level: 0x00000007 (7)
        Link detected: yes

11. Comando IWCONFIG

El comando iwconfig en Linux se usa para configurar una interfaz de red inalámbrica. Puede ver y configurar los detalles básicos de Wi-Fi, como el canal SSID y el cifrado. Puede consultar la página man de iwconfig para saber más.

# iwconfig [interface]

12. Comando HOSTNAME

nombre de host es identificarse en una red. Ejecute el comando hostname para ver el nombre de host de su caja. Puede establecer el nombre de host de forma permanente en/etc/sysconfig/network. Es necesario reiniciar el cuadro una vez que establezca un nombre de host adecuado.

# hostname 

tecmint.com

13. Herramienta GUI system-config-network

Escriba system-config-network en el símbolo del sistema para configurar la configuración de red y obtendrá una agradable interfaz gráfica de usuario (GUI) que también puede usar para configurar la dirección IP, puerta de enlace, DNS, etc., como se muestra a continuación.

# system-config-network

Este artículo puede ser útil para el uso diario del administrador de red Linux en un sistema operativo tipo Linux/Unix. Por favor, comparta a través de nuestro cuadro de comentarios si nos perdimos.