domingo, 11 de agosto de 2019

"Me he quedado sin internet en el server ¿Puedes mirar lo que ha pasado?"

Esto fue algo que un compañero me dijo en relación a un servidor de la empresa que tenía que enviar unos informes diariamente y que de repente ya no lo hacía. Lo que se me dijo es que la máquina se había quedado sin internet, lo que causaba el fallo. Pues veamos hasta qué punto era así y cuál era la solución.


El problema de un Sysadmin no es no saber qué hacer, sino no entender lo que te piden. Ese es el verdadero problema. Cuando a mí me dijeron que la máquina se había quedado sin internet, lo primero que se me ocurrió fue hacer un ping al 8.8.8.8, y llegaba. De momento Internet, sí tenía. Probemos otra cosa.

ping -c4 www.google.com

Aqquí estaba el problema, daba timeout. El problema no era Internet, sino el DNS. Así que miré cómo se estaba resolviendo dns en esa máquina y vi que era mediante resolvconf, por lo que, al ver que en el /etc/resolv.conf sólamente teníamos el namespace 127.0.X.X; lo que ocurría es que esta ip no era válida, lo que ocasionaba el error.

¡OJO, QUE NI SE OS OCURRA MOFICIAR EL /etc/resolv.conf A MANO! Ese archivo, en este caso, estaba siendo generado por resolvconf, por lo que teníamos que forzar que resolvconf añadiera las direcciones correctas. Esto lo hacemos de la siguiente manera:

cd /etc/resolvconf/resolv.conf.d/
cp -p head head.orig
vim head 

En el archivo head, lo que haremos será añadir los namespace correctos, por ejemplo 8.8.8.8 y 8.8.4.4.

resolvconf -u

Una vez que lo tengamos, guardamos y forzamos a que resolvconf recree el /etc/resolv.conf con los datos del archivo head que acabamos de modificar.

cat /etc/resolv #comprobamos que s eha cambiado
ping -c4 www.google.es #Lanzamos un ping para probarlo

Después podemos comprobar que efectivamente se han aplicado los cambios tal y como deseábamos y que ya resuelve por nombre de dominio.

Ahora me detengo un rato. Esto no es difícil, de hecho, darse cuenta que era problema del dns. Lo que me lleva a pensar que la persona que me dijo que había un problema con internet, no se detuvo ni 3 minutos que se tarda en analizar brevemente esto para darse cuenta que era del DNS y no un problema de conectividad.

En lugar de probar a hacer ping a IP y a dominio, bastaba también con que hiciese un simple

host www.google.com

Y vería que no resuelve. Es por esto que ser sysadmin a veces es complicado, porque te pueden estar diciendo que el fallo es X cuando realmente es un fallo Z y en este caso era fácil y tarde, literalmente 3 minutos en hacerlo; pero otras veces el fallo no es tan evidente y el no analizar previamente antes de decir "esto falla" puede provocar grandes retrasos de tiempo a la hora de hacer nuestro trabajo.

Por esta razón os pido que, si ocurre o se da un fallo en vuestra organización, antes de buscar corriendo al sysadmin, investiguéis un poco y tratéis de ver cuál es el error. No hace falta que lo solucionéis, pero sí que digáis algo como:

"Oye, este servidor no envía los informes que debe enviar. He mirado y ping a IPs fuera de la organización hace, el problema es que pings a dominios no hace, incluso he ejecutado un host y no ha sacado nada; por lo que creo que el fallo puede ser de los dns, pero no estoy seguro ¿puedes mirarlo?"

Con algo así ya bastaría. No pido/pedimos mucho.

¿Hackeamos el mundo?

No hay comentarios:

Publicar un comentario

Related Posts Plugin for WordPress, Blogger...

Entrada destacada

El server me sabe a poco.

Soy un fanático del Rock y de Debian . (Creo que voy a inventar Rockbian, que suena bien y todo xD) Llevaba tiempo queriendo unir estos 2 c...