ITcomputer tu blog informático. Cursos, descargas, temas, prácticas. Ofimática, TICS, Soporte, Mantenimiento, Ciencias de la computación, programación, y mucho más!!

sábado, 4 de abril de 2026

🚀 Automatizando el monitoreo de red con Bash + Telegram 🚀

 


En estos días estuve trabajando en un script en Bash para monitorear la conectividad de routers y enlaces críticos mediante ping, extrayendo métricas como:

✅ Pérdida de paquetes
✅ RTT mínimo / promedio / máximo
✅ Estado del host (router o internet)

La información se procesa automáticamente y se envía en tiempo real a Telegram, permitiendo tener visibilidad inmediata del estado de la red sin depender de plataformas pesadas.

💡 Ideal para:
WISP / ISP
NOC
Redes empresariales
Monitoreo ligero y efectivo

Este tipo de soluciones demuestran que, con herramientas simples y bien pensadas, se pueden construir sistemas de monitoreo confiables, escalables y de bajo costo.

Seguimos optimizando, automatizando y mejorando la operación 🚀

----- SCRIPT -----

#!/bin/bash

# ===== CONFIGURACIÓN =====
BOT_TOKEN="CAMBIA_POR_TU_TOKEN"
CHAT_ID="CAMBIA_POR_ID_CHAT_TELEGRAM"
HOST="CAMBIA_POR_IP_A_MONITOREAR"
COUNT=5
TIMEOUT=2

# ===== EJECUCIÓN DEL PING =====
PING_RESULT=$(ping -c $COUNT -W $TIMEOUT $HOST)

# ===== EXTRAER ESTADÍSTICAS =====
PACKET_LOSS=$(echo "$PING_RESULT" | grep -oP '\d+(?=% packet loss)')
RTT_LINE=$(echo "$PING_RESULT" | grep "rtt")

if [ -z "$RTT_LINE" ]; then
    MESSAGE="❌ *Ping Fallido* Host: $HOST Pérdida de paquetes: ${PACKET_LOSS:-100}%"
else
    RTT_MIN=$(echo "$RTT_LINE" | cut -d '=' -f2 | cut -d '/' -f1)
    RTT_AVG=$(echo "$RTT_LINE" | cut -d '=' -f2 | cut -d '/' -f2)
    RTT_MAX=$(echo "$RTT_LINE" | cut -d '=' -f2 | cut -d '/' -f3)

    MESSAGE="📡 *Resultado de Ping*
Host: $HOST
Paquetes perdidos: $PACKET_LOSS%
RTT min/avg/max: $RTT_MIN / $RTT_AVG / $RTT_MAX ms"
fi

# ===== ENVIAR A TELEGRAM =====
curl -s -X POST https://api.telegram.org/bot$BOT_TOKEN/sendMessage \
    -d chat_id=$CHAT_ID \
    -d parse_mode=Markdown \
    --data-urlencode text="$MESSAGE"

----- SCRIPT -----

NOTA:
Corre en cualquier servidor linux, al archivo en donde se guarde se le deben de dar todos los permismos para lectura y ejecución.


hashtag
Networking hashtagSysAdmin hashtagNOC hashtagWISP hashtagISP
hashtagLinux hashtagBash hashtagDevOps hashtagAutomation
hashtagNetworkMonitoring hashtagPing hashtagTelegramBot
hashtagInfraestructura hashtagIT hashtagOpenSource
hashtagTecnología hashtagIngenieríaDeRedes

Share:

0 comentarios:

Publicar un comentario

Blogroll

FacebookTwitterYoutubeVimeoTumblrPinterest

Translate

Formulario de contacto

Nombre

Correo electrónico *

Mensaje *