Estaciones Virtuales Inalámbricas
Estaciones Virtuales inalámbricas por Sergio Belkin se encuentra bajo una Licencia Creative Commons Atribución-CompartirDerivadasIgual 2.5 Argentina.
A veces es necesario simular una gran cantidad de estaciones (es decir clientes o “supplicants”) ante un Access Point para obtener una estimación de las capacidades del equipo y/o firmware. Seguramente existe algún que otro software con licencia restrictiva que nos permita hacer eso. Pero ¿se podrá hacer eso con una sola notebook con Linux? La respuesta es sí.
Veremos como:
Deshabilitamos cifrado por hardware
echo options ath9k nohwcrypt=1 > /etc/modprobe.d/ath9k.conf
udev
Editamos /lib/udev/rules.d/75-persistent-net-generator.rules
Queremos que udev no maneje la interfaz wireless wlan0, entonces sacamos de la siguiente regla a wlan0
KERNEL!=”eth*|ath*|ra*|ctc*|lcs*|hsi*”, GOTO=”persistent_net_generator_end”
Editar el archivo /etc/udev/rules.d/70-persistent-net.rules
Tampoco necesitamos la siguiente la regla, así que la borramos:
SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”, ATTR{address}==”68:a3:c4:33:44:55″, ATTR{dev_id}==”0x0″, ATTR{type}==”1″, KERNEL==”wlan*”, NAME=”wlan0″
Recargar la configuración
systemctl restart udev-trigger.service
Detener servicios que interfieren con la creación de intefaces virtuales
systemctl stop NetworkManager.service
systemctl stop avahi-daemon.service
Terminar procesos de wpa_supplicant
killall wpa_supplicant
Agregamos una interfaz virtual inalámbrica
iw phy phy0 interface add sta0 type station
Le cambiamos la mac address, sino NO va a funcionar
macchanger -r sta0
Activamos la interfaz
ip link set dev sta0 up
Lanzamos el cliente wireless
wpa_supplicant -t -ista0 -c /etc/wpa_supplicant/peap.conf -B -f /var/log/wpa-sta0.log
Arrancamos el cliente dhcp
dhclient -v -cf /etc/wpa_supplicant/dhclient.conf sta0
¡Listo!
Se puede hacer un script (de hecho es lo que hice) para automatizar estos pasos y agregar tantas interfaces virtuales como sea posible.
Reconocimiento: El artículo de Candela Technologies en http://www.candelatech.com/vsta.php fue de suma utilidad.
Advertencia: Esta receta funciona en particular para el módulo ath9k, es probable que sea necesario modificar algo con otros drivers o que directamente no funcione. Asimismo, se utilizó Fedora 16 desde el lado cliente, obviamente deberían realizarse las adapataciones pertinentes de acuerdo a la distribución.
Comentarios
Comments powered by Disqus