Auto configuration via le protocol TR-069

Auto configuration via le protocol TR-069

Le but du projet est de configurer automatiquement des routeurs qui se connecte sur un switch ZyXEL. L’utilisateur ne doit rien avoir à faire, le service qui tourne sur un serveur doit détecter les nouveaux routeurs, leurs attribué des paramètres de base et configurer le port du switch correctement.

Description

Sur le switch de base tous les ports client sont configuré sur un VLAN « invité ». Avec VLAN les clients ne peuvent pas se connecter à Internet. Lors de la connexion sur un port du switch d’un Routeur connue dans une base, il doit s’auto approvisionner via le protocole TR069. Les paramètres comme le VLAN du client coté WAN, les IP etc… sont poussé dans le routeur. Dans le même temps, le switch doit être configuré automatiquement pour que ce nouveau VLAN soit activé sur le port du switch.

Objectif

  • Configurer l’IP WAN sur le routeur du client
  • Configurer le VLAN client sur le switch
  • Configurer le VLAN client sur le routeur de tête
  • Configurer l’IP de passerelle sur le routeur de tête
  • Configurer la route WAN sur le routeur de tête
  • Configurer le blocage Internet sur le VLAN “de base” du routeur de tête
  • Création d’une API pour le provisioning des routeurs
  • Récupération des informations de l’API pour un routeur spécifique
  • Installation du serveur TR-069
  • Configuration du script de provisioning sur le serveur TR-069
  • Installation du serveur Web pour l’API de provisioning

Conclusion

L’implémentation du protocole TR-069 est un sujet extrêmement intéressant, il me permet d’avoir une compréhension globale du fonctionnement d’un fournisseur d’accès Internet, mais également d’acquérir des connaissances sur la configuration des VLANs d’un switch. Je peux donc affirmer que ce projet m’a beaucoup apporté dans le domaine du réseau et a été en fin de compte un travail agréable car le résultat est concret et très satisfaisant.

J’ai finalement une version fonctionnelle de l’application. Toutes les fonctionnalités de base ont été implémentées et fonctionnent correctement, il ne reste aucunes erreurs. De plus, j’ai pu faire quelques améliorations afin de rendre l’expérience utilisateur des administrateurs plus agréable et utilisable.

Quelques améliorations pourraient être ajoutées :

  • Donner la possibilité au client de pouvoir gérer une partie de la configuration de leur routeur via une interface web (Nom du Wifi et mot de passe de celui-ci)
  • Forcer l’authentification du client lors de la première navigation sur Internet
  • Avoir la possibilité de bloquer la connexion à un client pour cause de non payement

Sources

Package GNU/Linux

Librairies PHP

Technologies utilisées