Je souhaite configurer MediaWiki sur l'une de mes machines personnelles, puis faire en sorte que toutes les demandes effectuées sur le réseau local pour «wiki.home» ou «wiki.local» pointent vers cette case. Je sais que cela peut être fait en éditant chaque fichier / etc / hosts individuellement, mais je veux quelque chose de plus automatisé pour que, par exemple, si un ami ou un membre de la famille vient chez moi, il n'a pas besoin de jouer avec le héberge le fichier afin de visualiser le site.
Existe-t-il un moyen simple de procéder? J'ai le wiki opérationnel et j'ai étudié dnsmasq, mais je n'arrive pas à comprendre comment configurer correctement le DNS. Étant donné que je veux une solution automatisée, je sens que je dois changer les paramètres DNS sur mon routeur, mais si je change les paramètres DNS là-bas, comment puis-je toujours résoudre les hôtes externes?
Détails de configuration
Routeur: Netgear WNR2000v2. Le routeur me donne la possibilité de spécifier manuellement les serveurs DNS, je suppose que je devrai pointer vers ma boîte Ubuntu si je veux que cela soit opérationnel.
Hôte MediaWiki et dnsmasq: exécute Ubuntu 12.04. J'ai eu quelques difficultés avec la configuration dnsmasq (principalement à cause de mon inexpérience). Par exemple, je ne suis pas sûr, mais je pense que lors de l'installation, Ubuntu a modifié mes paramètres DNS pour qu'ils
/etc/resolv.conf
aient désormais127.0.0.1
comme seul serveur DNS. À ce stade, j'ai pu résoudre les hôtes locaux, mais rien d'autre. J'ai résolu ce problème temporairement en modifiant/etc/resolv.conf
et en ajoutant en192.168.1.1
tant que serveur de noms secondaire, mais le problème ici est qu'il192.168.1.1
utilisera la boîte Ubuntu pour DNS. Suis-je en train de manquer quelque chose d'évident ici?paramètres dnsmasq: décommente les lignes suivantes:
domain-needed bogus-priv local=/local/ domain=local
Réponses:
Avec le DNS standard, vous exécuteriez un serveur DNS faisant autorité pour le domaine local (
home.
oulocal.
, bien qu'il soit préférable d'éviter ce dernier - voir la note ci-dessous), mais agit également comme un résolveur pour tous les autres domaines.dnsmasq peut être utilisé à cette fin - le mode récursif est activé par défaut et votre configuration semble correcte; il suffit de lui indiquer les serveurs de noms à utiliser pour les domaines non locaux. Normalement, ceux-ci seraient lus à partir du
/etc/resolv.conf
fichier système ; cependant, comme vous souhaitez que le domaine local fonctionne également sur l'ordinateur serveur DNS, vous devrez créer une copie dédiée de resolv.conf qui ne serait utilisée que par dnsmasq , tandis que le resolv.conf d' origine pointerait versnameserver 127.0.0.1
.Remarque: Ces instructions sont très basiques et doivent être adaptées à la distribution Linux utilisée. En particulier, consultez les guides Debian et Ubuntu sur dnsmasq.
Après cela, le routeur doit être configuré pour utiliser cet ordinateur comme serveur DNS; toutes les requêtes DNS des ordinateurs de votre réseau seraient alors traitées par dnsmasq .
(Les serveurs DNS complets, tels que bind9 , peuvent effectuer eux-mêmes des requêtes récursives - la configuration des serveurs de noms en amont devient entièrement facultative. C'est ainsi que fonctionnent les serveurs de noms de votre FAI, par exemple. Cependant, l'hébergement de votre propre domaine avec bind9 est assez compliqué au début, dans comparaison avec le dnsmasq simple .)
Remarque: Si Avahi (aka Bonjour) est configuré sur n'importe quel ordinateur du réseau (qu'Ubuntu a, par défaut), il est préférable d' éviter
local.
dans DNS et de choisir quelque chose comme à lahome.
place, car les noms sous la forme dename.local
sont déjà gérés par Avahi .(Bien qu'Avahi ne réponde normalement qu'à
current-hostname.local
, il est en fait possible de publier des entrées supplémentaires telles quewiki.local
; elles auront toutefois besoin d'ajouter des adresses IP supplémentaires en raison du fonctionnement de mDNS. Pour cette raison, l'utilisation d'Avahi au lieu du DNS centralisé ne signifie pas offrent plus d'avantages, donc je ne le suggère pas.)la source
J'ai trouvé que le démon Avahi était le moyen le plus simple de le faire. Remarque: si vous utilisez des machines Windows pour vous connecter au domaine .local, vous devez vous assurer qu'iTunes ou un autre client Bonjour est installé sur ces machines.
Consultez ce lien pour plus d'informations: http://www.howtogeek.com/167190/how-and-why-to-assign-the-.local-domain-to-your-raspberry-pi/
Bien que ce lien soit spécifique au Raspberry Pi, il devrait fonctionner de la même manière sur les machines Ubuntu. Pour les autres distributions Linux qui n'utilisent pas
apt-get
, ajustez-apt-get
vous simplement à votre gestionnaire de paquets approprié - par exempleyum
pour Fedora et CentOS)Voici les commandes exactes que j'ai exécutées pour que cela se passe sur mon serveur multimédia Raspberry Pi:
sudo apt-get update && sudo apt-get upgrade sudo apt-get install avahi-daemon
À partir de là, il commence automatiquement à utiliser le nom d'hôte de votre ordinateur plus l'
.local
extension comme nom de domaine. Donc, si le nom d'hôte de votre machine estmediaserver
, vous pouvez y accéder sur le réseau en tapantmediaserver.local
dans la barre d'URL de toute machine sur laquelle Bonjour / Avahi est installé (c'est-à-dire tous les Mac, plus les machines Windows avec iTunes installé).la source
La résolution de noms locaux est une fonctionnalité simple et fait partie de la plupart des routeurs que j'ai utilisés. Il est également implémenté dans le firmware DD-WRT. Netgear ne se soucie pas de cette fonctionnalité qui est constamment demandée .
Donc, la réponse est beaucoup plus simple que les autres publiées ici - évitez les ennuis et changez votre routeur Netgerat en quelque chose qui prend en charge la résolution de noms locaux. Ou, si ce n'est pas une option, et que vous sentez la force et que vous avez le temps, flashez DD-WRT dessus.
la source