¿Cómo instalo OpenWrt en un router TP-Link WR941ND con Ubuntu?
Durante su tercera presidencia, Juan Perón ajustó el rumbo que habría de 
tomar el movimiento, y lo hizo mediante la instalación del firmware 
libre OpenWrl para el router TP-Link WR941ND, y desde Ubuntu.

¡Vean señores!

No se trata de limitar las aspiraciones ni los pensamientos del hombre, 
Se trata de educar al hombre, y de darle el sentido de equilibrio sin el 
cual nosotros no vamos a ninguna parte.
Tenemos que volver a la Grecia de Pericles, donde en cada frontispicio 
había una leyenda que decía "Todo en su medida y armoniosamente". 
Nosotros somos un Movimiento de izquierda. Pero la izquierda que 
propugnamos es una izquierda justicialista por sobre todas las cosas, no 
es una izquierda comunista ni anáquica. Es una izquierda justicialista 
que quiere reaizar una comunidad dentro de la cual cada argentino tenga 
la posibilida de realizarse. No mas allá.

Aquí tenemos al Partido Comunista, que si se coloca dentro de la ley y 
acciona dentro de la ley, será amparado y defendido por nosotros Pero 
dentro de la ley. Cuidado con sacar los pies del plato, porque entonces 
tendremos el derecho de darle con todo.

No admitimos la guerrilla, porque yo conozco perfectamente el origen de 
esa guerrilla. Los partidos comunistas que en otros países han visto que 
dentro de la ley iban a su destrucción, han querido salirse de la ley 
para defenderse mejor. Eso no es posible. No es posible dentro de un 
pais donde la ley ha de imonerse. Porque la única manera de no ser 
esclavos, es ser esclavos de la ley, y eso nosotrros tendremos que 
imponerlo, de cualquier manera.

Lo mismo ha sucedido con el software integrado en los aparatos de 
consumo. Han querido salvarse empleando firmwares privativos. Este 
firmware no es otra cosa que un programa que controlan su funcionamiento 
y está firmemente guardado en una memoria pequeña ROM grabable 
eléctricamente (EEPROM) y adosada como una chip electrónico. Pero aún 
así, a ellos también les daremos con todo.

Tenemos OpenWrt, una imagen libre pensada para instalarse en routers 
compatibles dotados de arquitectura MIPS. Flasheando la memoria del 
router, podremos reemplazar el firmware propietario del router por uno 
libre y justicialista. Incluso podríamos usar la CPU del router para 
correr pequeñas aplicaciones a través de una consola terminal.

OpenWrt no es compatible con todos los routers, pero si con una 
apreciable cantidad. Solamente hemos de instalarlo si nuestro módem está 
positivamente comprobado y aceptado como posible receptor del mismo, 
pues si no, corremos el riesgo cierto de dejarlo inutilizado. Como la 
mayoría de los cambios ahora se harán a través de una consola de texto, 
recomiendo proceder a quienes - además de desear el máximo de libertad, 
administran el sistema - tienen los conocimientos necesarios para operar 
GNU con Linux desde la consola Terminal. Una vez que meditamos y tomamos 
conciencia de los peligros de la lucha y las responsabilidades que ello 
acarrea, ponemos manos a la obra.

En mi caso, hago uso de un router de tres antenas TP-Link WR-941ND. 
Asumiremos también que el aparato ya está configurado, funcionando y 
conectado a internet empleando su firmware original.

Conectaremos nuestro equipo con Ubuntu al router empleando un cable 
Ethernet común conectado a alguna de las fichas de color amarillo que 
éste tiene. De momento no utilizaremos Wifi ya que la radio del router 
se desactivará temporalmente.

Indudablemente, en primer lugar habremos de loguearnos a la interfaz web 
original de fábrica que se encuentra en la memoria ROM del router. Como 
sabemos, esta interfaz web nos es provista por la gente de TP-Link para 
que cualquier neófito pueda configurar el aparato desde una PC conectada 
al mismo y dotada de cualquier navegador de internet.

Desde el equipo que utilizaremos para configurar todo abrimos nuestro 
navegador favorito, y en el campo de "dirección URL" ingresaremos la 
dirección IP correspondiente al router. Normalmente la misma será:

192.168.0.1

Para poder entrar a la configuración del router, este nos solicitará 
autenticación por medio del usuario del router y su contraseña. Si no 
hemos cambiado los valores de fábrica, en ambos campos deberíamos poner 
"admin".

Se presentará la interfaz web que permite modificar las opciones del 
router. Lo necesario es asegurarnos de qué tipo de router y qué versión 
de hardware tenemos.


Para ello vamos a System Tools ("herramientas del sistema") y escojo 
Firmware Update ("actuaizar firmware").

La pantalla nos indicará la "versión de hardware" (ej. V3). Es 
importante pues no es raro que existan varias versiones del mismo 
router, y si bien la carcasa exterior puede ser igual entre todos ellos, 
su interior, microprocesador y memoria pueden ser diferentes y en 
algunos casos hasta incompatibles. En mi caso, veo que se trata del 
WR941ND versión V3.

Antes de ponernos a instalar el firmware libre no oficial, conviene 
siempre guardar los archivos de configuración del router, y también 
guardar una copia del firmware de fábrica, por las dudas. Con esto en 
vista, en la página de la Interfaz Web al apartado System Tools / Backup 
& Restore, y presionamos el botón Backup. Debemos indicarle dónde lo 
queremos guardar (podemos elegir nuestra carpeta de usuario). Esto nos 
creará un archivo llamado config.bin con las configuraciones propias: lo 
conservarán por las dudas de querer volver al firmware oficial más 
tarde. También iremos a la web oficial de TP-Link y descargamos el 
firmware oficial para la versión V3 o la que nos corresponda.

Ahora ya podremos descargar el firmware libre OpenWrt correspondiente a 
nuestra versión. Podremos hacernos con el desde la web de OpenWrt o 
descargarlo directamente  usando la Terminal. En este caso, abro una 
consola con Ctrl+Alt+T e ingreso los siguientes comando de organización:

sudo apt-get install openssh-client telnet scp

cd ~/Escritorio

wget 
https://downloads.openwrt.org/chaos_calmer/15.05.1/ar71xx/generic/openwrt-15.05.1-ar71xx-generic-tl-wr941nd-v3-squashfs-factory.bin

En breves instantes se descargará en nuestro /Escritorio un archivo 
binario precompilado llamado 
openwrt-15.05.1-ar71xx-generic-tl-wr941nd-v3-squashfs-factory.bin. 
Indudablemente, se trata de la imagen libre de OpenWrt, pero 
compatibilizada especialmente para nuestro router TP-Link WR941ND V3.

Para sobreescribir el firmware original por el OpenWrl libre debemos ir 
nuevamente a la interfaz web de configuración del router, y en el 
apartado "System Tool" presionamos el botón "Browse" ("explorar"). Nos 
tocará indicar la ruta al Escritorio donde descargaron el archivo 
openwrt-15.05.1-ar71xx-generic-tl-wr941nd-v3-squashfs-factory.bin. 
Conforme lo hayamos encontrado, podremos oprimir el botón Aceptar. 
Surgirá un cuadro advirtiéndonos del peligro inherente de flashear una 
memoria ROM, las consecuencias perniciosas para el aparato si lo 
apagamos antes de que se produzca el refresco de la memoria, etc. Si 
estamos seguros, presionamos Ok, y se dará inicio al cambio 
revolucionario que el Pueblo anhela.

La carga del nuevo software libre será patente mediante una barra de 
progreso, hecho que se extenderá por aproximadamente dos minutos. Luego, 
el aparato ser reiniciará solo, proceso que dura otros 2 minutos mas.

No sería extraño que el router no de red al cabo de este procedimiento. 
Esperamos un par de minutos desconectamos la alimentación eléctrica del 
router. Conviene también apagar y volver a encender nuestro cablemódem. 
Esto hará que el mismo ponga a cero su conexión (también podríamos 
presionar el botón trasero WPS/Reset, introduciendo un clip en su 
orificio).


Al reiniciarse el router y el cablemódem, se pondrá a cero todas sus 
configuraciones del router. (Si hubiésemos desconectado todos los 
dispositivos, recordemos que en la entrada WAN va conectada al 
cablemódem, y las entradas LAN1 a LAN4 se enlazan el resto de los 
dispositivos).

La mecánica a operar es la siguiente: al conectarnos por primera vez 
debemos configurar una contraseña de administrador del router por medio 
de la consola insegura Telnet. Una vez establecida esta contraseña, ya 
podremos ingresar y configurar el resto de las opciones por el método de 
consola cifrada segura SSH.

la dirección IP original de nuestro router TP-Link era 192.168.0.1, 
mientras que la IP que toma por defecto el firmware libre OpenWrt es 
192.168.1.1. Por ello emplearemos la Terminal para loguearnos, con el 
siguiente Comando de Organización:

telnet 192.168.1.1

Si todo va bien, debería presentarse la siguiente pantalla y el prompt 
root@OpenWrt, indicándonos que estamos logueados dentro del router, con 
todo el poder telemático que ello representa.

Acto seguido, escribimos el comando necesario para cambiar la 
contraseña:

passwd

Nos aparecerá el mensaje

Changing password for root
New Password:

Tipeamos "a ciegas" una contraseña que se nos ocurra para las sesiones 
de configuración del router. Debemos repetirla para no tener problemas. 
Una vez que el procedimiento esté completo, nos indicará con el mensaje 
"Password for Root changed by root" ("contraseña para root cambiada por 
el root"). Es importante saber que una vez configurada nuestra clave a 
través del sistema de consola insegura telnet, la misma se desactivará, 
de modo que a partir de este momento sólo podremos utilizar el método de 
logueo seguro cifrado SSH.

Salimos de la sesión telnet con:

exit

Y nos volvemos a loguear, pero usando SSH:

ssh root@OpenWrt

Tengamos presente que también podríamos usar la dirección IP que 
corresponda al router, la cual normalmente sería:

ssh root@192.168.1.1

Es natural que la primera vez nuestra terminal no pueda enlazarse al 
router hasta autenticar la clave cifrada del mismo. Esto nos será 
advertido con el siguiente mensaje:

The authenticity of host 'openwrt (192.168.1.1)' can't be established.
RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xxx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)?

...debemos escribir:

yes

Así habremos establecido la conexión segura autenticada. De tener 
cablemódem con una conexión LAN DHCP, ya deberíamos contar internet 
compartida a través de la conexión cableada LAN, sin más trámite...


Configurar una conexión con usuario y contraseña (ADSL).
...Si en cambio, tuviésemos un servicio que requiere usuario y 
contraseña para conectarnos, tales como el servicio ADSL telefonico, 
redes WiMAX o similares, habremos de configurarlas primero según esos 
datos proporcionados por el proveedor. Para ello ingresamos los 
siguientes comandos:

uci set network.wan.proto=pppoe
uci set network.wan.username='usuario@proveedor'
uci set network.wan.password='contraseñadelISP'
uci commit network
ifup wan



Configurar un punto de acceso Wireless (WiFi) con OpenWrt
Lo más importante para hacer es ahora es activar y crear una nodo de 
conexión inalámbrica. Por defecto, la emisión Wifi estará desactivada a 
través de un archivo de configuración, y sólo funcionará la internet 
cableada. Para activar el Wifi, hemos de modificar el fichero de 
configuración /etc/config/wireless mediante el antediluviano y pequeño 
editor de texto vi, que ya está incorporado en la ROM del router.

Ingresaremos por tanto el siguiente Comando de Organización:

vi /etc/config/wireless

Esto nos abrirá el parco Vi, junto con el archivo de configuración de la 
red inalámbrica de OpenWrl. Originalmente, el mismo debería ser algo 
así:

config wifi-device  radio0
        option type     mac80211
        option channel  11
        option hwmode   11ng
        option path     'platform/ath9k'
        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


Vi es un editor antiguo, pero su pequeñísimo tamaño lo hace adecuado 
para incluirlo en este tipo de tareas embebidas. Debemos saber que en 
Vi, a diferencia de Nano u otros editores, no podremos escribir hasta 
que no activemos el modo de inserción de texto. Esto lo haremos 
presionando la tecla "i". Luego podremos escribir.

Nuestro objetivo será modificar la linea "option disabled 1" (lo cual 
desactiva el Wifi) a "option disabled 0". En este ejemplo, también 
crearemos una serie de modificaciones para crear un nodo wifi bajo 
protocolo de encriptación "WPA2-PSK", con una frase contraseña. En este 
ejemplo que os he planteado, el archivo nos podría quedarnos así:

config wifi-device  radio0
    option type     mac80211
    option channel  auto
    option hwmode    11ng
    option path    'platform/ath9k'
    option htmode    HT40
    option txpower   20
    list ht_capab    SHORT-GI-40
    list ht_capab    DSSS_CCK-40
    # REMOVE THIS LINE TO ENABLE WIFI:
    option disabled 0

config wifi-iface
    option device   radio0
    option network  lan
    option mode     ap
    option ssid     '5x1 no va a quedar ninguno VIVA PERON'
    option key 'encripta todo por una patria justa libre y soberana'
    option encryption 'psk2+ccmp'


Naturalmente, en este archivo de configuración las options ssid 
representa al nombre de la red inalámbrica que se mostrará, mientras que 
encryption es la modalidad de encriptación deseada, y key es la 
contraseña de la red (es importante ponerlos entre 'tildes'). Las 
opciones completas de configuración Wifi pueden estudiarse en la wiki 
oficial.

Una vez que hayamos hecho la edición, debemos guardar el archivo en la 
memoria del router. Para ello en el editor Vi presionamos Esc para pasar 
al modo de comandos y luego ingresamos:

:w

...Y salimos del editor con:

:q

Ahora reiniciamos el router con el siguiente comando:

reboot

Luego de  reiniciado el router, ya debería estar emitiendo el 
identificador de red wifi "5x1 no va a quedar ninguno VIVA PERON". 
Deberíamos poder conectarnos al mismo cuando ingresemos la contraseña 
"encripta todo por una patria justa libre y soberana".


Cambiar el nombre del Host

Normalmente el nombre host es "OpenWrl", por lo cual para loguearnos 
tipeamos ssh root@OpenWrl. Si deseo cambiarlo por otro menos 
convencional, debo editar con Vi el archivo /etc/config/system.

En particular, busco la línea

option hostname 'OpenWrl'

... y podrán cambiarla por las que quieran (sin espacios ni caracteres 
especiales). Por ejemplo, podría facilitar mi memoria usando simplemente 
el nombre host de "router", todo en minúsculas. También podría utilizar 
otro nombre más difícil o cualquier convención que haga más cerrado 
todo.

option hostname 'router'

Guardamos el archivo y reiniciamos para que el cambio cobre efectividad, 
con el comando reboot. Tengamos en cuenta que ahora será necesario 
loguearnos remotamente con el comando:

ssh root@router


Actualizar el router

Para ello descargaremos a nuestro escritorio el fichero firmware de 
actualización correspondiente a nuestra versión de router. En este caso 
lo haremos con los comandos:

cd ~/Escritorio/

wget 
https://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/openwrt-15.05.1-ar71xx-generic-tl-wr941nd-v3-squashfs-sysupgrade.bin

Esto descargará un archivo de actualización del sistema llamado . Lo 
copiaremos al router con:

scp 
~/Escritorio/openwrt-15.05.1-ar71xx-generic-tl-wr941nd-v3-squashfs-sysupgrade.bin 
\root@192.168.1.1:/tmp/

Cuando lo solicite, ingresamos la contraseña del router, y se copiará el 
fichero. Acto seguido, nos logueamos al router. Si realizamos 
correctamente los pasos anteriores, usaremos el comando:

ssh root@router

Una vez que nos muestre la pantalla inicial, tipeamos

cd /tmp/

ls *.bin

Si el archivo figura correctamente, podremos utilizarlo para escribir en 
la memoria EEPROM. Lo haremos con el comando:

sysupgrade -v 
/tmp/openwrt-15.05.1-ar71xx-generic-tl-wr941nd-v3-squashfs-sysupgrade.bin

El proceso normalmente dura unos tres minutos, tras los cuales el router 
debería reiniciarse solo, y conservar las configuraciones realizadas. La 
pantalla de presentación cambiará y será la siguiente:


Configurar una IP fija para una impresora u otro dispositivo de red
OpenWrt normalmente asigna direcciones IP de manera dinámica, esto 
significa que todos los dispositivos normalmente recibirán una dirección 
IP aleatoria, dentro de un rango 192.168.0.100/250. Esto suele ser 
adecuado en aras de la seguridad, pero a veces puede complicar ciertas 
tareas.

Por ejemplo, si tuviésemos una impresora de red conectada al router, la 
misma siempre tendrá una dirección IP diferente toda vez que se 
encienda, con lo cual ciertos sistemas operativos privativos limitados 
(como Micro$oft Window$) podrían tener dificultad en detectarla y 
utilizarla.

Por tal motivo, en este caso nos convendrá asignarle al dispositivo (la 
placa de red que dota a la impresora) directamente una IP fija a través 
del router. El primer paso será averiguar cual es la dirección MAC de la 
impresora (o el dispositivo que querremos asignar).

Una forma sencilla es encender la impresora de red, conectarla al router 
a través de cable o wifi, y vér que IP le asigna - de momento - el 
router a su dirección MAC. Podremos hacerlo con el comando:

cat /tmp/dhcp.leases

El router nos devolverá una lista similar a esta:

xxxxxxxxxx 00:12:62:4f:bf:0f 192.168.1.120 impresorapirulo 
01:00:15:99:6f:df:0f
xxxxxxxxxx 44:87:f2:35:1f:bf 192.168.1.110 compu mongo *
xxxxxxxxxx 00:4f:ef:31:ac:2c 102.168.1.137 compu aurelio *
xxxxxxxxxx 60:8f:5c:17:56:a2 192.168.1.124 celular101:60:8f:5c:17:56:a2


Básicamente debemos tomar nota de la dirección MAC (en purpura en el 
ejemplo). En este caso, la dirección MAC de la impresora es 
00:12:62:4f:bf:0f.y de momento el router le ha asignado la dirección IP 
dinámica 192.168.1.120, Supongamos que queremos que siempre el router le 
asigne la dirección fija 192.168.1.105. Para ello editamos el archivo 
/etc/config/dhcp usando Vi para que le asigne una dirección fija a la 
impresora, siguiendo esos parámetros. Para ello ingresamos:

vi /etc/config/dhcp

Tipeamos el comando i para poder modificar el archivo, y agregamos el 
siguiente texto para cada dispositivo:

# IP fija para la impresora pirulo agregada por Perón 

config 'host'
        option ip       '192.168.1.120'
        option mac      '00:12:62:4f:bf:0f'
        option name     'impresora-pirulo'


Naturalmente, nosotros ingresamos los datos que nos correspondan a 
nuestro dispositivo particular. Luego grabamos presionando la tecla Esc 
e ingresando el comando :w y salimos del editor Vi con Esc e ingresando 
el comando :q.

Ahora podremos reiniciar el router con el comando reboot, y enceder la 
impresora conectada al router.

En este caso, ya nuestro router con OpenWrt al detectar un dispositivo 
cuya dirección MAC sea 00:12:62:4f:bf:0f (la de nuestra impresora), le 
asignará la IP fija 192.168.1.120). Podremos utilizar dicha IP para 
configurar la impresora en Window$, y ya no tendremos problemas.


Instalar y correr aplicaciones en el router
Tengamos en cuenta que el TP-Link WR-941NDv3 tiene un pequeño procesador 
ARM AR9132 de 400Mhz, y le podemos instalar programas a través de opkg, 
herramienta similar al dpkg de Ubuntu. Por ejemplo, si quisiéramos 
instalarle un programita para representar la carga a través del LED de 
encendido "Sys" podríasmo usar estos dos comandos:

opkg update

opkg install kmod-ledtrig-heartbeat

Esto descargará e instalará el pequeño paquete kmod-ledtrig-hearthbeat, 
que se encarga de mostrar a través de un "latido-parpadeo" de LEDs, la 
carga de la CPU. De esta manera podremos chequear visualmente a través 
de la simple velocidad del "latido" del la luz LED "Sys", la carga de la 
CPU del router.

Para asignar la función de "latido" al LED "Sys" del panel frontal del 
router, ingresamos los comandos:

cd /sys/devices/platform/leds-gpio/leds/tp-link:green:system
echo heartbeat > trigger

...y si quisiéramos volver todo al estado original y remover el paquete 
instalado usaríamos:

cd /sys/devices/platform/leds-gpio/leds/tp-link:green:system
echo default-on > trigger
opkg remove kmod-ledtrig-heartbeat

Las luces LED también se pueden asignar a funciones convencionales. Por 
ejemplo, si quisiéramos usar la luz LED de la función QSS para que 
ilustre el envío de datos WiFi, podríamos hacer:

cd /sys/devices/platform/leds-gpio/leds/tp-link:green:qss
echo phy0rx > trigger

...O si quisiéramos que se encienda cuando alguien se conecte al wifi:

cd /sys/devices/platform/leds-gpio/leds/tp-link:red:qss
echo phy0assoc > trigger

opkg cuenta con las aplicaciones del repositorio oficial de OpenWrt. 
Debemos consultar la web del mismo para conocerlas (se indican allí el 
tamaño que tienen, pues su "peso" es importante, al no tener mucho 
espacio libre.

En el caso del router TP-Link WR941ND V3, tienen una memoria EEPROM ("de 
masa") de 4 MB (de los cuales 3,3MB son ocupados por OpenWrt). Una 
memoria RAM de 32 MB es utilizada por OpenWrt en forma de "disco virtual 
borrable" y podremos acceder a ella desde la carpeta /tmp del router.

En la memoria ROM restante del router podríamos copiar indefinidamente 
pequeños archivitos, scripts, o información importante de solo texto.


¿Cómo cambio el color del Prompt de sesión en OpenWrt?
Podremos cambiar el color del prompt para que se ponga rojo y nos 
advierta que estamos en el Router, o como medida de diferenciación del 
prompto común. Para ello ingreso:

vi /etc/profile

Presiono la tecla i para ingresar en el modo de edición, y busco la 
línea:

export PS1='\u@\h:\w\$ '

...y la reemplazo por:

export 
PS1='\[\033[01;31m\]\u\[\033[0;35m\]@\[\033[01;33m\]\h\[\033[00;33m\]:\[\033[01;34m\]\w\[\033[00m\]$ 
'

Presiono Esc, y escribo el comando :wq para guardar los cambios y salir 
del editor Vi. Al reabrir la sesión SSH en el router, tendremos un 
prompt colorido.


¿Cómo puedo usar la consola web sencilla?En el caso del firmware OpenWrt 
para el router TP-Link WR-941NDv3, cuenta con la consola Web de 
configuración, la cual suele facilitar las cosas al neófito.


Para acceder a la consola web sencilla (llamada Luci) debo ingresar con 
un navegador (Firefox, Chromiun, etc) a la IP del router, normalmente 
192.168.1.1.


¿Cómo puedo crear un repetidor wifi usando OpenWrt?

Si tenemos varios routers WR941ND con OpenWrt, podremos utilizarlos como 
router "maestro" y como router "repetidor" haciendo uso del modo WDS 
(wireless distribution system). Esto es así porque el WR941ND está 
dotado de un chipset Atheros compatible con dicha tecnología, y OpenWrt 
puede hacer uso de esta funcionalidad.

En este caso a fines de identificación, los llamaremos router MAESTRO y 
router REPETIDOR para identificar, siendo MAESTRO el que va conectado 
por cable a internet y ya tiene configurada la red Wifi, y REPETIDOR 
será el router esclavo, cuyo fin será extender el alcance de la señal.

En el router MAESTRO
Nos logueamos por ssh al router MAESTRO, y editamos con con vi el 
archivo /etc/config/wireless. Debemos agregarle la línea:

option wds 1

Conviene anotar los datos "type", "channel" y "country", pues habremos 
de incorporarlos luego al router REPETIDOR. Luego guardamos los cambios 
y salimos de vi. Para que los cambios sean efectivos, empleamos el 
comando:

uci commit wireless

En el router REPETIDOR
Ahora trabajaremos en el router REPETIDOR. Nos conectamos a el por cable 
y nos logueamos a él por ssh. Editamos con vi el archivo 
/etc/config/dhcp, buscando la sección "lan".  En dicha sección le 
agregamos la línea:

option ignore 1

Guardamos y salimos de Vi.

Luego editaremos el archivo /etc/config/network. En la sección "lan" de 
este archivo lo modificamos para que queden las siguientes líneas así:

  option proto 'dhcp'
  option hostname 'repetidorwifi'

Ahora nos encargaremos de editar el fichero /etc/config/wireless:

En la sección "radio0" del mismo debemos indicarle los datos de "type", 
"channel" y "country" para que coincidan con los que anotamos del 
archivo /etc/config/wireless del router MAESTRO.

En la sección "wifi-iface", la modificamos para que quede así:

  option device 'radio0'
  option network 'lan'
  option mode 'sta'
  option wds 1
  option ssid 'nombredelaredwifi'

Siendo nombredelaredwifi el identificador de la ren inalámbrica que está 
configurada en el router MAESTRO.

Una vez guardados los cambios en el archivo /etc/config/wireless del 
router REPETIDOR, lo reiniciamos con el comando :

reboot

Al reiniciarse, ya podremos conectarnos a él y utilizarlo como 
repetidor. Algo interesante de saber es que en el router REPETIDOR 
conviene desinstalar dhcp y el firewall, pues ya figuran en el router 
MAESTRO y él se encarga de procesar todo. Tener dos veces los mismos 
procesos no hace más que hacer todo más lento al ñudo.

Para eliminarlos, nos logueamos al router REPETIDOR, ahora con el 
comando:

ssh root@repetidorwifi

Y le ingresamos los siguientes Comandos de Organización:

opkg update
opkg --force-removal-of-dependent-packages dnsmasq iptables firewall 
kmod-ppp luci-proto-ppp
mv /etc/config/dhcp /etc/config/dhcp.resguardo

Resetear OpenWtl
Si quisiñeramos resetear el router a su estado inicial luego de flashear 
la EEPROM con OpenWrl, debemos loguearnos y usar el comando:

firstboot


¿Cómo puedo restaurar el firmware original?

Si pese a las advertencias quisiera volver al firmware original 
privativo, puedo hacerlo, siempre y cuando el router funcione 
perfectamente y tengamos acceso por ssh a través de un equipo conectado 
por cable.

Para ello desde nuestra PC conectada por cable al router abrimos una 
terminal e instalamos en ella los programas necesarios:

sudo apt-get install unzip scp

Acto seguido descargamos el archivo del firmware privativo original para 
nuestro router en el Escritorio de la PC. En este caso, al ser el 
TP-Link WR941ND V3, como ya vimos, deberíamos ingresar:

cd ~/Escritorio/

wget http://www.tplink.com/Resources/software/TL-WR941ND_v3_120201.zip

unzip TL-WR941ND_v3_120201.zip

scp ~/Escritorio/wr941nv3_en_3_13_9_up\(120201\).bin 
\root@192.168.1.1:/tmp/fw.bin

Esto copiará fácilmente el archivo wr941_en_3_13_9_9_up(120201).bin a la 
carpeta /tmp/ del router, renombrándolo como fw.bin (lo que nos evitará 
errores de tipeo).

Sólo nos queda loguearnos al mismo, revisar que fichero esté bien 
copiado, y reescribir nuevamente la EEPROM con el firmware original. Lo 
haremos con los siguientes Comandos:

ssh root@OpenWrt

cd /tmp/

ls -la *.bin

...nos debería listar el archivo fw.bin.

Y ahora lo flasheamos en la EEPROM con el siguiente Comando de 
Organización:

mtd -r write fw.bin firmware

El proceso lleva su tiempo, durante el cual no debe interrumpirse. 
Aparecerá el mensaje:

Unlocking firmware ...

Writing form fw.bin to firmware

Y al cabo de unos 2 minutos indicará:

Rebooting...

Luego de dejar pasar otros dos minutos, podremos nuevamente resetear el 
router y el cablemódem desconectándolos de la red eléctrica y 
volviéndolos a conecta.

Indudablemente, habremos de reconfigurar el router, contactándolo con 
nuestro navegador a la IP 192.168.0.1. Al solicitarnos usuario y 
contraseña, pondremos "admin", y ya tendremos acceso a la interfaz web 
original nuevamente. Para recuperar las configuraciones, usaremos el 
archivo config.bin que creamos al principio. En tal sentido en la 
interfaz web original vamos a System Tools / Backup & Restore, 
presionamos el botón Examinar e incicamos el archivo config.bin. Luego 
presionamos el botón Restore para que cargue la configuración antigua en 
el router. Tras un par de minutos el router se reseteará y se 
reconectará, y ya tendremos todo como lo teníamos originalmente.