
Un routeur NAT WiFi entièrement fonctionnel (et maintenant également un répéteur WiFi)
Un routeur NAT WiFi entièrement fonctionnel (et maintenant aussi un répéteur WiFi, alias pont L2)
NOUVEAU 2026 : 10 ans après la première version, il est enfin devenu ce qu'il a toujours prétendu être : un véritable répéteur WiFi. Afin de ne pas casser les documents et liens existants, l'édition standard reste la version bien connue du routeur NAT avec toutes ses fonctionnalités avancées. Mais si vous êtes intéressé par un véritable pont L2 allégé, regardez ci-dessous dans la section ESP8266 Répéteur WiFi - Pont L2.
Ceci est une implémentation d'un routeur NAT WiFi sur les esp8266 et esp8285. Il inclut également la prise en charge d'un pare-feu de filtrage de paquets avec ACL, mappage de ports, régulation de trafic, hooks pour surveillance à distance (ou sniffing de paquets), une interface de gestion MQTT, une interaction GPIO simple et une gestion de l'alimentation. Pour une configuration avec plusieurs routeurs en maillage afin de couvrir une plus grande zone, un nouveau mode « Automesh » a été inclus.
Si vous cherchez un moyen d'intégrer la fonctionnalité NAT dans votre projet Arduino - voir ici .
Routeur NAT ESP32 est le projet avancé pour l'ESP32.
Les scénarios d'utilisation typiques incluent :
Par défaut, l'ESP agit en tant que STA et que soft-AP et transmet de manière transparente tout le trafic IP qui le traverse. Comme il utilise le NAT, aucune entrée de routage n'est nécessaire ni du côté réseau ni du côté des stations connectées. Les stations sont configurées via DHCP par défaut dans le réseau 192.168.4.0/24 et reçoivent l'adresse de leur serveur DNS du réseau WiFi existant.
Les mesures montrent qu'il peut atteindre environ 5 Mbps dans les deux sens, donc même le streaming est possible.
Quelques détails sont expliqués dans cette vidéo.
Pour un flashage direct sur l'appareil, utilisez l'Installateur Web.
L'esp_wifi_repeater démarre avec la configuration par défaut suivante :
Après le premier démarrage (ou une réinitialisation d'usine), il proposera un réseau WiFi avec un AP ouvert et le ssid « MyAP ». Il n'essaie pas encore de se reconnecter automatiquement à un AP de liaison montante (car il ne connaît pas de ssid ou de mot de passe valide).
Connectez-vous à ce réseau WiFi et effectuez la configuration de base soit via une simple interface web, soit via la configuration complète avec toutes les options via la console.
L'interface web permet de configurer tous les paramètres nécessaires à la fonctionnalité de base de transfert. Merci à rubfi pour le travail principal sur ce point : https://github.com/rubfi/esp_wifi_repeater/ . Pointez votre navigateur vers « http://192.168.4.1 ». Cette page devrait apparaître :
Entrez d'abord les valeurs appropriées pour le réseau WiFi de liaison montante, les « Paramètres STA ». Utilisez le mot de passe « none » pour les réseaux ouverts. Cochez la case « Automesh » si et seulement si vous souhaitez réellement utiliser le mode automesh. Cliquez sur « Connect ». L'ESP redémarre et se connectera à votre routeur WiFi. La LED de statut devrait clignoter après quelques secondes.
Si vous avez sélectionné automesh, la configuration est terminée. La configuration des « Paramètres Soft AP » n'est pas nécessaire car en mode automesh, ces paramètres sont identiques aux « Paramètres STA ». Le même ssid sera proposé par tous les répéteurs ESP connectés.
Si vous n'utilisez pas automesh, vous pouvez maintenant recharger la page et modifier les « Paramètres Soft AP ». Cliquez sur « Set » et l'ESP redémarre à nouveau. Il est maintenant prêt à transférer le trafic via le Soft AP nouvellement configuré. Sachez que ces modifications affectent également l'interface de configuration, c'est-à-dire que pour effectuer d'autres configurations, connectez-vous à l'ESP via l'un des réseaux WiFi nouvellement configurés. Pour un accès via le Soft AP, souvenez-vous de l'adresse du réseau du Soft AP si vous l'avez changée (l'ESP a toujours l'adresse x.x.x.1 dans ce réseau).
Si vous le souhaitez, vous pouvez cocher la case « lock » et cliquer sur « Lock ». Désormais, la configuration ne peut plus être modifiée sans la déverrouiller d'abord avec le mot de passe du réseau WiFi de liaison montante (définissez-en un même si le réseau est ouvert).
Si vous souhaitez saisir des caractères non ASCII ou spéciaux dans l'interface web, vous devez utiliser le codage hexadécimal de type HTTP comme « My%20AccessPoint ». Cela donnera la chaîne « My AccessPoint ». Avec ce codage hexadécimal, vous pouvez saisir n'importe quelle valeur d'octet, sauf 0 (pour des raisons internes au C).
Si vous avez fait une erreur et perdu tout contact avec l'ESP, vous pouvez toujours utiliser la console série pour le récupérer (« reset factory », voir ci-dessous).
La configuration avancée doit être effectuée via la ligne de commande sur l'interface console. Cette console est disponible soit via le port série à 115200 bauds, soit via le port tcp 7777 (par exemple « telnet 192.168.4.1 7777 » depuis une STA connectée).
Utilisez les commandes suivantes pour une configuration initiale :
Encore une fois, si vous souhaitez saisir des caractères non ASCII ou spéciaux, vous pouvez utiliser le codage hexadécimal de type HTTP (par exemple « My%20AccessPoint ») ou, uniquement sur la CLI, comme raccourci les guillemets de style C avec antislash (par exemple « My\ AccessPoint »). Les deux méthodes donneront la chaîne « My AccessPoint ».
La ligne de commande comprend beaucoup plus de commandes :