Autor Tema: ayuda con script aap o magicconnect  (Leído 2615 veces)

0 Usuarios y 1 Visitante están viendo este tema.

perdi

  • Visitante
ayuda con script aap o magicconnect
« en: 23-05-2014, 13:06 (Viernes) »
Buenas.

No suelo postear mucho, pero si leeros.

Antecedentes.
Despues de estar trasteando con un router Huawei hw553 (Broadcom), y añadiendole una usb wifi que tenia por ahi tirada (zydas 1211), he conseguido configuralo como cliente-repetidor (Gracias a un post con explicaciones de JAR, que remite a un firm con drivers para rt73 y zydas 1211rw, y siguiendo el proceso de brujo_20).

Para el que le interese: al principio puse la zydas modo cliente (STA) y el router modo Acces point (AP), funcionó, pero la zydas no tiene mucho alcance. Por lo que decidí invertir las radios, poniendo el router HW553 en modo STA, y la zydas en AP, que sí tiene suficiente potencia para repartir por casa  (Lo tengo funcionando así desde hace un par de semanas, y ok, salvo que alguna vez debo reiniciar porque no acaba de arrancar).

Aclaracion, el esquema es:  
"AP1(ADSL)"  ---  "HW533 modo STA"  ---  "ZYDAS 1211 modo AP"

perdon por el rollo de antes, pero seguro serà util para alguien.

A lo que voy. ahora que ya tengo el roter funcionando, se me ocurrió, ¿i si el "HW533 modo STA" pudiera conectarse no a un solo "AP1(ADSL)", sinó a varios "AP2(ADSL)" "AP3(ADLS), conociendo las essid si son open, o las essid y keys de ser encrypt????

Bueno, investigando por google, resulta que eso existe, especialmente en dd-wrt, PERO TAMBIEN en Openwrt.

Son unos scripts que lo que hacen es comprobar un archivo (lista blanca, en la que hay los datos de 1,2,3, n, AP1(ADSL), con sus SSID y keys/open)  que hace que la  tarjeta STA (en mi caso  "HW533 modo STA") se conecte, por el orden establecido en la lista blanca, a los APn(ADSL). el Script comprueba si el AP1(ADSL), devuelve ping de google, si lo devuelve, pues OK, se conecta y listo. Si no devuelve pin, el Script acude al AP2(ADSL) núm. 2 de la lista blanca, comprueba ping y conexión , y así n. veces (es un bucle).

Finalizando.

he visto diversos scripts de este tipo, pero para atheros.

Final: ¿sabeis si existe algún escript parecido a esto para los Huawei HW-553 Broadcom?

¿Podemos entre todos, hacerlo? Su utilidad es evidente.

PD. Algunos scripts de ejemplo, los han llamado:
 Magicconnect ... https://forum.openwrt.org/viewtopic.php?id=22427
o AAP-openwrt ...  https://forum.openwrt.org/viewtopic.php?id=43352

este ultimo esta muy bien, pero al no saber programar no acabo de entenderlo modificarlo.

Gracias.
y saludos

Editado, motivo: mejor explicacion


« Última modificación: 23-05-2014, 13:16 (Viernes) por perdi »

wolf_rider

  • Visitante
Re: ayuda con script aap o magicconnect
« Respuesta #1 en: 23-05-2014, 17:18 (Viernes) »
Buena tema es esta he leído los hilos parece que funciona pero no entiendo porque se hace falta esto. Esto de conectar se a 3 redes diferentes. Yo he hecho con la ayuda de este foro que si cae la red vuelva a conectar se solo. Otra historia es si esta red desaparece que automáticamente se conecte al otro "Vecino" "xexexexexe". Ni la Alfa r36 es capaz de hacerlo sola tienes que entrar y hacer lo, pues lo normal es en openwrt también. Acabo de ver el script y ami en tu caso me parece que va a funcionar para y levanta wlan0 cojee los datos de fichero wlist (el nombre la clave etc.) lo único que no entiendo es porque cambian la mac del la tarjeta inalámbrica cada vez. ahí os dejo el script.


#!/bin/sh
. /etc/wifiMgr/config


randMacAddr()
{

   macaddr=$(dd if=/dev/urandom bs=1024 count=1 2>/dev/null|md5sum|sed 's/^\(..\)\(..\)\(..\)\(..\)\(..\).*$/00:\2:\3:\4:\5:02/')
   uci set wireless.@wifi-iface[0].macaddr="$macaddr"
   uci commit wireless
   /etc/init.d/network restart

}


NetStatus()
{
   logger WifiMgr: Checking network...
   net=$(ping google.es -c5 |grep "time=")
   if [ "$net" ]; then
      logger WifiMgr: Network OK
                #got ping response!
                return
   else
      logger WifiMgr: Network failed. Starting network change...
      NetChange
   fi
}



NetChange()
{
   logger WifiMgr: Performing network scan...
        scanres=
        ifconfig wlan0 down
        iw phy phy0 interface add scan0 type station
        ifconfig scan0 up

        while [ "$scanres" = "" ]; do
                #Sometimes it shows nothing, so better to ensure we did a correct scan
                scanres=$(iw scan0 scan|grep SSID)
        done

        iw dev scan0 del
        ifconfig wlan0 up
        killall -HUP hostapd
   logger WifiMgr: WifiMgr: Searching available networks...
   
   if [ "$1" ]; then
      ssid=net"$1"_ssid
      eval ssid=\$$ssid
      echo Trying to connect to network "$1"":    $ssid"
      n=$(expr "$1" - "1")
   else
           n=0
        fi
       
        while [ "1" ]; do
                n=$(expr "$n" + "1")

                if [ "$n" = "99" ]; then
                                #too much counts. Crazy wireless count, breaking loop!
                                break
                fi

                ssid=net"$n"_ssid
                encrypt=net"$n"_encrypt
                key=net"$n"_key

                eval ssid=\$$ssid
                eval encrypt=\$$encrypt
                eval key=\$$key
               
                if [ "$ssid" = "" ]; then
                                #ssid not existing or empty. Assume it's the end of the wlist file
                                break
                fi
                echo RED: $ssid
                echo CLAVE: $key
                echo SEGURIDAD: $encrypt
               

                active=$(echo $scanres | grep " $ssid ">&1 )
                if [ "$active" ]; then
                   if [ "$1" ]; then
                      echo Network found. Connecting...
                   fi
         logger WifiMgr: "$ssid" network found. Applying settings..
                        uci set wireless.@wifi-iface[0].ssid="$ssid"
                        uci set wireless.@wifi-iface[0].encryption="$encrypt"
                        uci set wireless.@wifi-iface[0].key="$key"
                        uci commit wireless
                        /etc/init.d/network restart
                       
                        #wait some seconds for everything to connect and configure
                        sleep $NewConnCheckTimer
         logger WifiMgr: Checking connectivity...

                        #check for internet connection, 5 ping sends
                        net=$(ping google.es -c5 |grep "time=")
                        if [ "$net" ]; then
            #got ping response!
            logger WifiMgr: Internet working! Searching ended
            if [ "$1" ]; then
               echo Sucess!
            fi
                           break
                        fi
                        if [ "$1" ]; then
                           echo Connection failed!
                           break
                        fi
         logger WifiMgr: Failed! Searching next available network...
                fi
        done
}

if [ "$1" = "" ]; then
   echo "No arguments supplied"

elif [ "$1" = "--force" ]; then
   NetChange $2

elif [ "$1" = "--daemon" ]; then
   
   if [ "$randMac" = "1" ]; then
      randMacAddr   
   fi
   NetChange
   
   while [ "1" ]; do
      sleep $ConnCheckTimer
           NetStatus
   done

else
   echo "Wrong arguments"
fi

« Última modificación: 23-05-2014, 17:32 (Viernes) por wolf_rider »

Desconectado jar229

  • Moderador
  • *
  • Mensajes: 4599
Re: ayuda con script aap o magicconnect
« Respuesta #2 en: 23-05-2014, 20:14 (Viernes) »
No veo dónde dice que AAP sea sólo para routers con chipset atheros  ^-^

Lo has probado en el hg553 ?
Valoraciones positivas en compra/venta:
167 en Htcmania
224 en Har2mano
23 en elchapuzasinformatico
12 en gsmspain
 ....
 
Mis equipos en venta: https://drive.google.com/open?id=1Zi_bqLSfg_qCT8sx6JhPaWVvSeZXpcka

perdi

  • Visitante
Re: ayuda con script aap o magicconnect
« Respuesta #3 en: 25-05-2014, 12:00 (Domingo) »
Hola. Con el huawei aun no he podido probar (esta en casa de mis padres), pero ayer noche, despues del futbol,  lo intente con un comtrend ct 5365 (tb es broadcom). No funcionó. Me dió error de script linea 2 y linea 5.
Lo hice siguiendo las instrucciones del AAP, cree el dir, i despues con vi cree los distintos archivos en las rutas señaladas. Les di los oportunos permisos, pero nada, error de script.

Seguiré cuando tenga tiempo e iré informando. Gracias.

Desconectado Tki2000

  • Moderador
  • *
  • Mensajes: 2147
Re: ayuda con script aap o magicconnect
« Respuesta #4 en: 25-05-2014, 12:43 (Domingo) »
Hola. Con el huawei aun no he podido probar (esta en casa de mis padres), pero ayer noche, despues del futbol,  lo intente con un comtrend ct 5365 (tb es broadcom). No funcionó. Me dió error de script linea 2 y linea 5.
Lo hice siguiendo las instrucciones del AAP, cree el dir, i despues con vi cree los distintos archivos en las rutas señaladas. Les di los oportunos permisos, pero nada, error de script.

Seguiré cuando tenga tiempo e iré informando. Gracias.

Según el script, la llamada de inicio se hace con
Código: [Seleccionar]
        start-stop-daemon -S -x $APP -p $PID_FILE -m -bSin embargo según los desarrolladores de openwrt ahora las llamadas de inicio se deben hacer con
Código: [Seleccionar]
        service_start /usr/bin/$APPAsí que toca modificar el script si la versión de openwrt es superior a la 38023 : https://dev.openwrt.org/changeset/38023
Puedes ver los cambios que se han hecho en los scripts de inicio al final de esta página: http://wiki.openwrt.org/doc/devel/packages
No habrás entendido algo, hasta que seas capaz de explicárselo a tu abuela...
Hacemos pantallas con píxeles casi invisibles, para luego ampliar la letra porque no la vemos... Bonita paradoja...
Creamos analfabetos tecnológicos con una velocidad pasmosa. Todo el mundo "maneja" tecnología, casi nadie sabe lo que tiene entre las manos, pero todo el mundo opina.
El analfabetismo, antes, pasaba desapercibido. Ahora, se transmite por Internet y las redes sociales.
Los dispositivos táctiles y las pantallas pequeñas son una lacra para la información relevante y el desarrollo de interfaces de usuario.
Trabajar sin la nube debería ser una prestación de los IoT, no un bug.