web-dev-qa-db-fra.com

Acheminez le TLD complet (* .dev par exemple) vers 127.0.0.1

Aux fins du développement, je souhaite que toutes les demandes DNS adressées au .dev TLD soient transférées sur mon propre PC.

Le fichier hosts ne suffit pas. J'utilise plusieurs domaines et plusieurs sous-domaines. Je devrais ajouter une ligne pour chaque combinaison.

J'ai lu qu'un redirecteur DNS tel que DNSmasq peut être utilisé pour faire le travail (par exemple comme décrit ici ). De plus, ce logiciel est déjà installé sur Ubuntu 12.10.

Le problème est que je ne vois pas comment et où je devrais configurer DNSmasq, c’est-à-dire où je devrais mettre cette ligne:

address=/dev/127.0.0.1
29
Roel van Duijnhoven

Le serveur complet autonome dnsmasq (DHCP et DNS) n'est pas installé par défaut dans Ubuntu 12.04 et 12.10, mais un paquetage appelé dnsmasq-base est installé par défaut dans Ubuntu Desktop 12.04 et 12.10. Le package dnsmasq-base contient le binaire dnsmasq et est utilisé par NetworkManager.

Pour faire ce que vous voulez, vous devrez utiliser Dnsmasq en tant que serveur DNS en cache. Tu dois:

  • Installez dnsmasq Sudo apt-get install dnsmasq
  • Modifiez les paramètres de votre réseau pour que votre ordinateur s’utilise comme serveur DNS.
  • Apportez les modifications aux fichiers de configuration:

Créez /etc/dnsmasq.d/dev-tld avec le contenu suivant:

local=/dev/

address=/dev/127.0.0.5

La première commande indique que les demandes *.dev ne peuvent pas être transmises à votre vrai serveur DNS. Le second dit *.dev est résolu en 127.0.0.5 qui est localhost.

  • Redémarrez le service Dnsmasq (pas le gestionnaire de réseau)
18
Javier Rivera

Dans Ubuntu 12.10 ou une version ultérieure, vous pouvez le faire avec Dnsmasq exécuté par NetworkManager.

  1. Créez le répertoire mkdir /etc/NetworkManager/dnsmasq.d s'il n'existe pas déjà.

    Sudo mkdir /etc/NetworkManager/dnsmasq.d
    
  2. Mélangez la ligne suivante dans /etc/NetworkManager/dnsmasq.d/dev-tld.

    address=/dev/127.0.0.1
    
  3. (Ubuntu 12.10) Redémarrez NetworkManager.

    Sudo service network-manager restart
    
  4. (Ubuntu> 13.04) Redémarrez Dnsmasq.

    Sudo service dnsmasq restart
    
  5. Profitez de la génialité.

enter image description here

21
jrg

Ce qui suit a fonctionné pour moi dans Ubuntu 16.04:

  1. Installez dnsmasq

    Sudo apt-get -y install dnsmasq
    
  2. Editez le fichier dnsmasq.conf:

    Sudo nano /etc/dnsmasq.conf
    
  3. Ajoutez votre commande:

    address=/dev/127.0.0.1
    

    Pour les caractères génériques (*), vous pouvez utiliser point (.) Puis dnsmasq pour résoudre WHATEWER_YOU_PUT_HERE.yourmachine.yourdomain sur la même adresse IP. Par exemple, address=/.localhost.dev/127.0.0.1

  4. Redémarrez le service Dnsmasq:

    Sudo /etc/init.d/dnsmasq restart
    
1
Jeril