Simplifier les déploiements

Attention, article plutôt technique !

Depuis 6 ans qu’on s’amuse à fabriquer de l’internet dans l’Yonne, la méthode n’a pas beaucoup changé quand on démarre une nouvelle installation :

  1. On essaie de prendre de la hauteur (poteau, toiture, silo, église, …)
  2. On trouve du courant à moins de 100 mètres
  3. On sors les dérouleur de câbles pour alimenter le matériel de test
  4. On sors un ordinateur portable
  5. On branche tout ça ensemble
  6. On fait les tests
  7. On remballe tout
  8. Si les tests étaient concluants, on passe à l’installation définitive

Ça semble relativement simple comme ça, mais la réalité du terrain nous fait bien souvent déchanter :

  • Quand il faut aller faire le test 30 mètres plus loin, il faut tout débrancher, déplacer tous les dérouleurs et l’ordinateur, tout rebrancher, attendre que l’antenne redémarre.
  • Quand on est au milieu de rien, il faut brancher tout ça à l’allume cigare d’une voiture et laisser tourner le moteur pour éviter la panne de batterie.
  • Quand on monte dans un endroit inconfortable (typiquement un clocher d’église), ça fait beaucoup de choses lourdes à trimballer.

Bref, ça fait longtemps qu’on cherche la bonne solution pour simplifier et fluidifier tout ça. Pour résumer le besoin :

  • De quoi alimenter les antennes en 24V (PoE passif)
  • De quoi se connecter en wifi aux antennes pour éviter le déroulage/réenroulage de câbles

Les plus bricoleurs auraient déjà pris le taureau par les cornes avec une batterie, un régulateur de tension et un raspberrypi, mais le résultat aurait probablement été difficile à transporter, ou risquerai de tomber en panne juste au mauvais moment.

On s’attellera peut être au projet un jour, mais en attendant, notre vendeur de matos préféré a sorti une petite boite qui fait très exactement ce dont on a besoin (voir l’illustration en haut) : le U-Installer.

Un petit soucis, toute fois : il est livré avec une configuration générique qui, si elle permet sans doute à la majeure partie des gens de faire ce qu’ils ont à faire, ne nous convient pas chez SCANI :

  • Elle se comporte comme un portail captif récupérant tous les flux. Donc quand on s’y connecte, c’est la foire aux popups qui demandent d’accepter des certificats invalides et ça fais péter une page demandant de télécharger l’application mobile pour configurer les antennes.
  • Elle ne sait discuter que sur le VLAN1 avec 192.168.1.0/24 au bout, ce qui est bien pour accéder à une antenne sortie de sa boite, mais pas avec celles déjà configurées chez nous qui sont administrables sur le VLAN 10 et ont des IP RFC1918 dans tout un tas de /24 différents en fonction des zones géographiques.

Pour une raison qui nous échappe, Ubiquiti a utilisé la même base technique que les antennes de génération M mais a désactivé la possibilité de configurer le réseau de la bestiole. Il a donc fallu mettre un peu les mains dans le cambouis pour arriver à une configuration fonctionnelle que voici :

bluetooth.status=enabled
dhcpd.1.devname=ath0
dhcpd.1.end=10.90.90.150
dhcpd.1.lease_time=60
dhcpd.1.netmask=255.255.255.0
dhcpd.1.start=10.90.90.50
dhcpd.1.status=enabled
dhcpd.status=enabled
ebtables.status=enabled
ebtables.sys.arpnat.1.devname=eth0.10
ebtables.sys.arpnat.1.status=enabled
ebtables.sys.arpnat.status=disabled
ebtables.sys.eap.1.devname=eth0
ebtables.sys.eap.1.status=enabled
ebtables.sys.eap.status=enabled
ebtables.sys.status=enabled
ebtables.sys.vlan.status=disabled
httpd.https.port=443
httpd.https.status=enabled
httpd.status=enabled
iptables.1.cmd=-t nat -A POSTROUTING --dst ! 10.90.90.1/24 -j MASQUERADE 
iptables.1.status=enabled
iptables.status=enabled
iptables.sys.status=enabled
netconf.1.devname=eth0
netconf.1.ip=192.168.1.2
netconf.1.netmask=255.255.255.0
netconf.1.promisc=enabled
netconf.1.role=wan
netconf.1.status=enabled
netconf.1.up=enabled
netconf.2.devname=ath0
netconf.2.ip=10.90.90.1
netconf.2.netmask=255.255.255.0
netconf.2.promisc=enabled
netconf.2.role=lan
netconf.2.status=enabled
netconf.2.up=enabled
netconf.4.devname=eth1
netconf.4.ip=0.0.0.0
netconf.4.netmask=255.255.255.0
netconf.4.promisc=enabled
netconf.4.status=enabled
netconf.4.up=enabled
netconf.5.alias.1.ip=192.168.13.2
netconf.5.alias.1.netmask=255.255.255.0
netconf.5.alias.1.status=enabled
netconf.5.alias.2.ip=192.168.14.2
netconf.5.alias.2.netmask=255.255.255.0
netconf.5.alias.2.status=enabled
netconf.5.devname=eth0.10
netconf.5.ip=192.168.12.2
netconf.5.netmask=255.255.255.0
netconf.5.promisc=enabled
netconf.5.role=wan
netconf.5.status=enabled
netconf.5.up=enabled
netconf.status=enabled
netmode=router
ntpclient.1.server=0.ubnt.pool.ntp.org
ntpclient.1.status=enabled
ntpclient.status=disabled
radio.1.ackdistance=600
radio.1.acktimeout=31
radio.1.clksel=1
radio.1.countrycode=840
radio.1.cwm.enable=0
radio.1.cwm.mode=0
radio.1.devname=ath0
radio.1.dfs.status=enabled
radio.1.forbiasauto=0
radio.1.freq=0
radio.1.ieee_mode=11nght20
radio.1.low_txpower_mode=disabled
radio.1.mode=master
radio.1.obey=enabled
radio.1.rate.auto=enabled
radio.1.reg_obey=enabled
radio.1.status=enabled
radio.1.subsystemid=0xe4c8
radio.1.txpower=28
radio.countrycode=840
radio.status=enabled
route.1.devname=eth0
route.1.gateway=0.0.0.0
route.1.ip=0.0.0.0
route.1.netmask=0
route.1.status=disabled
route.status=enabled
sshd.auth.passwd=enabled
sshd.port=22
sshd.status=enabled
system.airosx.prov.status=enabled
system.cfg.version=65542
users.1.name=ubnt
users.1.password=VvpvCwhccFv6Q
users.1.status=enabled
users.status=enabled
vlan.1.devname=eth0
vlan.1.id=10
vlan.1.status=enabled
vlan.status=enabled
wireless.1.addmtikie=enabled
wireless.1.autowds=disabled
wireless.1.devname=ath0
wireless.1.hide_ssid=disabled
wireless.1.security.type=none
wireless.1.ssid=ubi-
wireless.1.status=enabled
wireless.1.wds.status=disabled
wireless.status=enabled

Les choses à adapter sont les suivantes :

  • users.1.password : actuellement, c’est ubnt, ça peut être une bonne idée de le changer
  • netconf.5.ip (et netconf.5.alias.X) : ce sont l’ensemble des /24 d’admin, ici, on n’a laissé que 192.168.12, 13 et 14 .. Mais on peut créer autant d’alias que nécessaire) ils sont claqués sur le VLAN10 du port ethernet
  • netconf.1.ip : c’est l’IP que porte l’engin sur son port ethernet dans le VLAN1 (pour accéder aux antennes neuves sorties de leur boite)

Au démarrage, le U-Installer a 169.254.169.169 comme IP. Il faut s’y connecter en ssh (avec ubnt/ubnt comme login/password) et mettre tout ceci en remplacement du contenu du fichier /tmp/system.cfg. Il faut ensuite faire « save » puis « reboot ». Garder le fichier de config d’origine n’est pas forcément nécessaire, on peut faire un reset usine assez facilement.

Nous n’avons pas encore eu le temps de travailler la question du SSID émis (actuellement, UBI-[adresse mac]) ni la possibilité de lui mettre un mot de passe WPA. Se pencher sur la question de l’IPv6 pourrait être un plus. Avis aux amateurs 🙂

Ce nouveau joujou permet, donc :

  • De ne plus se promener avec un dérouleur électrique et un dérouleur RJ45 (attention toute fois à la durée de la batterie : ça tient quelque chose comme une heure maximum)
  • De pouvoir travailler à plusieurs sur une même installation (il suffit de connecter plusieurs ordinateurs en wifi à la boite)
  • De pouvoir se déplacer librement pendant les tests (c’est même livré avec un petit mousqueton, la grande classe !)
  • De permettre à une personne équipée d’un ordinateur sans gestion de VLAN (genre un windows mal fichu) de participer quand même aux installations et à la maintenance, puisque c’est la boite qui les gère elle-même.

Un seul regret, ça se recharge avec une prise USB3 et il n’y a ni câble ni chargeur dans la boite.

Répondre

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *