Autor Tema: [HG532s] Cambio a firmware Tplink con función repetidor  (Leído 7132 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado pajarraco

  • **
  • Mensajes: 3
Re:[HG532s] Cambio a firmware Tplink con función repetidor
« Respuesta #20 en: 03-12-2019, 02:41 (Martes) »
Funciona perfecto o casi perfecto !!.

Tengo Internet y acceso al router con internet (192.168.0.1), pero a las maquinas se les asignan IP en el rango 192.168.0.xx directamente. Esto para mi no es un gran problema pero no se, si debería funcionar así. Ademas pierdo el acceso al tplink (cuyo IP es 192.168.2.1), (ahora que lo pienso no probé conectarme a traves de 192.168.0.253).

Para poder crear una subred en 192.168.2.xx, aislada y no visible por las maquinas en 192.168.0.0 probé activar el DHCP server del TP-link. De esta forma, cada maquina en la red se le asignó un IP en el rango 192.168.2.xx, tengo acceso al router 192.168.0.1 y puedo hacer ping a las maquinas de ambas redes 192.168.0.xx y 192.168.2.xx, pero no tengo acceso a internet, por ej. ping 8.8.8.8 no funciona. Cuando entro a router con internet, veo la lista de clientes DHCP y figura 192.168.0.253, así que no se bien porque no tengo conexión a internet.

PD: ¿ hay forma de apagar el AP del tplink, pero mantener la conexion WDS ?



Desconectado danitool

  • **
  • Mensajes: 40
Re:[HG532s] Cambio a firmware Tplink con función repetidor
« Respuesta #21 en: 03-12-2019, 09:39 (Martes) »
Funciona perfecto o casi perfecto !!.

Tengo Internet y acceso al router con internet (192.168.0.1), pero a las maquinas se les asignan IP en el rango 192.168.0.xx directamente. Esto para mi no es un gran problema pero no se, si debería funcionar así. Ademas pierdo el acceso al tplink (cuyo IP es 192.168.2.1), (ahora que lo pienso no probé conectarme a traves de 192.168.0.253).

Para poder crear una subred en 192.168.2.xx, aislada y no visible por las maquinas en 192.168.0.0 probé activar el DHCP server del TP-link. De esta forma, cada maquina en la red se le asignó un IP en el rango 192.168.2.xx, tengo acceso al router 192.168.0.1 y puedo hacer ping a las maquinas de ambas redes 192.168.0.xx y 192.168.2.xx, pero no tengo acceso a internet, por ej. ping 8.8.8.8 no funciona. Cuando entro a router con internet, veo la lista de clientes DHCP y figura 192.168.0.253, así que no se bien porque no tengo conexión a internet.

PD: ¿ hay forma de apagar el AP del tplink, pero mantener la conexion WDS ?

Esta configuración debería solucionar lo del acceso a internet
Código: [Seleccionar]
brctl delif br0 apcli0
iptables -t nat -A POSTROUTING -o apcli0 -j MASQUERADE
ifconfig apcli0 192.168.0.253
route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.0.1
echo 1 > /proc/sys/net/ipv4/ip_forward

Es obvio que son cambios volátiles y si reinicias el router los pierdes. La única forma es que modifiques rootfs.
En el rootfs que modifiqué para el tutorial de instalación, hay un script para configuraciones extra que coloqué en el archivo /bin/custom_config
« Última modificación: 03-12-2019, 09:44 (Martes) por danitool »

Desconectado pajarraco

  • **
  • Mensajes: 3
Re:[HG532s] Cambio a firmware Tplink con función repetidor
« Respuesta #22 en: 03-12-2019, 22:33 (Martes) »
Muchas gracias Danitool, funciona perfectamente !!. Lo que sí, tuve que setear el DNS manualmente en la configuracion DHCP, ( 8.8.8.8 ), pues tenia ping a todas las IP externas, pero no me resolvía las direcciones.
Ahora queda modificar el rootfs para que los cambios sean permanentes, y si tengo tiempo, estudiar un poco como modificar la pagina de configuración para activar este "modo" de funcionamiento a voluntad.

Estaba pensando en aplicar este router a una antena externa, ya que este modo de funcionamiento me permite tirar cable de ethernet, en vez de coaxil.
« Última modificación: 03-12-2019, 22:34 (Martes) por pajarraco »

Desconectado gracasola

  • **
  • Mensajes: 6
Re:[HG532s] Cambio a firmware Tplink con función repetidor
« Respuesta #23 en: 03-12-2019, 23:15 (Martes) »
Por cierto, si alguien ha conseguido compilar en C/C++ para este dispositivo, agradecería me indicase las herramientas que uso y sus versiones. Haciendo una compilación cruzada en MIPS Big Endian (gcc-mips-linux-gnu) solo he conseguido errores de violación del segmento. Sospecho que tiene que ver con las librerias de c, que deben ser para una version del kernel 2.6, o bien de la cabecera. Sinceramente, es la primera vez que intento una compilación cruzada. Uso Ubuntu 18.04. Gracias de antemano.

Desconectado danitool

  • **
  • Mensajes: 40
Re:[HG532s] Cambio a firmware Tplink con función repetidor
« Respuesta #24 en: 04-12-2019, 17:54 (Miércoles) »
Hola gracasola, cuando realicé ciertas modificaciones en el rootfs del tutorial también compilé algunos extras para el mismo. Desgraciadamente después del último fiasco en el disco duro que almacenaba parte del proyecto perdí las configuraciones y anotaciones varias para compilar, aunque realmente no tuve problemas para hacerlo.

La toolchain que usé es una preparada para este SoC en particular, que es un Trendchip a pesar de ser del fabricante Ralink.

La toolchain la conservo, la tengo en la ruta "/opt/trendchip/mips-linux-uclibc", creo que la situé ahí para que no dé problemas para compilar. Puedes encontrarla en la GPL del Asus DSL-N14U

https://dlcdnets.asus.com/pub/ASUS/wireless/DSL-N14U/GPL_DSL-N14U_1123617.zip

Para compilar cosas sencillas no debería haber problemas. Por ejemplo usando este script para realizar la compilación cruzada, a modo de ejemplo:
Código: [Seleccionar]
#!/bin/bash
export CROSS_COMPILE=/opt/trendchip/mips-linux-uclibc/usr/bin/mips-linux
export AR=${CROSS_COMPILE}-ar
export AS=${CROSS_COMPILE}-as
export LD=${CROSS_COMPILE}-ld
export RANLIB=${CROSS_COMPILE}-ranlib
export CC=${CROSS_COMPILE}-gcc
export CPP=${CROSS_COMPILE}-cpp
export NM=${CROSS_COMPILE}-nm
export CXX=${CROSS_COMPILE}-c++
#export LIBS="-static"
export CFLAGS="-fomit-frame-pointer -O2 -DTCSUPPORT_CPU_RT63365 -DTC3262"
export STRIP=${CROSS_COMPILE}-strip

./configure \
--host=mips \
--build=i586-pc-linux-gnu \
--without-ssl \
--disable-debug \
--disable-nls
make
$STRIP -s aplicacion


Desconectado gracasola

  • **
  • Mensajes: 6
Re:[HG532s] Cambio a firmware Tplink con función repetidor
« Respuesta #25 en: 05-12-2019, 00:10 (Jueves) »
Hola gracasola, cuando realicé ciertas modificaciones en el rootfs del tutorial también compilé algunos extras para el mismo. Desgraciadamente después del último fiasco en el disco duro que almacenaba parte del proyecto perdí las configuraciones y anotaciones varias para compilar, aunque realmente no tuve problemas para hacerlo.

La toolchain que usé es una preparada para este SoC en particular, que es un Trendchip a pesar de ser del fabricante Ralink.

La toolchain la conservo, la tengo en la ruta "/opt/trendchip/mips-linux-uclibc", creo que la situé ahí para que no dé problemas para compilar. Puedes encontrarla en la GPL del Asus DSL-N14U

https://dlcdnets.asus.com/pub/ASUS/wireless/DSL-N14U/GPL_DSL-N14U_1123617.zip

Para compilar cosas sencillas no debería haber problemas. Por ejemplo usando este script para realizar la compilación cruzada, a modo de ejemplo:
Código: [Seleccionar]
#!/bin/bash
export CROSS_COMPILE=/opt/trendchip/mips-linux-uclibc/usr/bin/mips-linux
export AR=${CROSS_COMPILE}-ar
export AS=${CROSS_COMPILE}-as
export LD=${CROSS_COMPILE}-ld
export RANLIB=${CROSS_COMPILE}-ranlib
export CC=${CROSS_COMPILE}-gcc
export CPP=${CROSS_COMPILE}-cpp
export NM=${CROSS_COMPILE}-nm
export CXX=${CROSS_COMPILE}-c++
#export LIBS="-static"
export CFLAGS="-fomit-frame-pointer -O2 -DTCSUPPORT_CPU_RT63365 -DTC3262"
export STRIP=${CROSS_COMPILE}-strip

./configure \
--host=mips \
--build=i586-pc-linux-gnu \
--without-ssl \
--disable-debug \
--disable-nls
make
$STRIP -s aplicacion
Muchas gracias. Antes de que me respondieras he compilado usando buildroot-2011.05, aunque aun no lo he podido probar. Espero en estos días hacer la prueba, y echare un vistazo a link de Asus. Con lo que sea comentaré. Un saludo

Desconectado Algo96

  • **
  • Mensajes: 2
Re:[HG532s] Cambio a firmware Tplink con función repetidor
« Respuesta #26 en: 22-12-2019, 18:08 (Domingo) »
Esta es una pequeña guía para cambiar el limitado firmware con el que vienen los Huawei HG532s, a un firmware de Tplink.

Normalmente los HG532s suelen ser de algún proveedor de internet aunque eso no nos importa demasiado. En este caso el HG532s que vamos a usar dispone de 8 MB de flash, es lo único relevante en principio.

Requisitos:
  • Adaptador de puerto serie TTL para conectar al router, y saber manejarlo mínimamente
  • Cliente TFTP en nuestro ordenador. En esta guía usamos un ordenador con sistema operativo GNU/Linux, aunque no es obligatorio, pero es más cómodo para la guía.

El puerto serie UART dispone del siguiente pinout. Solo conectaremos TX, RX y GND, baudrate=115200:


El cambio se basa en reemplazar toda la imagen de la flash por la de un Tplink TD-W8968 v2, cuyo hardware es idéntico. Así que lo que haremos es flashear la imagen completa de la flash cuya estructura es diferente a la del HG532s. Como los datos de calibración y la MAC son únicas de cada dispositivos, lo que primero hacemos es tunear la imagen para que tenga los de nuestro dispositivo particular.

  • Tunear la imagen de Tplink
  • Hacemos un backup de la flash entera para lo cual ejecutamos este script de phyton rt63365tool.py con el siguiente comando:
    python2 rt63365tool.py --read=hg532sfull.bin --addr=0xB0000000 --size=0x800000 --block=0x10000
    encendemos el router con el puerto serie conectado, el backup debería comenzar inmediatamente. Puede tardar bastante en completarlo
  • Descargar el backup de tplink TD-W8968v2-flashbackup-mod.zip. Descomprimimos y lo renombramos a tplinkfull.bin 
  • Ahora insertamos los datos de calibración del wifi de nuestro router en la imagen de tplink, ejecutar:
    dd if=hg532sfull.bin bs=1 skip=$((0x11000)) count=512 | dd of=tplinkfull.bin bs=1 seek=$((0x7f0000)) conv=notrunc
  • Insertamos la MAC de nuestro router en la imagen tplink
    echo -ne \\x00\\x11\\x22\\x33\\x44\\x55 | dd of=tplinkfull.bin bs=1 seek=$((0x7DF100)) conv=notrunc
    En este caso la MAC era 00:11:22:33:44:55
  • Flashear la imagen de Tplink en nuestro rotuer
  • Apagar el router
  • Conectar el adaptador de puerto serie al router
  • Conectar el cable ethernet del ordenador al router
  • Poner una IP estática en nuestro ordenador compatible con 192.168.1.1 (por ejemplo 192.168.1.33)
  • Encender el router e inmediatamente pulsar una tecla en la consola serie, lo cual debería parar el arranque en la línea de comandos del bootloader con el símbolo:
    bldr>
  • Enviar la imagen vía TFTP. En el ordenador ejecutar:
    tftp 192.168.1.1 -m binary -c put tplinkfull.bin
  • Ahora flasheamos la imagen recibida. En la consola serie ejecutar:
    flash 0 80020000 800000
  • Una vez finalizado el flasheo, reiniciar el router desenchufando la alimentación y volviiendo a conectarla
  • Listo, ya debería arrancar con el firmware Tplink

Como ejemplo una sesión de flasheo en la consola serie
Código: [Seleccionar]
RT63365 at Wed Dec 12 17:15:09 CST 2012 version 0.8

Memory size 32MB

Found SPI Flash 8MiB Winbond W25Q64 at 0xb0000000

Press any key in 3 secs to enter boot command mode.
Search PHY addr and found PHY addr=0

bldr>
Starting the TFTP download...
...
Total 8388608 (0x800000) bytes received

bldr> flash 0 80020000 800000
Write to flash from 80020000 to 0 with 800000 bytes
################################################################################################################################
program from 0 to 800000
...
bldr>

Algunas características destacables de este firmware:
  • Soporte de modems 3G
  • Soporte de función repetidor
  • Soporte para ethernet WAN
  • Soporte multiprocesador. El chip RT63365 sorprendentemente dispone de 4 cores. Aparentemente en el firmware  de Huawei no parece estar habilitado en el kernel el soporte multiprocesador. En el de Tplink sí.

Además en la imagen que suministro hay unas cuantas modificaciones con añadidos interesantes en rootfs, como un acceso telnet en el puerto 2323, y algunas utilidades que el firm original de Tplink no tenía, por ejemplo la utilidad mtd, para poder reflashear rootfs personalizados de forma cómoda. Podemos instalar el firmware genuino 100 por cien de Tplink si así lo deseamos simplemente haciendo un upgrade de su firmware oficial después del flasheo descrito en la guía.

La función repetidor del firmware Tplink está en el apartado WDS, el cual no es un WDS real sino un modo AP+client_bridge de Mediatek. Este modo suele ser conocido los que ya tienen cierta experiencia en el mundo WiFi como modo repetidor universal. Aunque el inconveniente del modo repetidor universal para los que no lo sepan es la pérdida de transparencia en el flujo de datos

Para disponer de un WDS real hice una modificación con la que si introducimos en la configuración wifi, en el apartado SSID,  el nombre "WDS", entonces sí actuará como tal. Como es sabido WDS tiene una compatibilidad limitada ya que tiene que emparejarse con otro dispositivo con WDS del mismo fabricante con sus drivers propietarios (Mediatek/Ralink). La ventaja es que aquí sí que tenemos transparencia y rendimiento óptimo en todo momento.

Una captura de la página con la función Repetidor:



En el emulador de la configuración por web podemos ver todo el repertorio completo: https://emulator.tp-link.com/89680306/index.htm

Esta información la publiqué también en http://en.techinfodepot.shoutwiki.com/wiki/Huawei_HG532s. Donde se pueden encontrar más detalles. Lo bueno de este dispositivo es que es virtualmente imposible de brickear, ya que la CPU dispone de un bootloader básico desde el que podemos cargar un recovery por XMODEM, y así flashear toda la imagen aunque la flash estuviese vacía totalmente.


Buenas tardes DaniTool,

Primero de todo te doy la enhorabuena por el trabajazo que has hecho con este router, al fin tendrá una utilidad práctica este router.

Te quería comentar el siguiente problema que tengo y que no me deja continuar con el tutorial. Al ejecutar el comando de Python para obtener un backup del router se me queda pillado eternamente en "Waiting for a prompt...". Lo que hago es ejecutar el comando con sudo, puesto que si no lo hago así me dice que no tiene permisos para acceder a /deb/ttyUSB0, y posteriormente enciendo el router con el puerto serial ya conectado al portatil. Qué puedo estar haciendo mal?
PD: si me conecto al router con Putty a través del puerto serial obtengo lectura del mismo sin problemas.

Un saludo y gracias por adelantado!!!

Desconectado danitool

  • **
  • Mensajes: 40
Re:[HG532s] Cambio a firmware Tplink con función repetidor
« Respuesta #27 en: 23-12-2019, 15:10 (Lunes) »
Hola Algo96, para solucionar lo de los permisos del puerto serie usa este comando:
Código: [Seleccionar]
sudo chmod ugo+rw /dev/ttyUSB0
Comprueba que la linea de comandos de tu bootloader usa el prompt
Código: [Seleccionar]
bldr>Ya que es la cadena de caracteres que usa el script para saber que está listo para empezar el backup enviando comandos de volcado

No hay ningún requerimiento más en particular para que el script funcione. Comprueba que todo está conectado correctamente, en putty deberías ser capaz de parar tu mismo manualmente en la consola de comandos del bootloader (obteniendo el prompt bldr>), de otra forma tal vez el cable TX del puerto serie no funcionaría.
« Última modificación: 23-12-2019, 15:11 (Lunes) por danitool »

Desconectado ebonggio

  • **
  • Mensajes: 1
Re:[HG532s] Cambio a firmware Tplink con función repetidor
« Respuesta #28 en: 31-12-2019, 20:28 (Martes) »
Hola! buscando en internet que poder hacer con mi HG532s me encontré con esta guia.
Siendo que soy una persona que no sabe ni como cambiar un bombillo voy a hacer una pregunta bastante boba.

Como deberia conectar el adaptador de puerto serie en la placa? Deberia soldar los cables o existe otra manera de conectarlos?



ese adaptador iba a comprar dice ser `Puerto Com Serial Adaptador Conversor Usb A Uart Rs232 Ttl` pero no sabria que si necesito ademas de eso un soldador para poder conectarme a la placa. Eso saludos y excelente trabajo

Desconectado danitool

  • **
  • Mensajes: 40
Re:[HG532s] Cambio a firmware Tplink con función repetidor
« Respuesta #29 en: 01-01-2020, 11:44 (Miércoles) »
Hola ebonggio. Sí, ese es el adaptador que necesitas para conectar el puerto serie.

Lo recomendable es que sueldes un pinheader (2.54 mm pitch) a la placa, se puede hacer directamente o mediante cables como indico en un post anterior.

Aunque hay gente habilidosa que es capaz de conectar un puerto serie sin soldar nada, por ejemplo pinchando alfileres en el puerto pero no lo recomiendo ya que si se suelta alguno y cae por la placa podrías hacer un corto y quemar el router.

Desconectado DOGUIS

  • **
  • Mensajes: 2
Re:[HG532s] Cambio a firmware Tplink con función repetidor
« Respuesta #30 en: 05-02-2020, 12:33 (Miércoles) »
Como se los datos de calibracion?? gracias

//FINAL Y MÁS DOS RESPUESTAS