Trucos LinuxAP
Este documento esta basado en las recopilaciones de los mensajes de las listas de correo de LinuxAP y dev-LinuxAP y experiencias propias del autor. El autor declina cualquier responsabilidad derivada de la aplicación de este tutorial. La distribución total o parcial de este documento con fines comerciales esta expresamente prohibida en cualquier medio o soporte sin la autorización por escrito del autor. Queremos expresar el reconocimiento a las aportaciones de maestros como Galli, Llorente, Paladdin, Zafra y muchos otros quienes, con su aportacion desinteresada nos han facilitado el poder hacer del LinuxAP una herramienta comprensible y al alcance de todo el mundo.
Si quereis hacernos llegar nuevos trucos o detectais alguna imprecisión, podeis hacernoslas llegar a webmaster@webdolot.com y seran incluidos en esta recopilación.
Rendimiento
Control potencia de salida:
Para establecer una potencia de salida adecuada a nuestras necesidades teniendo en cuenta la reglamentación sobre el tema (100mW PIRE). En el rc.tweak bastara con añadir una linea con la potencia expresada en mW.
iwconfig wlan0 txpower 100mW
Curiosamente, aunque pueda parecer lo contrario, la USR2445 es capaz de dar un "poquito mas" para compensar la atenuacion de algunas antenas . HI.
Asignar una MAC fija a LinuxAP en modo cliente
Aunque en la versión 13-09-2002 esto no funcionaba... en las ultimas versiones es perfectamente operativo. En el rc.tweak bastara con añadir una linea con esto:
iwconfig wlan0 ap MAC_del_AP
Para que funcione correctamente los AP deben de tener distinto ESSID, de lo contrario el Roaming hace que nuestro cliente se conecte al AP con mejor señal.
Asignar un Nickname a nuestro LinuxAP
Por defecto todos nuestros LinuxAP tienen el mismo Nick, a saber, Prism2. En el caso de tener varios se hace necesario distinguirlos a menos que seamos capaces de recordar la MAC de cada uno. Para hacerlo facil podemos asignar un Nick determinado a cada uno desde el rc.tweak añadiendo una linea con esto:
iwconfig wlan0 nick "nombre"
Clientes asociados
Si queremos saber cuantos y que clientes tenemos asociadosa a nuestro LinuxAP en un momento determinado podemos hacerlo desde nuestro terminal haciendo:
# ls /proc/net/hostap/wlan0/
o bien, si lo tenemos en modo AP/Bridge:
# brctl showmacs br0
Encriptación WEP con HostAP
Por defecto, la gestión de encriptación WEP siempre corre a cargo del firmware de la tarjeta inalámbrica con lo que puede inestabilizar el sistema. Para forzar el uso de HostAP para que gestione el WEP basta con incluir en el rc.tweak las sentencias:
iwpriv wlan0 prism2_param 17 1
iwpriv wlan0 prism2_param 18 1
Estado del LinuxAP en un momento dado
Para saber el estado de nuestro AP en un momento dado disponemos de varias posibilidades, dependiendo de lo que nos interese conocer. Para conocerlas todas bastara con pulsar 2 veces la tecla TAB desde nuestro terminal. De todas formas las mas utiles son:
# ifconfig
# iwspy
# iwconfig
# ps
# free
# uptimeTambien desde el directorio /proc tenemos algunas muy interesantes:
# cat /proc/net/arp # tablas ARP
# cat /proc/net/ip_conntrack # tablas NAT
Activar NAT en LinuxAP
Para activar el NAT en LinuxAP bastara con insertar una linea similar a la siguiente linea en el rc.tweak:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Desbloquear LinuxAP
En determinadas ocasiones LinuxAP puede quedar "colgado" sin dar respuesta a nuestras llamadas de conexion o a nuestros "ping" pese a estar transmitiendo. Para desbloquearlo bastara con introducir las siguientes ordenes:
# ifconfig down
# sleep 1
# ifconfig upSe esta trabajando ya para incluir en una proxima versión un script que ejecute algo parecido ciclicamente para evitar los posibles cuegues.
Desde la version 26-03-2003 flashwatch este problema esta ya corregido.
Cliente tftp
Para actualizar o subir cualquier actualización desde el cliente de tftp incluido en LinuxAP las sentencias serian:
para bajar
tftp -g -r loquesea.eso -l loquesea.eso IP_Servidor
para subir
tftp -p -r loquesea.eso -l loquesea.eso IP_Servidor
Desactivar servidor httpd y/o telnetd
Si queremos inutilizar los servidores de http y telnet que algunas configuraciones arrancan por defecto, solo tendremos que incluir en nuestro rc.tweak dos lineas como estas:
/etc/rc.d/init.d/httpd stop
o
/etc/rc.d/init.d/telnetd stop
Ping
Para comprobar un enlace y su tiempo de respuesta todos solemos utilizar el "ping", ahora bien, si lo utilizamos "a pelo" el ping se va repitiendo infinitamente y solo se para con Ctrl+C. Para configurar un ping desde LinuxAP la sentencia seria:
ping -c 3 IP_remota
El 3 es el numero de "pings" que mandaremos a la IP en cuestion.
DNS
Si nuestro AP corresponsal no tiene habilitado el servidor DHCP que nos proporcione los datos de un servidor DNS, podemos forzar el camino hacia la IP de un servidor DNS conocido generando un fichero en etc/rw/resolv.conf donde editaremos los datos correspondientes, p. ejemplo:
nameserver 194.179.1.100
nameserver 194.179.1.101
Encriptación WEP
Para habilitar la encriptación en LinuxAP debemos incluir en /etc/rw/rc.tweak las siguientes lineas:
ifconfig wlan0 enc xxxx
Siendo xxxx -> numero hexadecimal de 104 bits, 104/4 = 26 , es decir, 26 digitos con numeros y letras de la A hasta la F.
Si en lugar de 26 queremos reducir el numero a 13 bastara con incluir el modificador "s", por ejemplo:iwconfig wlan0 key "s:clave_de_13_caracteres"
Si queremos que sea hostap quien gestione la clave en lugar de la propia tarjeta (la mejor opción):
ifconfig wlan0 enc xxxx
iwpriv wlan0 prism2_param 17 1
iwpriv wlan0 prism2_param 18 1Tambien tenemos otra opción en el caso de que la clave no cumpla las anteriores especificaciones en relacion a la longitud de la clave WEP:
ifconfig wlan0 enc xxxx
prism2_param host_encrypt 1
prism2_param host_decrypt 1
RTS
Para optimizar el trafico entre AP con WDS en un mismo canal y evitar que los choques existentes ralentizen en exceso la transferencia de datos, podemos utilizar el comando rts :iwconfig wlan0 rts 256
Añadir Rutas
Para añadir rutas a nuestro AP e indicarle el camino a seguir bastará con añadir una linea en el rc.tweak tal como asi (por ejemplo):
route add -net 10.0.0.0 netmask 255.0.0.0 gw 10.34.152.1
Swaphost
Con LinuxAP puede hacerse "swap" en Red.Para ello debes configurar el nbd swap en el AP y poner un servidor al otro lado
que atienda sus peticiones.
Para instalar el servidor puedes encontrar información práctica en:http://atrey.karlin.mff.cuni.cz/~pavel/nbd/nbd.html
http://www.xss.co.at/linux/NBD/Applications.html
Medidor de señal
Para los que trasteamos habitualmente con los USR2450 con LinuxAP en loas tejados o en los montes sabemos que es incomodo tener que ir tecleando el "iwconfig" para apreciar las mejoras o perdidas de señal en relacion a otro punto de acceso a menos que nos construyamos el medidor de señal diseñado por Moises Zafra y que aparece en otra parte de estas paginas. Para solucionar el problema, nuestro amigo Marc Vilanova ha diseñado un pequeño script para incluirlo en el rc.tweak que testea ciclicamente el valor de la señal. Para aplicarlo bastará con incluir lo siguiente:while :
do
clear
echo "MEDIDOR DE NIVELES DE SEÑAL,CALIDAD Y RUIDO PARA LINUXAP"
echo -e
echo "Calidad: $(cat /proc/net/wireless | tail -1 | cut -d " " -f6 | cut -d "." -f1)"
echo "Señal: $(cat /proc/net/wireless | tail -1 | cut --bytes=22,23)"
echo "Nivel de ruido: $(cat /proc/net/wireless | tail -1 | cut -d " " -f14)"
sleep 1
clear
doneClaro esta que, una vez terminadas las pruebas tendreis que quitarlo del rc.tweak, o, si vais a usarlo con frecuencia en un Pingüi, crear una carpeta dentro de rc.tweak y llamarlo desde la consola.Para abortarlo.. Ctrl+C.
Desactivar el Broadcast del ESSID
Desde la versión del firmware STA 1.6.3 para las tarjetas Prism puede desactivarse la trasmisión del ESSID en el Broadcast de la siguiente forma:
prism2_param wlan0
enh_sec: "enhanced security" bitfield
0 = options disabled (default)
1 = hide SSID in beacon frames
2 = ignore clients configured with "ANY" (broadcast)
SSID
(3 = both options)En el documento de http://linux.junsun.net/intersil-prism/
indica que las tarjetas con NIC ID: 8002 ahora se pueden actualizar
hasta la version 1.7.1 no 1.5.6 como se pensaba antes...
Si consideras que este tutorial te ha sido útil y te ha ahorrado tiempo, problemas y dolores de cabeza, cualquier donación será bienvenida y destinada a la expansión del Wireless en general y al mantenimiento de la red Wireless de OlotWireless. Puedes hacer efectiva tu colaboración haciendo una transferencia a la cuenta 2030 0091 11 3300004824. Gracias.
©Pere Espunya. EA3CUU para Unión de Radioaficionados Españoles