Configurer le serveur DNS pour renvoyer la même IP pour tous les domaines

11

Je voudrais configurer un serveur de noms qui renverra la même adresse IP (enregistrement "A") pour tout nom d'hôte arbitraire. Par exemple:

  • exemple.com
  • subdomain.example.com
  • someotherdomain.com
  • anyotherdomain.co.uk

devrait tous renvoyer la même adresse IP. Existe-t-il un moyen de le faire avec BIND? Ou existe-t-il une alternative à BIND qui peut le faire?

balexand
la source

Réponses:

20

Avec BIND, vous avez besoin d'une fausse zone racine pour ce faire. Dans named.conf, mettez ce qui suit:

zone "." {
    type master;
    file "/etc/bind/db.fakeroot";
};

Ensuite, dans ce db.fakerootfichier, vous aurez besoin de quelque chose comme ceci:

@ IN SOA ns.domain.com. hostmaster.domain.com. ( 1 3h 1h 1w 1d )
  IN NS <ip>
* IN A <ip>

Avec cette configuration, BIND renverra la même adresse IP pour toutes les Arequêtes.

Oliver
la source
Fonctionne bien, mais le domaine principal n'est pas résolu? Des idées? par exemple: testdomain.com
opc0de
Cela fonctionne assez bien. Le seul problème est que les requêtes d'enregistrement NS pour le domaine peuvent exploser - à savoir qu'il sert les enregistrements NS pour la .zone, qui ne répondra pas aux requêtes NS d'un domaine donné. (Mais cela fonctionne autrement pour servir le bon record A)
Thomas Ward
une façon pour le serveur DNS Microsoft?
deadManN
8

Selon la page de manuel dnsmasq

address=/#/1.2.3.4

devrait faire l'affaire.

Gerald Combs
la source
Merci! C'était tellement simple. Dnsmasq est définitivement plus facile à configurer que BIND.
balexand le
Savez-vous s'il existe également un moyen d'utiliser un caractère générique avec des enregistrements MX dans dnsmasq?
balexand
Il ressemble mx-hostet mx-targetfera cela.
Gerald Combs
1
Savez-vous comment? L'utilisation de caractères génériques avec mx-hostet mx-targetn'est pas documentée dans la page de manuel et je ne peux pas le faire fonctionner. J'ai essayé d'utiliser une notation similaire à l' addressoption ( #signe). J'ai pu faire fonctionner des caractères génériques avec les deux Aet MXutiliser BIND en utilisant la suggestion d'Oliver, mais je préfère en fait utiliser dnsmasq. Merci!
balexand
dnsmasq est plus un serveur de noms récursif qu'un serveur faisant autorité (pourrait être utilisé parly comme ça, mais clairement pas son objectif principal)
Patrick Mevzek
1

Vous pouvez effectuer une correspondance générique dans bind.

*.example.com.        IN      A       192.0.2.45

Cela doit être défini dans votre fichier de configuration nommé pour le domaine. Faites juste attention si vous devez définir d'autres Aenregistrements pour le domaine.

François Wolmarans
la source
3
Quelle partie de "tous les domaines" avez-vous manquée?
ceejayoz
1

Vous pouvez également utiliser l'outil fakedns . L'utilisation est très simple - il se lie à poster 53 UDP et servir la même adresse IP à toutes les requêtes A . Vous fournissez l'adresse IP en tant que paramètre de ligne de commande. De loin la solution la plus simple. Nécessite Python pour fonctionner.

Konrad Gajewski
la source