Como acessar suas máquinas usando nomes DNS com o DD-WRT
Nós mostramos a você como definir estaticamente os IPs em sua rede, agora permite alternar o DNS para maior elegância e facilidade de uso. O guia de hoje mostrará como acessar suas máquinas usando nomes DNS em seu roteador habilitado para DD-WRT.
Imagem por Henk L
Prefácio
Em nosso guia Como configurar o DHCP estático em seu roteador DD-WRT, falamos sobre garantir que seus clientes sempre obterão o mesmo endereço IP do roteador. Então, agora, se você quiser acessar uma das máquinas em sua rede, como você sabe que é IP, você pode usar isso ... mas usar IPs simplesmente não tem a mesma elegância de usar nomes. Além disso, com a utilidade do “IP estático” diminuindo devido à ascensão do UPnP, e a inconveniência de configurar “reservas estáticas” (ter que encontrar os MACs e similares)… E se você não quiser lembrar de IPs em todos?
É aí que o DNS entra.
O problema
Você está tentando acessar de uma máquina / dispositivo em sua rede para a outra usando seu endereço IP (usando ping, por exemplo) e funciona. No entanto, ao tentar fazer o mesmo usando seu nome de host como "mydesktop" ou "mylaptop"? é um sucesso e uma falta… às vezes funciona… geralmente não ...:
O que está acontecendo?
Seus dispositivos não sabem quem e como devem pedir a tradução do "nome" para "IP", porque estão faltando uma configuração de chave, o "sufixo DNS".
Quando um computador precisa traduzir um nome para um endereço IP (chamado de "resolver"), ele tem algumas maneiras de fazê-lo, uma das maneiras é perguntar a um servidor DNS (Domain Naming System). No entanto, para poder fazer isso, o cliente deve fazer a pergunta na forma de um “FQDN (nome de domínio totalmente qualificado)”..
Um FQDN consiste no nome do host como “mydesktop” e a zona DNS a qual ele pertence, como “geek.lan”. Portanto, no nosso exemplo, os FQDNs dos hosts seriam “mydesktop.geek.lan” e “mylaptop.geek.lan”, respectivamente. Quando um cliente não tem a "zona DNS" disponível, não é possível perguntar ao DNS sobre um nome "plano" (um nome que não especifica a "zona DNS"). Ou seja, para realmente chegar ao seu host pelo nome, você precisaria pingar “mydesktop.geek.lan”.
No entanto, se o sufixo DNS foi definido de alguma forma (manual ou automaticamente), o cliente tentará automaticamente anexá-lo ao nome do host solicitado e solicitará a um servidor DNS se ele puder ajudar com a resolução..
Com isso dito, se o sufixo DNS não estiver definido, o cliente tentará descobrir o nome por conta própria, usando uma “transmissão DNS”. O problema é que nem todos os clientes estão configurados para responder, ou estão realmente configurados para deliberadamente não responder a tal solicitação. Em contraste, seria simplesmente irritante especificar o FQDN todas as vezes.
A solução
Para ter a infraestrutura completa que consertará este problema, basta definir o “sufixo DNS” no “escopo DHCP” do roteador *. Ao fazer isso, ambos farão com que o roteador tenha agora um serviço de servidor de “DNS dinâmico” no qual os clientes possam se registrar, para que o próprio serviço DHCP faça o mesmo para hosts sem auto-registro e forneça o “DNS sufixo ”como parte da“ concessão DHCP ”dada aos clientes. Portanto, tornar toda a solução uma solução padrão auto-sustentável, que resolve todos os problemas em uma só falha…. puro, um?
* Ao usar o DD-WRT… com outros roteadores, sua milhagem pode variar.
Para fazer isso, vá para a página de administração do seu roteador:
- Vá em -> Serviços
- Alterar, "Domínio usado" para ser "LAN e WLAN"
- Escolha um nome de domínio, usamos "geek.lan" para este exemplo, mas você pode usar * o que quiser.
- Embora o uso de reservas DHCP estáticas seja opcional para esse procedimento, se você optar por implementá-lo, é recomendável definir o nome do host, para corresponder ao que está definido no sistema operacional do dispositivo / máquina. Agora, se acontece que o sistema operacional dos dispositivos, não registra um nome no DNS (como telefones), esta é uma boa maneira de forçar um sobre ele.
- Clique em "Salvar" -> "Aplicar configurações".
* A única exceção a essa regra é que, se você usar “.local”, enquanto as máquinas com Windows provavelmente funcionarão bem, suas máquinas Linux irão aderir ao padrão mDNS (Multicast DNS) e irão novamente ignorar o servidor DNS. Existe uma solução alternativa, mas está além do escopo deste guia.
Agora, para verificar se as configurações foram afetadas, vá para a linha de comando e emita um “ipconfig”.
Você deve ver que seu sufixo DNS atualmente não existe como abaixo:
Emita um “ipconfig / release” seguido por um “ipconfig / renew”, e você deverá ver algo como:
Repita o procedimento em pelo menos mais uma máquina e tente executar o ping, usando apenas o nome do host.
Você deve ver que o cliente tem "auto-magicamente" entendido que o nome completo do dispositivo que você está ping é "hostname.dns.zone", e foi capaz de traduzir (resolver) o FQDN para um IP pingável:
Solução de problemas
Como este guia é sobre o uso de DNS, como o guia Como remover anúncios com Pixelserv no DD-WRT foi: Se você tiver problemas, há algumas coisas a fazer:
- Limpar o cache DNS de suas máquinas pessoais.
Isto é devido a um cache de DNS, que pode enganar seu computador em pensar que ele já conhece o nome do host, sem consultar o DNS para ele. No windows isso seria “ipconfig / flushdns”. - Certifique-se de que seu cliente esteja usando o roteador como DNS e resolva o FQDN.
Especialmente ao usar uma VPN ou uma rede que é mais complexa do que o roteador normal para a configuração do computador, é possível que o seu computador cliente simplesmente não esteja usando o roteador como seu DNS. É muito fácil ver usando o comando “nslookup” abaixo do que é o servidor DNS que o cliente está usando. Se o IP não é o mesmo que o roteador, você encontrou o problema.
É isso aí ... você deve estar pronto
Depressa, tudo que vejo é escuridão.