Ok, c'est peut être sensiblement exagéré mais il faut reconnaitre que la livebox en terme de fonctionnalités est laaarrrgeemment derrière les autres box...

En fouillant le net, j'ai trouvé pas mal de personnes dans la même situation que moi : à savoir, des personnes hébergeant un serveur web chez eux avec un domaine qui va bien et qui n'arrivent pas à accéder à leur serveur depuis l'intérieur de leur réseau en utilisant le domaine externe.

Certaines box proposent une fonction dite "loopback" qui permet à une règle de NAT de re-rentrer sur le réseau vers l'IP locale depuis l'IP WAN.
Sauf que... La livebox 2 ne le fait pas...

La solution consiste alors à ajouter au serveur DNS (la livebox) les entrés correspondant à notre domaine vers l'IP locale du serveur. Ainsi on peut joindre notre serveur depuis l'intérieur du réseau avec son domaine public.
Sauf que ... La livebox 2 ne le fait pas non plus ....


Bref, après avoir fouillé le net, il s'avère que cette livebox ne possède pas de "pages cachés" qui donnent accès aux fonctions avancées. Le seul moyen de rooter la livebox est de venir s'y connecter en serial. La page suivante http://www.quadriv.com/blog/ explique en détails comment se connecter sur la box en serial pour obtenir un accès root.
Malheureusement, cette manip n'est pas simple. Il faut user du fer à souder et acheter un adaptateur serial TTL vers RS232 ou USB.

Pour ceux qui ont pu réaliser cette manip, il est dés lors possible d'avoir un accès quasi complet à la box et ... d'ajouter ces fameuses entrées DNS :)

La commande suivante permet d'afficher les entrées DNS actuelles :
[root @ home]$ rg_conf_print dns
(dns
  (domainname(home))
  (hostname(livebox))
  (entry
    (0
      (ip(127.0.0.1))
      (hostname(localhost))
    )
    (1
      (ip(192.168.1.1))
      (hostname(livebox))
    )
)


Comme j'héberge mon serveur à la maison et que son domaine est psykokwak.com, je souhaite donc pouvoir y accéder depuis l'intérieur de mon réseau, son IP locale étant "192.168.1.10", je dois ajouter une entrée dans cette liste.

Si je fais un test pour vérifier si j'arrive à résoudre psykokwak.com, voila ce que j'obtiens :
C:\Documents and Settings\psykokwak>nslookup psykokwak.com
Serveur :  livebox.home
Address:  192.168.1.1

*** livebox.home ne parvient pas à trouver psykokwak.com : Server failed


Pour ajouter l'entrée qui permet de résoudre, il faut taper les commandes suivantes :
[root @ home]$ rg_conf_set /dns/entry/2/ip 192.168.1.10
[root @ home]$ rg_conf_set /dns/entry/2/hostname psykokwak.com
[root @ home]$ reconf 1


Maintenant, si je re-teste la résolution :
C:\Documents and Settings\psykokwak>nslookup psykokwak.com
Serveur :  livebox.home
Address:  192.168.1.1

Nom :    psykokwak.com.home
Address:  192.168.1.10


Si vous avez plusieurs entrées à ajouter, il suffit de les faire les unes après les autres en prenant soin d'incrémenter le chiffre après pour chaque entrée.

La commande "reconf 1" permet de sauvegarder la configuration.

Les modifications resteront valable jusqu'au prochain reset "usine" ou à la prochaine mise à jour.
Attention : Si vous vous connectez sur l'interface web d'administration sur la page Paramètres avancés >> DNS, la livebox s'apercevra qu'elle à été bidouillé et effacera vos modifications. Il faudra alors les refaire.

Le script suivant (à adapter à vos besoins et à renommer en fichier .vbs) vous permettra de remettre vos parametres en un seul click :
Set shell = WScript.CreateObject("WScript.Shell")
shell.Run "telnet 192.168.1.1"
WScript.Sleep 2000
shell.Sendkeys "root~"
WScript.Sleep 300
shell.Sendkeys "1234~"
WScript.Sleep 300

shell.Sendkeys "rg_conf_set /dns/entry/2/ip 192.168.1.10~"
WScript.Sleep 200
shell.Sendkeys "rg_conf_set /dns/entry/2/hostname psykokwak.com~"
WScript.Sleep 200

shell.Sendkeys "rg_conf_set /dns/entry/3/ip 192.168.1.10~"
WScript.Sleep 200
shell.Sendkeys "rg_conf_set /dns/entry/3/hostname www.psykokwak.com~"
WScript.Sleep 200

shell.Sendkeys "reconf 1~"