J'ai un routeur DD-WRT (à l'aide de DD-WRT V24SP2-MULTI (03/21/11) STD), configuré avec DNSMASQ pour résoudre certains domaines aux adresses internes et transmettre tout le reste à suivre. Le routeur lui-même est configuré pour utiliser les serveurs DNS publics de Google pour résoudre les adresses.
Mon écran de configuration ressemble à ceci:
Mon problème est que lorsqu'un client DHCP se connecte, ils obtiennent le routeur plus les deux serveurs DNS de Google en tant que serveurs DNS attribués:
Il s'agit d'un problème car parfois des clients sans fil essaient de résoudre un domaine censé pointer vers une adresse IP interne et finir par obtenir une adresse IP externe à la place car, pour une raison quelconque, leur demande est envoyée à 8.8.8.8
au lieu du routeur.
Je ne veux pas que le routeur servent autre chose que sa propre adresse IP en tant que serveur DNS. Est-ce possible?
C'est bien que vous utilisiez dnsmasq.
Vous pouvez configurer ce que vous voulez dans l'onglet Services (> Services) onglet, dans la case DNSMASQ> Options DNSMASQ supplémentaires Boîte, mais d'abord, vous voudrez effacer ces DNS statiques des champs.
Ajoutez les éléments suivants à la zone Options DNSMASQ:
dhcp-option= option:dns-server, 192.168.10.10 # DHCP option 006
server = 8.8.8.8 # DNSMasq will use these servers for forwarding the DNS requests that it can't serve
server = 8.8.4.4
Informations tirées du site officiel DD-WRT: http://www.dd-wrt.com/wiki/index.php/opendns
Il semble que vous puissiez définir les serveurs DNS restants sur des IP non routables (dans mon cas 10.0.0.0
& 10.0.0.1
) Et cela fera séduire vos serveurs DNS ISPS avec ces non-routables. Jusqu'à présent pour moi, il semble fonctionner sans retarder les serveurs DNS non existants.
Une option de configuration typique pour DD-WRT est de permettre au routeur d'acheminer les DNS en dehors des serveurs DNS primaires de l'ISP; que vous avez fait avec succès; Toutefois, étant donné que les demandes génèrent à partir de la machine client, connectant également le routeur, l'ordre de préférence est toujours donné à la DNS configurée sur la machine du client, puis au routeur.
Ce que vous décrivez, c'est que le client s'associe à votre routeur, ce qui est correct, mais leur DNS affiche votre routeur IP + 2 autres paramètres DNS. Veuillez vérifier l'ordinateur client et vous assurer que leurs paramètres IPv4 sont définis pour extraire de manière dynamique la configuration du serveur DNS à partir de la connexion et ne le configurez pas manuellement:
Ensuite, assurez-vous de disposer de votre installation de routeur DD-WRT correctement:
Dans votre configuration ci-dessus, vous avez également des problèmes. Vous avez défini la plage d'adresses DHCP pour commencer à 200
et finir à 255
; Je vous recommanderais de changer cela pour commencer à 200 et se terminer à 254
; laissant l'adresse 255 éteinte, étant donné que pour des configurations normales *.*.*.255
est une adresse de diffusion et non une adresse IP normale à utiliser pour attribuer au client associé.
J'ai mis en évidence les paramètres DNS locaux parce que vous définissez le vôtre sur 127.0.0.1
; Ce qui signifie que vous exécutez un serveur DNS local sur le routeur . Si ce n'est pas le cas, alors changez-le à 0.0.0.0
, ou une adresse appropriée à un serveur DNS local sur votre réseau.
Vous remarquerez que lorsque le serveur et le client sont configurés de cette manière, seuls les routeurs DNS Adresse IP apparaîtront; Et toutes les demandes seront acheminées via les serveurs DNS associés avec le routeur.
Remarque sur le serveur DNS local Si vous souhaitez que le routeur associe certaines adresses locales aux IP locales, vous pouvez ajouter celles aux options de configuration DNSMASQ dans l'écran DD-WRT approprié ou utilisez un serveur DNS local et Mettez une adresse IP appropriée pour ce serveur (généralement un serveur statique dans la portée du réseau). De cette façon, l'ordre de résolution sera le serveur local d'abord, puis les 2 externes. Mais toujours seuls les clients verront l'IP du routeur comme serveur DNS.
Si vous ne souhaitez pas que les clients atteindront des DNS externes ne mettent pas leurs adresses dans votre configuration du serveur DHCP.
Je suppose que vous vouliez ajouter (éventuellement plus rapidement) les serveurs DNS de Google dans une configuration de client DHCP externe (où DNSMASQ prendrait ses préférences du client DNS)
Supplémentaire:
Vous devez ajouter des serveurs DNS supplémentaire (tous) à WAN Configuration de la liaison. DNSMASQ utilisera-les et ne jamais que le client DHCP n'acquit que de fournisseur.
Ajout de quelques années de retard parce que je suis tombé sur cette recherche d'une réponse ... J'ai ajouté des interfaces virtuelles à mon PI-trou pour gérer 2 autres adresses IP.
eth0 192.168.10.10
eth0.1 192.168.10.11
eth0.2 192.168.10.12
Cela m'a permis de renseigner toutes les 3 boîtes avec des adresses locales et de faire la main suffisamment de la main que même si le routeur DD-WRT distribue 5, 3 locaux et le 2 DNS ISP en amont, mes machines ne les frapperont pas.
Chiming avec une méthode moins hacky: Si c'est votre réseau local et votre DNS, je suis sûr qu'il y a des adresses à rembourser pour que le DNS soit écouter sur trois IPS.
Le gain après avoir des adresses non routables devrait être sans pertinence pour pratiquer, mais au moins, vous ne comptez pas sur quelque chose étant cassé et que les routeurs lui répondent. Vous ne pouvez jamais être sûr que cela ne changera pas un jour.