Es difícil encontrar un equipo Linux que no este conectada a la red, sea servidor o estación de trabajo. De vez en cuando se hace necesario diagnosticar fallas, intermitencias o lentitud en la red.
En este articulo revisaremos algunos de los comandos Linux mas usados para el diagnostico de red.
ping
Uno de los primeros comandos, si no es el primero, al momento de diagnosticar una falla o intermitencia de red. La herramienta ping nos ayudar a determinar si es que hay conexión en la red, sea local o Internet.
[root@sinchi03]# ping www.nettix.com.pe PING www.nettix.com.pe (173.239.36.38) 56(84) bytes of data. 64 bytes from r4-nyc.webserversystems.com (173.239.36.38): icmp_seq=1 ttl=59 time=2.52 ms 64 bytes from r4-nyc.webserversystems.com (173.239.36.38): icmp_seq=2 ttl=59 time=2.26 ms 64 bytes from r4-nyc.webserversystems.com (173.239.36.38): icmp_seq=3 ttl=59 time=2.31 ms 64 bytes from r4-nyc.webserversystems.com (173.239.36.38): icmp_seq=4 ttl=59 time=2.36 ms 64 bytes from r4-nyc.webserversystems.com (173.239.36.38): icmp_seq=5 ttl=59 time=2.33 ms 64 bytes from r4-nyc.webserversystems.com (173.239.36.38): icmp_seq=6 ttl=59 time=2.24 ms 64 bytes from r4-nyc.webserversystems.com (173.239.36.38): icmp_seq=7 ttl=59 time=2.35 ms
traceroute
Este comando nos permite ver los saltos que se necesitan para llegar a un destino. En este caso, vemos los saltos que se requieren para llegar a nuestro sitio web. Esta prueba se realizo desde una laptop con Linux. En el ejemplo, le hacemos un traceroute a nuestro sitio web, www.nettix.com.pe.
mgarcia@mgarcia-ProBook:~$ traceroute www.nettix.com.pe traceroute to www.nettix.com.pe (173.239.36.38), 30 hops max, 60 byte packets 1 nettix.com.pe (192.168.1.1) 267.686 ms 267.656 ms 267.616 ms 2 10.104.0.1 (10.104.0.1) 267.630 ms 267.579 ms 267.553 ms 3 10.226.252.209 (10.226.252.209) 267.459 ms 267.426 ms 267.396 ms 4 * * * 5 10.111.2.137 (10.111.2.137) 266.913 ms 10.111.2.141 (10.111.2.141) 266.784 ms 10.111.2.101 (10.111.2.101) 266.678 ms 6 5.53.0.149 (5.53.0.149) 266.594 ms 104.340 ms 104.273 ms 7 5.53.3.155 (5.53.3.155) 135.133 ms 94.142.98.147 (94.142.98.147) 135.055 ms 176.52.255.35 (176.52.255.35) 135.069 ms 8 94.142.127.229 (94.142.127.229) 197.890 ms 5.53.6.49 (5.53.6.49) 197.850 ms 94.142.126.161 (94.142.126.161) 223.327 ms 9 ae-11.r07.nycmny01.us.bb.gin.ntt.net (129.250.9.1) 197.702 ms 197.715 ms 180.145 ms 10 * * * 11 csc180.gsc.webair.net (173.239.0.26) 179.719 ms 149.475 ms 149.383 ms 12 dsn010.gsc.webair.net (173.239.0.34) 149.288 ms 168.309 ms 168.202 ms 13 r4-nyc.webserversystems.com (173.239.36.38) 168.086 ms 168.105 ms 142.733 ms mgarcia@mgarcia-ProBook:~$
route
Este comando nos permite ver la ruta que usa nuestro equipo Linux para conectarse a la red, en este caso. Nuestro equipo sale por el router 192.168.1.1
mgarcia@mgarcia-ProBook:~$ route -n Tabla de rutas IP del núcleo Destino Pasarela Genmask Indic Métric Ref Uso Interfaz 0.0.0.0 192.168.1.1 0.0.0.0 UG 600 0 0 wlo1 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wlo1 192.168.1.0 0.0.0.0 255.255.255.0 U 600 0 0 wlo1 mgarcia@mgarcia-ProBook:~$
dig
Este comando nos permite verificar si el DNS esta funcionando correctamente, antes de ello, debemos verificar cuales DNS tenemos en la configuración de red. En este ejemplo queremos ver la dirección IP de nuestro sitio web, www.nettix.com.pe la cual nos devuelve 173.239.36.38
mgarcia-ProBook:~$ dig www.nettix.com.pe ; <<>> DiG 9.10.3-P4-Ubuntu <<>> www.nettix.com.pe;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12083;; flags: qr rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION:;www.nettix.com.pe. IN A ;; ANSWER SECTION:www.nettix.com.pe. 2821 IN A 173.239.36.38 ;; Query time: 21 msec;; SERVER: 127.0.1.1#53(127.0.1.1);; WHEN: Wed Aug 16 19:58:30 PET 2017;; MSG SIZE rcvd: 51 mgarcia@mgarcia-ProBook:~$
ethtool
Esta herramienta es un remplazo de mii-tool. Viene desde CentOS6 en adelante, y permite ver si la tarjeta de red esta conectada físicamente a la red, es decir. Podemos diagnosticar si el cable de red, efectivamente esta conectado al switch.
# ethtool eth0 Settings for eth0: Supported ports: [ ] Supported link modes: Not reported Supported pause frame use: No Supports auto-negotiation: No Advertised link modes: Not reported Advertised pause frame use: No Advertised auto-negotiation: No Speed: Unknown! Duplex: Unknown! (255) Port: Other PHYAD: 0 Transceiver: internal Auto-negotiation: off Link detected: yes [root@ named]#
ip addr ls
Otra de las herramientas especificas de Linux que nos permite listar las tarjetas de red y sus respectivas direcciones IP. Esta herramientas es muy util cuando se tienen configuradas varias direcciones IP.
[root@linux named]# ip addr ls 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:15:5d:a0:f6:05 brd ff:ff:ff:ff:ff:ff inet 193.82.34.169/27 brd 190.82.35.192 scope global eth6 inet 192.168.61.10/24 brd 192.168.61.255 scope global eth6:1 inet6 fe80::215:5dff:fea0:f605/64 scope link valid_lft forever preferred_lft forever [root@linux named]#
ifconfig
Tan imprescindible como los anteriores, ifconfig nos permite ver la configuración de red de las tarjetas instaladas en nuestro equipo. En este caso se muestra 1 tarjeta de red física desconectada enp37s0, la tarjeta de red local o localhost lo y la tarjeta de red inalambrica wlo1 la cual esta conectada a la red. Resaltamos intencionalmente las tarjetas instaladas y las direcciones IPs asignadas.
mgarcia@mgarcia-ProBook:~$ ifconfig enp37s0 Link encap:Ethernet direcciónHW 2c:41:38:15:4b:0e ACTIVO DIFUSIÓN MULTICAST MTU:1500 Métrica:1 Paquetes RX:0 errores:0 perdidos:0 overruns:0 frame:0 Paquetes TX:0 errores:0 perdidos:0 overruns:0 carrier:0 colisiones:0 long.colaTX:1000 Bytes RX:0 (0.0 B) TX bytes:0 (0.0 B) lo Link encap:Bucle local Direc. inet:127.0.0.1 Másc:255.0.0.0 Dirección inet6: ::1/128 Alcance:Anfitrión ACTIVO BUCLE FUNCIONANDO MTU:65536 Métrica:1 Paquetes RX:19095 errores:0 perdidos:0 overruns:0 frame:0 Paquetes TX:19095 errores:0 perdidos:0 overruns:0 carrier:0 colisiones:0 long.colaTX:1 Bytes RX:1716020 (1.7 MB) TX bytes:1716020 (1.7 MB) wlo1 Link encap:Ethernet direcciónHW 20:10:7a:fc:b1:44 Direc. inet:192.168.1.102 Difus.:192.168.1.255 Másc:255.255.255.0 Dirección inet6: fe80::2b5d:1b14:75a:e095/64 Alcance:Enlace ACTIVO DIFUSIÓN FUNCIONANDO MULTICAST MTU:1500 Métrica:1 Paquetes RX:1660063 errores:0 perdidos:0 overruns:0 frame:0 Paquetes TX:1285046 errores:0 perdidos:0 overruns:0 carrier:0 colisiones:0 long.colaTX:1000 Bytes RX:966719020 (966.7 MB) TX bytes:209302107 (209.3 MB) mgarcia@mgarcia-ProBook:~$
mtr
Otra de nuestras herramientas favoritas. MTR o My Traceroute nos permite ver los saltos de los routers y hacerles un ping a cada uno. Esto es muy útil para determinar cual de estos routers son los que tienen demoras en el trafico de red.
My traceroute [v0.75] My traceroute [v0.75]router02 (0.0.0.0) Wed Aug 16 20:19:24 2017Resolver: Received error response 2. (server failure)er of fields quit Packets Pings Host Loss% Snt Last Avg Best Wrst StDev 1. router2-nettix.com.pe 0.0% 11 0.7 0.7 0.6 0.8 0.1 2. 173.255.239.16 0.0% 11 0.8 0.9 0.8 1.6 0.2 3. 173.255.239.8 0.0% 11 2.9 3.2 0.8 7.8 2.1 4. ??? 5. es0.nyc4.webair.net 0.0% 10 2.0 2.6 1.8 7.7 1.8 6. csc180.gsc.webair.net 0.0% 10 2.6 2.6 2.6 2.7 0.1 7. dsn010.gsc.webair.net 0.0% 10 2.2 2.2 2.1 2.3 0.1 8. r4-nyc.webserversystems.com 0.0% 10 2.3 2.4 2.2 2.5 0.1
nslookup
Otra herramienta para saber la dirección IP del host al que queremos llegar. En este caso queremos saber la IP de nuestro sitio web, www.nettix.com.pe
# nslookup www.nettix.com.pe Server: 127.0.0.1 Address: 127.0.0.1#53 Non-authoritative answer: Name: www.nettix.com.pe Address: 173.239.36.38 [root@sinchi03 named]#
nmtui-edit
Esta herramienta nos permite reconfigurar nuestra tarjeta de red. En el siguiente articulo explicamos como hacerlo en CentOS7.
Cómo configurar nuestra de red en CentOS 7 utilizando la herramienta nmtui