Não é possível resolver nomes de host pela LAN


4

Ocasionalmente, nossa LAN pára de resolver nomes de host. Não temos ideia de por que isso acontece. Como podemos diagnosticar esses problemas?

Nós temos dois roteadores. Um está conectado à internet (via um modem de fibra). O outro é configurado como um comutador sem fio. isto é, ele serve a Internet através do primeiro roteador, mas está em uma sala diferente e é usado para conexões Ethernet com computadores naquela sala.

A questão parece ter origem no primeiro roteador (ou em outra coisa). Eu duvido que o roteador switch, ou qualquer problema com a configuração em toda a rede. Isso é porque geralmente nós digitamos http://home para chegar à configuração do roteador para o roteador conectado à internet, mas isso não está funcionando. No entanto, podemos digitar o endereço IP e acessar a página de configuração. Isso acontece se estamos conectados ao roteador original ou ao roteador.

Da mesma forma, temos um servidor web na lan que normalmente usamos o nome do host do computador para acessar, o que não podemos fazer pela rede (novamente o endereço IP funciona).

Da mesma forma, o ping dos endereços IP na rede funciona, mas os nomes de host não.

Eu não sei como consertamos isso, se é que isso acontece. Nós normalmente reiniciávamos os roteadores e eles voltavam. Desta vez, eles não têm, então eu estou procurando um pouco mais de insight sobre o porquê isso pode estar acontecendo.


Qual é o modelo dos dois roteadores?
Logman

Este é um ambiente Windows ou Linux? Você está usando um servidor DNS interno?
jmreicha

O primeiro roteador é um roteador de hub doméstico de 2 fios, o segundo é um roteador netgear. Eu peço desculpas, agora estou longe do trabalho e não consigo encontrar números de modelo. O servidor é linux, mais está rodando um windows 7 vm que também não resolve. Temos também uma caixa NAS netgear, vários computadores Windows e vários computadores Mac conectados à rede. Nenhum vai resolver e nenhum pode resolver outros nomes de host ...: / Obrigado pessoal.
Thomas Clayson

Onde a resolução de nomes deve acontecer? No servidor linux?
Mike Pennington

Não ... sobre o roteador, eu acho. Tem seu próprio servidor DNS.
Thomas Clayson

Respostas:


1

De acordo com as informações fornecidas, você deve começar determinando se o serviço DNS do roteador está realmente funcionando ou não. Você deve ser capaz de determinar isso observando a configuração do roteador para ver se o serviço está ativo ou não, mas se não houver indicadores para ajudá-lo, você pode recorrer a uma verificação de porta.


PASSE ESTA SEÇÃO SE O SEU ROUTER DISSE QUE O DNS ESTÁ VIVO:

Use uma ferramenta como nmap . Você pode baixá-lo rapidamente para seu servidor Linux, já que ele está incluído na maioria dos repositórios de pacotes padrão para suas distribuições padrão do Linux (Debian, Ubuntu, CentOS, Mint, Fedora, Redhat, etc). Dependendo se você está executando uma distribuição baseada em Debian ou baseada em RPM, sua sintaxe de comando pode ser diferente.

  • Para o Debian:

    • Procurar por nmap: sudo apt-cache search nmap
    • Para instalar nmap: sudo apt-get install nmap
  • Para RPMs (Fedora, Centos, RedHat e similares):

    • dnf search nmap
    • dnf install nmap
  • (em versões mais antigas antes dnf:)

    • yum search nmap
    • yum install nmap

Procurar por DNS

Supondo que o IP do seu roteador é 192.168.1.1, você deseja executar uma varredura de serviço-UDP -sU ) na porta 53 ( -p53 ) com resolução agressiva ( -A ) para descobrir se está vivo e funcionando:

nmap -sU -p53 -A 192.168.1.1

Desde que o serviço volte ABERTO | UNFILTERED então você é de ouro. Se aparecer como FECHADAS em seguida, dê uma olhada nas configurações um pouco mais e veja se há opções que permitem reconfigurar o DNS ou simplesmente reinicializar o roteador na esperança de que ele retorne à vida. Se tudo mais falhar, ligue para o fabricante e reclame profusamente. Isso às vezes funciona :)


Configurando o host do Windows:

De volta à tarefa em questão: desde que você tenha certeza de que o DNS está funcionando e funcionando corretamente no roteador, você vai querer tentar fazer com que o cliente do Windows funcione, já que é um pouco mais simples e você tem uma interface gráfica para contar. Recomendo configurar o DNS substituto no roteador para que ele possa consultar vários servidores DNS no caso de um deles falhar.

Meus favoritos pessoais:

  • 8.8.8.8 é o Google 1
  • 8.8.4.4 é o Google 2
  • 208.67.220.220 é OpenDNS 1
  • 208.67.222.222 é o OpenDNS 2

Feito isso, sua próxima etapa deve ser verificar se você pode fazer com que o sistema Windows resolva o DNS no roteador, configurando-o manualmente nas configurações de rede TCP / IPv4.

  1. Clique com o botão direito do rato no ícone de rede na parte inferior direita da barra de tarefas e dirija-se ao Networking and Sharing Center.
  2. Clique na sua interface de rede (deve ser ethernet 1 ou similar) e vamos para properties.
  3. Clique Internet Protocol Version 4 (TCP/IPv4) e acertar properties mais uma vez,
  4. Clique no User the following DNS server addresses botão radial,
  5. Digite o IP do roteador / servidor DNS como o DNS preferido,
  6. Entrar 8.8.8.8 (DNS público do google) como o DNS alternativo, por cair pra trás
  7. Verifica Validate Settings na saída
  8. Acertar OK para aplicar e esperar por interface de rede para solucionar problemas / reiniciar

Você deve ser capaz de resolver os nomes de host DNS neste momento nos sistemas Windows. Se você é, então você sabe que, por qualquer motivo, o serviço DHCP do seu roteador não está transmitindo as configurações corretas, e você pode precisar envolver o fabricante, ou talvez você possa mexer-se na esperança de que você fique em algum lugar. Sempre consulte a documentação.

Se, por outro lado, não funcionar, suspeitaria dos próprios cabos ou do hardware do roteador. Não há muito o que fazer neste momento além de começar a substituir os dispositivos físicos.


Configurando o servidor Linux:

(Pode ser necessário executar esses comandos a partir do root / sudo usuário, se você ver    quaisquer erros de permissão.)

Isso provavelmente será uma nova aventura para você se você não tiver muita experiência com o Linux, mas não se preocupe.

Comece verificando o /etc/resolv.conf arquivo com:

cat /etc/resolv.conf

Este arquivo é onde os servidores de nomes, nomes de domínio e domínios de pesquisa são configurados. Normalmente você verá:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.0.1

Existem duas possibilidades, dependendo da aparência da sua configuração. Uma é que você tem o dnsmasq instalado, e você pega aquela faixa de aviso dizendo para você não mudar seu resolv.conf. Neste caso, ele terá o loopback (127.0.0.1 ou 127.0.1.1) exatamente como você vê na minha configuração, indicando que ele executa seu próprio serviço DNS através do dnsmasq. Se você vir isso, execute o seguinte:

/etc/init.d/dnsmasq status

Se você ver No such file or directory então o dnsmasq não está instalado, não é um problema. Você pode seguir em frente sem ele, ou podemos instalá-lo rapidamente com
apt-get install dnsmasq (ou dnf install dnsmasq ).

Se você optar por não instalar / reiniciar o dnsmasq, você pode simplesmente editar o seu /etc/resolv.conf arquivo com o seu editor de texto favorito (eu prefiro nano ) incluir as seguintes linhas:

nameserver 192.168.1.1 8.8.8.8 8.8.4.4    # That's your router and two fallback DNS servers

Se você vir o status do dnsmasq como ativo / em execução, ele estará instalado e funcionando corretamente. Se o dnsmasq estiver inativo / morto, você deverá iniciá-lo com o seguinte:

/etc/init.d/dnsmasq start

O dnsmasq normalmente lida com a resolução de DNS alterando dinamicamente /etc/resolv.conf arquivo para você. Nos casos em que o seu resolvedor não está manipulando as solicitações corretamente, ou o dnsmasq não está configurado corretamente, eu sugiro que você leia com atenção sua adorável documentação .

Mas existem apenas duas configurações que você precisa para garantir que estejam no local /etc/dnsmasq.conf:

server=/yourlocaldomain/192.168.1.1
local=/yourlocaldomain/

Estes configuram o servidor para o seu nome de domínio local e o IP para o servidor DNS, e o local=/yourlocaldomain/ impede que o dnsmasq tente resolver os servidores de nomes upstream quando o seu domínio é encontrado no FQDN do host que você está tentando resolver.

Por exemplo, se você não definir essa configuração e tentar resolver emailserver.localdomain, o dnsmasq perguntará ao DNS público do Google onde emailserver.localdomain é ... e, claro, responder "eu não tenho idéia!"

Definir isso fará o dnsmasq ir: " emailserver.**localdomain** ... eu deveria perguntar 192.168.1.1 onde isso é. "- e 192.168.1.1, seu roteador, pode responder apropriadamente com uma resposta apropriada de DNS eo IP emailserver.localdomain.


Espero que esta explicação e solução prolixa ajudem você. Tentei explicar todos os cenários em que pude pensar, mas deixe-me saber se perdi alguma coisa ou algo não está funcionando.


0

Se a LAN não tiver muitos computadores e / ou não depender de rotas DNS internas, defina os parâmetros DNS na configuração do pv4 para:

8.8.8.8

e

8.8.4.4

Isso dará ao DNS o trabalho de resolução para os servidores do Google.


2
isso não resolve nomes de host na LAN local
Stese
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.