Hello, voila une petite présentation d’une manière d’accéder à Home Assistant de l’extérieur en IPv6.
Je précise tout de suite que je ne suis pas un spécialiste, surtout pas en réseau, je ne peux donc pas dire que c’est un tuto à proprement parler. Si certaines personnes maîtrisant mieux le réseau veulent ajouter des précisions/commentaires, surtout n’hésitez pas.
Je donne les grandes lignes importantes que j’ai suivi, mais pas le détail qui est largement documenté/expliqué (duckdns / nginx…).
Le contexte :
- Mon installation fonctionne entièrement sous docker, avec un vieux PC transformé en hyperviseur Proxmox. J’ai un conteneur dédié pour chaque utilisation (HA / Zigbee2MQTT / MQTT / DuckDNS / Nginx…)
- J’ai une box Red by SFR en CGNAT, donc pas d’adresse IPv4 publique.
- Je n’ai pas de nom de domaine, et pas l’utilité d’en avoir. Je suis donc passé par DuckDNS.
- Etant sous docker, j’ai la version HA Core d’installé, donc pas d’add-on.
Je cherchais donc le moyen de configurer mon installation en IPv6. J’ai beaucoup fouillé sur les forums français et anglais. Beaucoup recommandait de faire une demande de rollback afin d’avoir une IPv4 publique. Mais je voulais essayer de configurer l’ensemble tout de même en IPv6 étant donné que c’est normalement l’avenir.
ATTENTION: La solution que j’ai trouvé ne fonctionne qu’à condition que le terminal via lequel on accède à distance soit aussi en IPv6 (je suis parti quelques jours au Maroc, et ma connexion WiFi étant en IPv4 je n’ai pas réussi à accéder à HA).
Pour ma part, de mon smartphone je n’ai pas de souci, je suis en IPv6.
1ère étape : Nginx Proxy Manager
- Avoir Nginx Proxy Manager d’installé.
- Récupérer l’adresse IPv6 de cette installation (pour ma part étant donné que j’ai un conteneur docker spécifique, j’ai une adresse IPv6 dédiée). On peut retrouver cette adresse dans l’interface de gestion de la box.
2ème étape : DuckDNS
- Avoir DuckDNS d’installé.
- Avoir un compte DuckDNS
- Créer un nom de domaine.
- Une fois créé, entrer l’adresse IPv6 de Nginx Proxy Manager dans la partie IPv6:
- Valider en appuyant sur « update ipv6 »
- Supprimer l’adresse current ip (s’il y en a une)
- Valider en appuyant sur « update ip »
Il est important de renseigner l’adresse IPv6 de Nginx Proxy Manager. J’ai testé en mettant l’adresse IP directement de Home Assistant, mais sans succès.
3ème étape : Configuration Nginx Proxy Manager
-
Se rendre sur l’interface de NPM
-
Se rendre sur « Proxy Hosts »
-
Appuyer sur « Add Proxy Host »
-
Dans la fenêtre, renseigner les différentes informations nécessaires :
Nom de domaine (créé précédemment sur DuckDNS)
Scheme HTTP
L’adresse IPv4 interne à votre réseau qui permet de se connecter à Home Assistant
Le port 8123
Cocher Websockets Support
-
Se rendre dans l’onglet SSL
Cocher Force SSL
Cocher Use a DNS Challenge
Choisir DuckDNS dans DNS Provider
Remplacer your-duckdns-token par votre token
Accepter les conditions et valider.
Si tout se passe bien, vous aurez accès à Home Assistant :
- en local via http://192.168.X.X
- de l’extérieur via https://XXX.duckdns.org
Avec cette méthode, je n’ai eu aucun paramétrage à faire sur ma box (redirection de ports ou autre…).
J’ai également configuré d’autres accès extérieur via NPM. Mais toujours en mettant dans DuckDNS l’adresse IPv6 de NPM. C’est Nginx qui s’occupe ensuite de rediriger vers la bonne adresse IP interne à mon réseau.
N’hésitez pas si vous avez des commentaires, améliorations