Autor Tema: Instalar USB Alfa ( r8187 ) en un router linksys WRT160NL con firmware OpenWRT  (Leído 17867 veces)

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

Bassboy

  • Visitante
     Hola compañeros,

     Tengo un router WRT160NL con un puerto usb, y una USB Alfa 500mw ... y sí, también se me había ocurrido conectarla para tener toda la potencia de la Alfa como cliente, y un punto de acceso con la interfaz wireless del WRT160NL.  Me puse a buscar y buscar, y después de dos días sin comer ni dormir, lo he conseguido. No quiero impacientaros más, aquí os la dejo.



¡¡¡ATENCION!!! He comprobado que funciona con la USB Alfa 500 (chip rtl8187l) pero no funciona con una antena de marca generica de 1Watio que también tiene el mismo chip. Según he podido leer es porque no es capaz de alimentarla al necesitar tanta potencia.




Situación inicial:

Tenemos el router WRT160NL, con su firmware original.

Paso 1: Configurar nuestra tarjeta de red Ethernet con la siguiente configuración.

   IP: 192.168.1.2
   MASCARA DE SUBRED (MASK): 255.255.255.0
   PUERTA DE ENLACE(GATEWAY): 192.168.1.1 (Ip inicial del router)
   



Paso 2: Descargar el firmware OpenWRT.

   Entramos en http://downloads.openwrt.org/backfire/10.03/ar71xx/
   
   Descargamos uno de los siguientes:
      openwrt-ar71xx-wrt160nl-jffs2.bin                     Si vamos a trastear mucho con el firmware
      openwrt-ar71xx-wrt160nl-squashfs.bin              Si queremos una versión más estable
      
   En nuestro caso descargaremos la segunda.





Paso 3: Cargar el firmware de openwrt.

   ATENCIÓN: NO ME HAGO RESPONSABLE DE LOS DAÑOS QUE PUEDA SUFRIR EL APARATO, BIEN POR CORTES ELÉCTRICOS, POR UN FIRMWARE QUE NO SEA BAJADO DE LA PÁGINA OFICIAL DE OPENWRT O POR CUALQUIER OTRO MOTIVO.
   
           En algunas ocasiones se me ha bloqueado el router y lo he tenido que restaurar por el puerto serie, pero normalmente me ha funcionado a la perfección.

   Para ello entrar con un navegador en "192.168.1.1", la interfaz web del router.
   Entrar en la pestaña de administración "Administration".
   Entrar en la subpestaña de actualización del firmware "Firmware Upgrade".
   Examinar >>> Seleccionar el archivo >>> Aceptar
   Start to upgrade
   
   Ahora cargará el firmware y dará un mensaje de "error al actualizar". No hagáis caso, no ha pasado nada
   Esperad un minuto (yo lo hago por seguridad de que haya cargado todo el firmware).
   Ahora reiniciar el router (desenchufando y enchufando, lo más rapido).

Paso 4: Entrando en OpenWRT.

   En este momento, entra de nuevo a la interfaz del router con un navegador:
   
      http://192.168.1.1/cgi-bin/luci (aunque http://192.168.1.1/ también debería bastar)
      
      Usuario: root
      Clave:     root
      
      Si no entra, prueba a hacer ping y comprobar que hay respuesta.
      Inicio >>> Ejecutar >>> ping -t 192.168.1.1
      
      A mi me tarda un minutillo en iniciar el router, no desesperéis.
      
Paso 5: Configurando una conexión a internet.

   Hay que disponer de un router conectado a internet, ya que nos tenemos que descargar algunos paquetes desde el router.
   
   MENU Administration >>> Network >>> Interfaces >>> Lan
   
   Rellenamos de la siguiente manera:
   
      Protocol:         static
      Bridge interfaces:   Activado
      Enable STP:         Desactivado
      Interface:         eth0
      IPv4-Address:      192.168.2.1
         (IP de nuestro WRT160NL dentro de la red que tengamos configurada en casa.
                         Importante que no coincida con ninguna ip de nuestra red.)
      IPv4-Netmask:      255.255.255.0
      IPv4-Gateway:      192.168.1.1 (IP del router que sirve como puerta de enlace)
   
   En la lista de "--Additional Field--" seleccionamos "DNS Server" y clic en "Add"
   Ahora rellenamos el campo nuevo que ha aparecido:
   
      DNS-Server:         192.168.1.1 (IP del router que sirve como puerta de enlace)
      
   Click en "Save & Apply" (El router tardara un poco en guardar la configuración, paciencia)
   
   --------------- Esto no es necesario --------------

   Comprobación para usuarios avanzados:
   
   Si conectais con el programa "putty" en la ip del router por telnet y comprobais el archivo network obtendréis lo siguiente.
   
   root@OpenWrt:/# cat /etc/config/network
   
      config 'interface' 'loopback'
            option 'ifname' 'lo'
            option 'proto' 'static'
            option 'ipaddr' '127.0.0.1'
            option 'netmask' '255.0.0.0'

      config 'interface' 'lan'
            option 'ifname' 'eth0'
            option 'type' 'bridge'
            option 'proto' 'static'
            option 'netmask' '255.255.255.0'
            option 'defaultroute' '0'
            option 'peerdns' '0'
            option 'ipaddr' '192.168.1.2'
            option 'gateway' '192.168.1.1'
            option 'dns' '192.168.1.1'

      config 'interface' 'wan'
            option 'ifname' 'eth1'
            option 'proto' 'dhcp'

      config 'switch'
            option 'name' 'eth0'
            option 'reset' '1'
            option 'enable_vlan' '1'

      config 'switch_vlan'
            option 'device' 'eth0'
            option 'vlan' '1'
            option 'ports' '0 1 2 3 4 5'

   --------------- Hasta aquí no es necesario --------------
   
Paso 6: Instalando paquetes necesarios.

   Tenemos dos opciones: Telnet o interfaz web.
   
    - Por el interfaz web (larga y fácil):
   
      En este momento, entra de nuevo a la interfaz del router con un navegador:
      OJO: la ip ha cambiado!!!
      
         http://192.168.2.1/cgi-bin/luci (aunque http://192.168.2.1/ también debería bastar)

      Entramos en Administration >>> System >>> Software
      Click en "Update package lists" y mirar el cuadro "Status".
      
         -Si encontramos un mensaje de error, por ejemplo "Error (Code 255)", es porque el router no accede a internet, comprobad donde está el fallo.
         
         -Si todo va bien, obtendremos "Package lists updated: OK".
         
         En la lista "Available packages" debereis instalar los siguientes,haciendo click en el "Install" que aparece a la izquierda de cada uno. Podeis ayudaros del filtro de arriba para encontrarlos. Yo suelo poner "usb" y click en "Find Package".
         
         Estos son para activar la interfaz wifi interna de nuestro WRT160NL y dar soport WPA.
         
            kmod-ath9k      2.6.32.10+2010-03-24-5      This module adds support for wireless adapters based on
            wpad         20100309-1               This package contains a full featured IEEE 802.1x/WPA/EAP/RADIUS
            
         Estos son para activar la interfaz USB interna de nuestro WRT160NL y dar soporte a la Alfa. Puede que funcione con alguno menos, yo los seleccioné siguiendo mi intuición y funcionó.
         
            kmod-usb-core   2.6.32.10-1               Kernel support for USB
            kmod-usb-ohci   2.6.32.10-1               Kernel support for USB OHCI controllers
            kmod-usb-uhci   2.6.32.10-1               Kernel support for USB UHCI controllers
            kmod-usb2      2.6.32.10-1               Kernel support for USB2 (EHCI) controller
            libusb         0.1.12-2               A library for accessing Linux USB devices
            libusb-1.0      1.0.6-1                  libusb-1.0
            usbutils      0.86-1                  USB devices listing utilities
            
         Este es el paquete específico que da soporte al chip "rtl8187".
         
            kmod-rtl8187   2.6.32.10+2010-03-24-5      Realtek Drivers for RTL818x devices (RTL8187 USB)
            
         Opcionalmente podemos instalar la interfaz web alternativa "webif". Si lo hacéis consultad el "Paso 9" antes de acceder al router por el navegador web:
         
            webif         0.3-4893               A HTTP administrative console for OpenWrt
         
   
         NOTA: Cada vez que instaléis uno de ellos es posible que el router se reinicie, lo que nos causa la molestia de volver a meter la clave de root, navegar por el menu, filtrar paquetes, e instalar el siguiente, por eso prefiero hacerlo por telnet.
   
         Cuando terminéis con todos los paquetes, reiniciamos el router. Administration >>> System >>> Reboot
         
   - Por Telnet (corta, algo más difícil para usuarios nuevos):
      
      Abre Putty u otro cliente de este tipo.
      
      Conecta con los siguientes parámetros:
      IP:      192.168.1.2
      Puerto: 23 (Al marcar tipo telnet, se configura solo)
      Tipo:   Telnet
      
      Click en "Open". Si lo hemos hecho correctamente se abre la consola. Si no conecta, puede ser que hayáis cambiado la clave. En ese caso configurad la conexión de tipo "SSH", puerto 22. El user es root, y la clave que hayáis puesto.
      
      Actualizamos la lista de paquetes con el comando "opkg update" (sin las comillas". Obtenemos este resultado:
      
         root@OpenWrt:/# opkg update
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/Packages.gz.
         Inflating http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/Packages.gz.
         Updated list of available packages in /var/opkg-lists/packages.
         
      A continuación instalamos los paquetes con este comando (sin las comillas):
      
      "opkg install kmod-ath9k wpad kmod-usb-core kmod-usb-ohci kmod-usb-uhci kmod-usb2 libusb libusb-1.0 usbutils kmod-rtl8187"
      
      Opcionalmente podemos instalar la interfaz web alternativa "webif". Si lo hacéis consultad el "Paso 9" antes de acceder al router por el navegador web:
      
      "opkg install kmod-ath9k wpad kmod-usb-core kmod-usb-ohci kmod-usb-uhci kmod-usb2 libusb libusb-1.0 usbutils webif kmod-rtl8187"
      
      Si todo funciona se producirá la siguiente salida:
      
         root@OpenWrt:/# opkg install kmod-ath9k wpad kmod-usb-core kmod-usb-ohci kmod-usb-uhci kmod-usb2 libusb libusb-1.0 usbutils kmod-rtl8187
         
         Installing kmod-ath9k (2.6.32.10+2010-03-24-5) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-ath9k_2.6.32.10+2010-03-24-5_ar71xx.ipk.
         Installing kmod-ath (2.6.32.10+2010-03-24-5) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-ath_2.6.32.10+2010-03-24-5_ar71xx.ipk.
         Installing kmod-mac80211 (2.6.32.10+2010-03-24-5) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-mac80211_2.6.32.10+2010-03-24-5_ar71xx.ipk.
         Installing kmod-crypto-core (2.6.32.10-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-crypto-core_2.6.32.10-1_ar71xx.ipk.
         Installing kmod-crypto-arc4 (2.6.32.10-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-crypto-arc4_2.6.32.10-1_ar71xx.ipk.
         Installing kmod-crypto-aes (2.6.32.10-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-crypto-aes_2.6.32.10-1_ar71xx.ipk.
         Installing kmod-cfg80211 (2.6.32.10+2010-03-24-5) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-cfg80211_2.6.32.10+2010-03-24-5_ar71xx.ipk.
         Installing wireless-tools (29-4) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/wireless-tools_29-4_ar71xx.ipk.
         Installing iw (0.9.19-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/iw_0.9.19-1_ar71xx.ipk.
         Installing wpad (20100309-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/wpad_20100309-1_ar71xx.ipk.
         Installing crda (1.1.0-2) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/crda_1.1.0-2_ar71xx.ipk.
         Installing kmod-usb-core (2.6.32.10-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-usb-core_2.6.32.10-1_ar71xx.ipk.
         Installing kmod-nls-base (2.6.32.10-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-nls-base_2.6.32.10-1_ar71xx.ipk.
         Installing kmod-usb-ohci (2.6.32.10-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-usb-ohci_2.6.32.10-1_ar71xx.ipk.
         Installing kmod-usb-uhci (2.6.32.10-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-usb-uhci_2.6.32.10-1_ar71xx.ipk.
         Installing kmod-usb2 (2.6.32.10-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-usb2_2.6.32.10-1_ar71xx.ipk.
         Installing libusb (0.1.12-2) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/libusb_0.1.12-2_ar71xx.ipk.
         Installing libusb-1.0 (1.0.6-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/libusb-1.0_1.0.6-1_ar71xx.ipk.
         Installing usbutils (0.86-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/usbutils_0.86-1_ar71xx.ipk.
         Installing zlib (1.2.3-5) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/zlib_1.2.3-5_ar71xx.ipk.
         Installing kmod-rtl8187 (2.6.32.10+2010-03-24-5) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-rtl8187_2.6.32.10+2010-03-24-5_ar71xx.ipk.
         Installing kmod-eeprom-93cx6 (2.6.32.10-1) to root...
         Downloading http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/kmod-eeprom-93cx6_2.6.32.10-1_ar71xx.ipk.
         Configuring kmod-nls-base.
         Configuring kmod-usb-core.
         Configuring iw.
         Configuring kmod-eeprom-93cx6.
         Configuring kmod-crypto-core.
         Configuring kmod-crypto-arc4.
         Configuring kmod-crypto-aes.
         Configuring wireless-tools.
         Configuring kmod-cfg80211.
         Configuring kmod-mac80211.
         Configuring kmod-rtl8187.
         Configuring kmod-usb-ohci.
         Configuring libusb.
         Configuring zlib.
         Configuring usbutils.
         Connecting to www.linux-usb.org (216.34.181.97:80)
         -                    100% |*******************************|   446k 00:00:00 ETA
         Done.
         Configuring kmod-usb2.
         Configuring kmod-ath.
         Configuring kmod-ath9k.
         Configuring crda.
         Configuring wpad.
         Configuring libusb-1.0.
         Configuring kmod-usb-uhci.
         root@OpenWrt:/#

      A continuación reiniciar el router con el comando "reboot".
      
Paso 7: Añadiendo las interfaces al archivo de configuración /etc/config/wireless
   
   Abre Putty u otro cliente de este tipo. Si no conectáis, probad con SSH como antes.
   
   Conecta con los siguientes parámetros:
   IP:      192.168.1.2
   Puerto: 23 (Al marcar tipo telnet, se configura solo)
   Tipo:   Telnet
   
   En la consola ejecutamos el siguiente comando (sin comillas):
   
      "wifi detect > /etc/config/wireless"
      
   Para comprobar que se ha realizado correctamente ejecutamos el siguiente comando (sin comillas):
      
      "cat /etc/config/wireless"
      
   Si algo no fue bien, no mostrará nada. Si funcionó mostrará esto:
   
      root@OpenWrt:/# cat /etc/config/wireless
      config wifi-device  radio0
            option type     mac80211
            option channel  5
            option macaddr  00:25:9c:22:79:b4
            option hwmode   11ng
            option htmode   HT20
            list ht_capab   SHORT-GI-40
            list ht_capab   DSSS_CCK-40
            # REMOVE THIS LINE TO ENABLE WIFI:
            option disabled 1

      config wifi-iface
            option device   radio0
            option network  lan
            option mode     ap
            option ssid     OpenWrt
            option encryption none

      config wifi-device  radio1
            option type     mac80211
            option channel  5
            option macaddr  00:c0:ca:20:53:e3
            option hwmode   11g

            # REMOVE THIS LINE TO ENABLE WIFI:
            option disabled 1

      config wifi-iface
            option device   radio1
            option network  lan
            option mode     ap
            option ssid     OpenWrt
            option encryption none

   Ahí tenemos funcionando nuestras 2 interfaces wifi!!!
   
      radio0 --> En mi caso es la interfaz wifi interna del WRT160NL
      radio1 --> En mi caso es la interfaz wifi Alfa 500mw (RTL8187L)
      
      
Paso 8: Activar las interfaces wifi
   
   Opcion 1: Por telnet, eliminais las 2 líneas "option disabled 1" que aparecen.
   
   Opción 2: Entráis en el interfaz web de OpenWRT.
           Menú Administration >>> Network >>> Wifi >>> Radio0
           Activamos la opción "enable"
           
           Y lo mismo para Radio1:
           Menú Administration >>> Network >>> Wifi >>> Radio1
           Activamos la opción "enable"
              
   
Paso 9: Si instalais WEBIF y no desinstaláis LUCI, deberéis especificar la GUI que quereis usar a la hora de acceder al router mediante el navegador.
   
      Para acceder mediante LUCI:
      
         http://192.168.1.2/cgi-bin/luci/
      
      Para acceder mediante WEBIF:
      
         http://192.168.1.2/cgi-bin/webif/
         
         
Paso 10: Configurad el router para que actúe de cliente con la USB Alfa, y de punto de acceso con la interfaz interna, si sois capaces.

      Intento que conecte como cliente con esta config:
 
            IP:                     192.168.1.254
            MÁSCARA:         255.255.255.0
            GATEWAY:         192.168.1.1
            DNS-SERVER:    192.168.1.1

      Y que actue como Punto de Acceso con esta config:

            IP:                     192.168.3.1
            MÁSCARA:         255.255.255.0

       Todo esto de tal forma que todos mis equipos se conectan a la red 192.168.3.0, dispongan de acceso a internet, y entre ellos, pero..... que no puedan accederse desde la red 192.168.1.0.

       Agradecería vuestra ayuda..... sería genial un tutorial o al menos los archivos de configuración:

              /etc/config/wireless
              /etc/config/network



     ESPERO QUE OS SIRVA. ¡¡¡SALUDOS Y SUERTE !!!!




« Última modificación: 12-11-2011, 16:30 (Sábado) por Bassboy »

Charlye35

  • Visitante
Buenas, Bassboy.

Buen tutorial, he metido todos los paquetes, pero para el CT-5361, la tarjeta me la reconoce desde Putty haciendo un "lsusb", pero desde Open Wrt de Luci, voy a la seccion de wifi, y solo tengo un device "Radio0", como puedo activar la segunda, "Radio1", por comandos desde putty, O, debería de activarse automaticamente?

Un cosilla mas, en la seccion de System-software-solo tengo 208k libres, y me gustaria hacer espacio de memoria, y quitar los paquetes que me salen en la pestaña disponibles seccion "k", como por ejemplo "kmod-usb-storage" este paquete da la opcion de instalar, pero ya lo tengo instalado, y me gustaria eliminarlo para hacer sitio.

Un saludo.