O Ubuntu não pode executar ping no nome do host, mas pode executar ping no IP?

14

bem, eu entrei no mundo do Ubuntu para administração. Encontrei threads semelhantes, exceto que eu sou capaz de executar ping no meu próprio nome de host e endereço IP e minhas janelas podem executar ping em meu nome de host linux, mas o Ubuntu não pode executar ping no nome de host do Windows.

Problema:

  • Eu tenho 4 computadores Windows e eu tenho 1 computador Ubuntu
  • O computador do Windows pode executar ping no computador do Ubuntu pelo nome do host e pelo endereço IP. Além disso, o Net View (prompt do cmd) exibe o nome do host do Ubuntu Computer.
  • O computador Ubuntu só pode executar ping por endereço IP, não por nome de host. Eu instalei o Samba também.
  • O computador Ubuntu pode executar ping sozinho pelo endereço IP e pelo nome do host
  • Eu posso usar o comando arp e exibirá todos os IPs dos computadores na rede, mas apenas pelo endereço IP.

Como é que eu posso executar ping apenas por endereço IP e não por nome de host nos computadores com Windows? Mas o Ubuntu pode executar ping sozinho pelo endereço IP e o nome do host e os computadores com Windows também podem executar ping pelo nome do host?

user2805313
fonte
Experimente o nome do host em TODOS OS CAPS. esse poderia ser o truque.
Jrg 06/08/19
Sim, eu tentei isso, mas sem sorte. = (Alguém disse para adicionar .local no final. Meus colegas de trabalho disseram que eu tenho que configurar a rede para apontar para o roteador para que ele entenda. Então, eu vou tentar isso e, se funcionar, eu irei em frente e poste a resposta
user2805313
Pode ser um problema no servidor DNS. Defina as configurações do servidor DNS corretamente. Talvez essas duas fontes possam ajudá-lo. serverfault.com/questions/389522/… . askubuntu.com/questions/23011/… .
Wolverine

Respostas:

22

O problema descrito aqui pode não estar relacionado ao DNS.

Você deve saber que o Windows pode resolver o nome do host do Windows para seu IP por outros mecanismos que não sejam o DNS padrão: pesquisa NetBIOS, WINS, ...

Como você disse que tem o Samba instalado no seu Ubuntu, provavelmente é isso que está acontecendo. Em toda a sua máquina Windows, é possível, pronto para uso, ter o nome do Windows resolvido para o seu endereço IP. Como o Samba está instalado no Ubunut, no seu PC com Windows, eles vêem o PC Ubuntu como um PC com Windows e a mesma resolução é possível.

Você diz que roda net viewno Windows e vê o seu PC Ubuntu, para que o nome NetBIOS seja bem publicado na sua rede, para que funcione no Windows.

Para alcançar o mesmo comportamento no Ubuntu e no Windows, você precisa instalar e configurar partes adicionais de software. O que você precisa é adicionar uma biblioteca de pesquisa que permita ao Ubuntu converter nomes de NetBIOS em IP. Esta biblioteca está contida no pacote libnss-winbind .

Como qualquer outro pacote Ubuntu, você o instala fazendo isso sudo apt-get install libnss-winbind. Pode ser que a biblioteca já esteja instalada, você pode verificar sua presença fazendo isso dpkg -l|grep libnss-winbind.

Depois que a biblioteca estiver instalada, você deverá habilitá-la no /etc/nsswitch.confarquivo. Este arquivo é o arquivo de configuração do NSS ( Name Service Switch ), que define de quais fontes o Linux pode resolver o nome do host, nomes de usuários, nomes de grupos e assim por diante.
Neste arquivo, você já tem uma linha iniciada por hosts:, provavelmente parecida com esta

hosts:          files dns

Isso instrui o sistema a procurar primeiro no /etc/hostsarquivo e depois no DNS configurado para resolver os nomes de host.
Você precisa modificar desta maneira:

hosts:          files dns wins

Observe que a ordem dos arquivos de palavras , dns e vitórias é importante. Primeiro, o sistema verificará o arquivo local quanto à resolução, solicitará ao servidor DNS e, finalmente, se ainda não for encontrado, executará a pesquisa NetBIOS.

Depois que isso for atualizado, para funcionar corretamente, você também precisará ter o serviço winbind em execução. O pacote que o contém é uma dependência do libnss-winbind , por isso foi instalado junto com ele.
Faça service winbind startpara ativá-lo.

Benoit
fonte
Não se esqueça de usar o sudo com o comando service winbind start.
Tristan
0

Os nomes de host para conversão de IP podem ocorrer se:

-Você as declara no arquivo / etc / hosts (não recomendado)

-Você obtém de um servidor DNS.

Eu diria que o seu problema pode ser que a configuração da interface de rede não possui servidor DNS ou não usa o que as caixas do Windows usam. Se eles usam a configuração da interface DHCP, a configuração do DNS costuma ser incluída e, se você tiver um servidor de domínio do Windows na rede, é provável que o usem como DNS primário.

Tente: 'nslookup some_machine_name' na linha de comando para ver o que acontece. Ele informará qual servidor você está usando, se houver.

HTH

Pyrophorus
fonte