3 respuestas
14 mensajes

Este tema lleva más de 6 meses inactivo. Es recomendable que abras un nuevo tema para retomar la conversación.
  • Fijado

    #1663116

    BAMonitorLan Herramienta de monitorización de Routers Zyxel Serie Prestige

    Buenas Tardes:

    Como continuación al Post abierto en el Foro de Linux os dejo el enlace para disponer de los fuentes de este pequeño proyecto. ( BAMonitorLan ).

    La herramienta realiza una monitorización de este tipo de router obteniendo los datos de la tabla ARP, las conexiones Wlan, el estado y el Download/Upload de la linea avisando, mediante un "globo de aviso" desde un "icon-tray" que se situa en el panel del escritorio, cuando una tarjeta de red se conecta o desconecta del router. En mi caso lo desarrolle para tener controladas las conexiones y evitar ( o al menos conocer) si tenía intrusiones en mi Wlan.

    Actualmente solo funciona bajo Linux, auque espero portarlo a Windows.

    La intención es recoger comentarios de los usuarios para su mejora.

    Las instrucciones de instalación, ejecución son sencillas:

    0.- Bajar los fuentes (obvio)

    1.- Descomprimir en un directorio a elección (recomiendo crear /home//BAMonitorLan )

    2.- Compilar los fuentes de la siguiente manera:

    a.- Monitor:

    gcc -o BAMonitorLan BAMonitorLan.c -D_LINUX

    b.- Icono :

    gcc -m64 -g BAMonitorLanicontray.c -o BAMonitorLanicontray -D_LINUX -Wall `pkg-config --cflags gtk+-2.0` `pkg-config --libs gtk+-2.0`

    3.- Ejecución: Abrir un "shell" . EL Monitor necesita como variable de entorno la password del router (export routerpass=) y 2 argumentos, la Dirección IP y el directorio donde se grabaran los ficheros de salida.

    Ej:

    export routerpass=1234
    ./BAMonitorLan 192.168.1.1 ./ &

    A continuación arrancar el programa "icon-tray" desde el directorio (esto es mejorable) donde se escriben los ficheros de salida del programa Monitor

    Ej:

    ./BAMonitorLanicontray &

    Se pondrá un incono con un Sr con los "Brazos Bajados" que cambiará si alguna tarjeta nueva se conecta o se desconecta con una ventana de aviso.

    Es posible "clickar" con los 2 botones de Ratón para obtener información adicional.

    Gracias por vuestra atención y ayuda.

    Saludos

    • #1890439

      Se compila sin problemas BAMonitorLanicontray.c, el…

      Se compila sin problemas BAMonitorLanicontray.c, el BAMonitorLan.c también me compila, pero salen estos warnings:

      josh@josh-desktop:~$ gcc -o BAMonitorLan BAMonitorLan.c -D_LINUX
      BAMonitorLan.c: En la función 'main':
      BAMonitorLan.c:201: aviso: el formato '%d' espera el tipo 'int', pero el argumento 3 es de tipo 'long int'
      BAMonitorLan.c: En la función 'IconTray':
      BAMonitorLan.c:232: aviso: el formato '%.6u' espera el tipo 'unsigned int', pero el argumento 3 es de tipo '__suseconds_t'
      BAMonitorLan.c:237: aviso: el formato no es una cadena literal y no tiene argumentos de formato
      BAMonitorLan.c:252: aviso: el formato no es una cadena literal y no tiene argumentos de formato
      BAMonitorLan.c: En la función 'EscribeSYSOUT':
      BAMonitorLan.c:827: aviso: el formato '%.6u' espera el tipo 'unsigned int', pero el argumento 3 es de tipo '__suseconds_t'

      No he podido probar más pq no tengo un Prestige aquí. Actualizo tu post con una capturita.

      Durante la ejecución me salen estos avisos:

      No localizo fich. Log ./icontray.log 
      (BAMonitorLanicontray:8761): Gtk-CRITICAL **: gtk_text_buffer_emit_insert: assertion `g_utf8_validate (text, len, NULL)' failed

      La verdad que puede ser muy muy útil para quien quiera tener bien controlado lo que pasa en su router. Gracias por compartirlo.

    • #1890494

      Hola LnkLst :) Me encanta ver otros programadores en…

      Hola LnkLst Contento
      Me encanta ver otros programadores en bandaancha (ya sabía yo que Donovan y yo, no estábamos sólos Contento )
      A ver, te cuento:

      Tengo Ubuntu 9.10. En BAMonitorLan, me da los mismos warnings que a Josh. No son nada, ya que se refieren a tipos de variable declarados, que luego a la hora de trabajar con ellos, se ha cambiado el tipo (un warning de lo más normal en C y C++).

      En BAMonitorLanicontray, he tenido un problema, del cual me he dado cuenta muy rápido de que pasaba. El primer argumento del compilador, lo tienes como -m64, lo cual le indica al compilador que compile el programa en 64 bits. Al intentar compilar en 64 bits, intenta buscar todas las cabeceras de 64 bits, y como mi ubuntu es de 32 bits, le faltan justo las cabeceras del stub.h de 64 bits.
      He cambiado ese argumento por -m32, para obligar al compilador a compilar el programa a 32 bits, y la compilación no ha dado ningún problema.

      Lo malo, es que no tengo ADSL, ni ningún router Zyxel, para poder hacer pruebas, pero el programa se ejecuta perfectamente (excepto por las últimas lineas del post de Josh, donde indica que no localiza el fichero de log).

      Por mi parte, perfecto Contento
      Lo único, que tienes que mirar, es la parte del fichero de log, que debe tener algún problema. Voy a mirar el código fuente, y te digo si veo algo.

      Un saludo Contento y enhorabuena por la herramienta Contento Contento

      • #1890505

        OK :) Creo que ya he visto el fallo. En el fichero…

        OK Contento Creo que ya he visto el fallo. En el fichero BAMonitorLanicontray.c tienes lo siguiente en la función LeerFichero():

        if ((fp = fopen(FPLog,"r")) == NULL)
        {
        fprintf(stderr,"No localizo fich. Log %s \n",FPLog);
        }

        El problema, viene de que cuando se ejecuta por primera vez el monitor, no existe ningún fichero de log, por eso siempre muestra ese mensaje.
        Hay varias soluciones, pero la más "elegante", es que si al abrir el fichero de log, se produce un error (lo normal, es porque no exista), se cree uno nuevo, avisando al usuario del incidente. De esa forma, si existe el fichero de log, lo abre, y si no existe lo crea, de forma, que el programa puede trabajar con el fichero de log, desde el primer momento.

        Espero no ser demasiado pesado, y haberte ayudado un poco Guiño Contento

        Un saludo Contento

        • #1890521

          Cualquier comentario será bien recibido. Gracias

          Cualquier comentario será bien recibido. Gracias

      • #1890508

        Me siento realmente abrumado, :) (el padre de BASpeed me…

        Me siento realmente abrumado, Contento (el padre de BASpeed me felicita !!!). Muchas gracias.

        Estoy ya preparando una nueva versión para quitar el fichero intermedio. Estoy pensado en Colas / memoria compartida o Tuberias, aparte de que el Monitor Principal sea el que arranque el "icon-tray" cuando obtenga la conectividad y corregir un par de "bichos" que tiene.

        Voy ademas a añadir un par de medidas que me sugirio Josh (SNR y tonos).

        Los warnings GTK son porque faltan los iconos o no los localiza. Como no tenía ninguno apunte a los iconos de estandar de GNome /usr/share/icons/gnome/scalable/apps/. El IconBA es la copia del logo de BandaAncha que no lo puse.

        Espero que la V020 tenga ademas un instalador para hacerlo mas sencillo y también estoy trabajando con la parte Windows.

        Gracias por vuestra atención

        • #1890515

          No te sientas abrumado ;) A mi me paso lo mismo con la…

          No te sientas abrumado Guiño A mi me paso lo mismo con la primera versión de BASpeed, y aquí estamos Guiño Lo importante es ser humilde, aprender de los errores, y mejorar siempre Contento

          Siempre es bueno felicitar a aquellos, que ponen herramientas gratuitas (y en tu caso open source, lo cual tiene más mérito todavía), a disposición de todos los usuarios, para que les faciliten la vida con sus PC's (o en este caso, con sus routers).

          Y las gracias, te las tenemos que dar a ti Contento Contento Gracias por ofrecer tu esfuerzo, a todos los usuarios Contento

          Un saludo Contento y a seguir en ello Contento

    • #1890597

      Todo lo que podía decir ya lo ha dicho djnacho, muy bien…

      Todo lo que podía decir ya lo ha dicho djnacho, muy bien dicho además, así que solo me resta darte las gracias y la enhorabuena por el trabajo.

      Tengo un Zyxel prestige 660 HW-D1. No te prometo nada, los días de semana, y muchas veces los fines de semana también, para mi son infernales en cuanto a trabajo pero al menos intentaré probarlo este fin de semana Contento

      Saludos y muchísimas gracias por tu generoso esfuerzo Contento

      • #1890674

        Ari, personas con tu actitud son las que me hacen creer aún…

        Ari, personas con tu actitud son las que me hacen creer aún en el ser humano. Bonachon

      • #1890683

        Una pregunta: Esto serían los "tonos" y SNR?? router> wan…

        Una pregunta: Esto serían los "tonos" y SNR??

        router> wan adsl linedata far

        noise margin upstream: 29 db
        output power downstream: 22 db
        attenuation upstream: 4 db
        carrier load: number of bits per symbol(tone)
        tone 0- 31: 00 00 00 02 35 67 77 88 88 99 99 98 88 77 64 32
        tone 32- 63: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 64- 95: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 96-127: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 128-159: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 160-191: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 192-223: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 224-255: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 256-287: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 288-319: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 320-351: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 352-383: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 384-415: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 416-447: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 448-479: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 480-511: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

        router> wan adsl linedata near

        noise margin downstream: 22 db
        output power upstream: 12 db
        attenuation downstream: 14 db
        carrier load: number of bits per symbol(tone)
        tone 0- 31: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        tone 32- 63: 00 00 02 23 33 44 55 66 67 78 88 99 99 99 9a aa
        tone 64- 95: aa aa aa aa aa aa a9 a9 aa aa aa aa aa aa aa aa
        tone 96-127: aa aa aa aa aa aa aa aa aa aa aa aa aa 99 99 99
        tone 128-159: 99 99 99 99 89 99 99 99 99 99 99 99 99 99 99 99
        tone 160-191: 99 99 99 99 99 99 99 99 99 99 98 99 98 98 88 98
        tone 192-223: 88 88 88 88 88 88 88 88 88 88 88 88 88 88 89 98
        tone 224-255: 88 88 88 28 88 88 88 88 88 88 88 88 88 88 88 88
        tone 256-287: 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
        tone 288-319: 88 88 88 77 88 87 77 88 88 87 87 77 77 78 87 77
        tone 320-351: 77 77 77 77 77 87 77 77 77 77 77 77 77 77 77 77
        tone 352-383: 76 77 77 76 66 76 76 66 67 66 66 66 66 66 66 66
        tone 384-415: 66 66 66 66 66 66 66 66 66 66 66 66 66 66 66 66
        tone 416-447: 66 66 66 56 66 55 55 55 55 55 55 55 55 55 55 55
        tone 448-479: 54 55 55 44 44 44 44 44 44 44 44 33 33 33 33 33
        tone 480-511: 33 33 33 33 33 33 33 33 33 22 22 22 22 22 22 22