Mesh network 802.11s with OpenWrt on an Ubiquiti Bullet M2 (no support for Bullet 2HP) Faire d'abord un reset des paramètres si nécessaire. Dévisser l'anneau metallique à 4 encoches en haut de la coque PVC blanche. Connecter un convertisseur TTL (3.3V?) vers USB sur le connecteur 4 pins avec les conventions suivantes : pin 2 : RX pin 3 : TX pin 4 : GND Ouvrir HyperTerminal ou similaire avec le port COM correspondant au convertisseur TTL-USB et un baudrate de 115200 8N1. Brancher aussi l'Ubiquiti au PC comme d'habitude en Ethernet via adaptateur PoE, ainsi que son antenne. Appuyer sur une touche pour interrompre le bootloader et taper urescue -f -e (attendre un peu avant de taper urescue -f -e si problèmes de Tx Timeout, ou au contraire aller vite, ou attendre après...?). L'Ubiquiti est alors prêt à recevoir un nouveau firmware et bootloader. Ensuite, taper dans une invite de commande tftp -i 192.168.1.20 put XM-v5.5.2.build14175.bin pour restaurer une ancienne version du firmware et bootloader officiels Ubiquiti, les versions récentes posant des problèmes de compatibilité quand on installe OpenWRT (problèmes dans la sauvegarde de paramètres, ou si on veut restaurer plus tard un firmware officiel récent). Lors du redémarrage, interrompre une nouvelle fois le bootloader et taper : mtdparts default saveenv boot Une fois démarré, vérifier que la version d'U-Boot date bien de 2012 (tout recommencer si ce n'est pas le cas) et vérifier s'il faut réinstaller le même firmware via l'interface web (http://192.168.1.20 par défaut). Il est ensuite possible d'installer openwrt-15.05-rc3-ar71xx-generic-ubnt-bullet-m-squashfs-factory.bin via l'interface web ou avec les commandes urescue (sans les paramètres -f -e) et tftp. L'interface web d'OpenWrt est par défaut http://192.168.1.1. Il faut d'abord commencer par définir un mot de passe (il n'y en a pas par défaut) pour pouvoir ensuite se logguer en SSH. Régler si nécessaire System\System\Hostname (e.g. SARDINE-UBNT-1). Dans Network\Interfaces\Edit, régler DHCP Server\General Setup\Disable, DHCP Server\IPv6 Settings\Disable, décocher Common Configuration\Advanced Settings\Use built-in IPv6-management pour désactiver les fonctions de serveur DHCP et l'IPv6, et changer l'addresse IP, e.g. 192.168.0.201. Dans Network\Wifi\Edit, régler Device Configuration\General Setup\Transmit Power, Channel (e.g. 1) et Interface Configuration\General Setup\ESSID (e.g. SARDINE-UBNT), Mode Access Point WDS, cocher lan dans Network, et choisir FR dans Device Configuration\Advanced Settings\Country Code. Cliquer ensuite sur Network\Wifi\Enable. A ce stade, on a un point d'accès Wi-Fi standard. Ensuite, cliquer sur network\Wifi\Add et régler Interface Configuration\General Setup\ESSID (e.g. MESH-UBNT) et Mode 802.11s ainsi que cocher lan dans Network. Des réglages supplémentaires doivent être faits par SSH (ssh root@192.168.1.1 par défaut ou ssh root@192.168.0.201 dans l'exemple, potentiellement besoin de rajouter les options -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-rsa sur les versions récentes de ssh) vi /etc/config/wireless i et rajouter à la fin du fichier (dans la même zone où se trouve option ssid 'MESH-UBNT') option mesh_id 'id' id est un exemple d'identifiant pour le mesh network. Des paquets disponibles sur https://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/packages/base/ doivent être installés sur l'Ubiquiti. En supposant qu'ils aient été récupérés sur un serveur FTP accessible depuis l'Ubiquiti : wget ftp://192.168.0.200/wpad_2015-03-25-1_ar71xx.ipk wget ftp://192.168.0.200/authsae_2014-06-09-8531ab158910a525d4bcbb3ad02c08342f6987f2_ar71xx.ipk wget ftp://192.168.0.200/libopenssl_1.0.2g-1_ar71xx.ipk wget ftp://192.168.0.200/libconfig_1.4.9-1_ar71xx.ipk wget ftp://192.168.0.200/zlib_1.2.8-1_ar71xx.ipk opkg remove wpad-mini opkg install wpad_2015-03-25-1_ar71xx.ipk opkg install zlib_1.2.8-1_ar71xx.ipk opkg install libconfig_1.4.9-1_ar71xx.ipk opkg install libopenssl_1.0.2g-1_ar71xx.ipk opkg install authsae_2014-06-09-8531ab158910a525d4bcbb3ad02c08342f6987f2_ar71xx.ipk reboot Au final, on a un point d'accès Wi-Fi sur lequel des PCs standards peuvent se connecter, ainsi qu'un mesh network invisible pour les PCs standards, qui peut mettre en relation plusieurs Ubiquiti avec la même configuration, ainsi que les éventuels autres périphériques standards qui leurs sont connectés (que ce soit via Wi-Fi ou Ethernet). Note : le protocole de routage est a priori on-demand, donc il faut qu'une application essaye de communiquer pour qu'une route soit construite... De plus, si les différents périphériques réseaux doivent bouger, les PCs standards ne vont pas chercher à trouver la meilleure route de manière efficace (ils vont rester connectés à l'AP sur lequel ils sont associés jusqu'à ce qu'ils ne le captent plus du tout et ce n'est qu'à ce moment qu'ils vont se reconnecter sur un AP plus proche) donc il vaut mieux les remplacer par des Ubiquiti si possible...