Livebox Orange Nat Loopback

LIVEBOX ORANGE NAT LOOPBACK

(Ou comment automatiser l’écriture du fichier /etc/hosts)

 

1/ Problème

Bon, mon serveur Cloud auto-hebergé est désormais en ligne et fonctionnel. Ça plait bien à madame c’es pratique et sécurisant. Même la famille s’en sert désormais comme partage de photos.

C’est bien mais de l’extérieur de la maison l’accès se fait via le nom de domaine fournit par no-ip.com et  de l’intérieur de la maison (voir article Ip fixe avec Orange), l’accès se fait via l’ip du réseau interne du type 192.168.1.40..

  • Si je m’avise de renseigner l’adresse no-ip.com de l’intérieur de chez moi je tombe sur la page d’admin de ma box.
  • Si à l’inverse je tape l’adresse interne à l’extérieur, de manière tout à fait logique, rien ne se passe.

Vous me direz c’est pas bien grave il suffit de taper des adresse différentes…

mouais ya qu’a faire ça tiens…mais d’une part c’est pas vachement WAF, madame à un peu de mal à s’y retrouver et d’autre part ça obligerais à enregistrer deux favoris, et deux configuration dans le client de synchronisation etc…

L’idéal serait d’y accéder en interne comme en externe avec la même adresse non ?

 

ça, ça s’appelle du NAT Loopback ou Hairpinning pour les puristes : ça consiste dans le fait que votre routeur (ou box) accepte les paquets sortants-réentrants.

certains fournisseur d’accès permettent ce fonctionnement via une simple configuration de leur box.

Evidemment, notre chère bonne vieille Livebox d’Orange nous l’interdit elle…pour raison de sécurité qu’y disent….bon ba on va faire avec. allez hop on se creuse les méninges !

 

2/ Solution

Plusieurs solution existent mais la solution la plus simple est d’écrire la résolution de nom dans le fichier /etc/hosts qui doit ressembler à peu de chose près à cela chez vous :

127.0.0.1 localhost
127.0.1.1 debian.debian debian

# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

 

Il suffit lorsque vous êtes chez vous de rajouter simplement à la fin de ce fichier, l’ip de la machine qui héberge et le domaine de votre site comme dans cet exemple :

192.168.1.40    www.zb2oby.fr

A l’extérieur de chez vous il faudra penser à retirer cette ligne.

 

Cette méthode est donc très pratique pour un poste fixe mais beaucoup moins pour un portable qui peut potentiellement changer de réseau régulièrement.

 

3/ Automatisation

Oui donc encore une fois devoir réécrire ce fichier à chaque changement de réseau c’est pas tip-top.

Qu’a cela ne tienne, on va le faire mais on va l’automatiser :

Voici un petit programme que j’ai écrit en bash et qui permet de configurer/enregistrer ses points d’Accès favoris une seule fois.

Le programme s’occupe ensuite de checker régulierement le réseau sur lequel on se trouve pour écrire dans votre fichier /etc/hosts la résolution de nom voulue ou la supprimer si vous êtes dehors. Plus besoins de s’occuper de changer ses resolutions pour ses synchronisations par exemple !

 

  • Récupérez via git le dépôt suivant ou télécharger le directement sur github :

https://github.com/zb2oby/hosts

  • décompressez l’archive
  • placez vous dans le dossier nouvellement crée
  • lancez l’installation en mode super-utilisateur via la commande
sudo bash install.sh
  • Redémarrez votre machine
  • Enjoy !

Si vous rencontrez des problème avec le script, vérifiez tout d’abord que les dépendances sont satisfaites (voir Readme). Assurez vous également d’avoir les droits suffisant sur la machine à configurer. Pour le reste les retours d’expérience sont les bienvenues !

Laisser un commentaire

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Show Buttons
Hide Buttons