%3F.png)
Suponha que eu tenha dois computadores com nomes de host pc1
e pc2
na minha rede local 10.0.0.0/24
. Meu roteador tem o endereço IP 10.0.0.138
e suas instruções dizem que também pode ser acessado em modem.home
, o que tentei e é verdade.
Quero me conectar pc1
via pc2
ssh e usar seu nome de host, não seu ip para isso. No entanto, o host
comando no Linux me dá esse resultado ao usar o endereço IP de pc2
:
host 10.0.0.53
Host 53.0.0.10.in-addr.arpa not found: 2(SERVFAIL)
Tentei fazer alguma pesquisa sobre o que isso significa e acho que diz que
Agora para minhas perguntas:
- Qual é exatamente o
.home
domínio? É normal ou é apenas algo que meu roteador configura? - Como posso adicionar meus computadores (linux) a esse domínio para poder recuperar os nomes de host dos outros dispositivos (na rede local)?
Responder1
O que exatamente é o domínio .home? É normal ou é apenas algo que meu roteador configura?
É apenas algo que seu roteador configura.
Como muitos roteadores fazem, ele executa internamente um cache/proxy DNS e se anuncia como o servidor DNS em todas as respostas DHCP. O proxy DNS do roteador está configurado para servir *.home
nomes fora da configuração local em vez de encaminhar as consultas ao DNS do ISP. (Você pode encontrar esse recurso no dnsmasq se planeja criar o seu próprio.)
O roteador tem o nome modem.home
definido estaticamente para sempre retornar seu próprio IP, mas outros *.home
subdomínios geralmente são lidos no banco de dados de locação do servidor DHCP.
Como posso adicionar meus computadores (linux) a esse domínio para poder recuperar os nomes de host dos outros dispositivos (na rede local)?
Certifique-se de que seus computadores usem DHCP e que seus clientes DHCP sempre preencham a opção 'Nome do host' (12) nas solicitações. Por exemplo, se o computador usardhclient, adicione send host-name = gethostname();
à sua configuração.
Responder2
Qual é exatamente o
.home
domínio? É normal ou é apenas algo que meu roteador configura?
Enquanto.homese.home.arpasão definidos para usos específicos, o .home
domínio não parece estar neste momento (até onde eu sei). Dito isto, oRFC para .home.arpanotas:
O Home Networking Control Protocol (HNCP) foi atualizado para usar o 'home.arpa.' domínio em vez de '.home'.
Portanto, parece que pode haver alguma chance, .home
neste caso, de ter sido planejado para uso comHNCPdispositivos capazes, por exemplo, de descoberta automática, configuração, etc. Mas isso é apenas especulação.
Como posso adicionar meus computadores (Linux) a esse domínio para poder recuperar os nomes de host dos outros dispositivos (na rede local)?
Você pode verificar as configurações do roteador para ver se há alguma opção para adicionar nomes de host e IPs adicionais para resolução local.
Caso contrário, conforme detalhado em outra resposta a esta pergunta, o método mais simples seria usar o hosts
arquivo em cada PC para definir mapeamentos de nome de host/endereço IP:
ex. hosts
(PC 1 → 10.0.0.10
)
10.0.0.20 pc2.home
ex. hosts
(PC 2 → 10.0.0.20
)
10.0.0.10 pc1.home
O hosts
arquivo geralmente é encontrado /etc/hosts
no Linux/MacOS e C:\windows\system32\drivers\etc\hosts
no Windows.
Observe que se você tiver problemas ao usar seu hosts
arquivo no Linux, pode ser necessário editá-lo /etc/nsswitch.conf
e certificar-se de que a files
entrada esteja listada primeiro em hosts:
.
Outras opções
Servidor DNS local
Sem conhecer todos os detalhes sobre o seu roteador, é (teoricamente) possível que você simplesmente configure um servidor DNS local para servir .home
domínios também.
Essencialmente, você precisaria:
Designe um PC para ser seu servidor DNS. Poderia ser qualquer PC na sua rede, mas precisaria estar disponível de forma consistente (deixado ligado continuamente) para resolução de DNS.
Instale o software do servidor DNS nesse PC (por exemploVINCULAR,Dnsmasq, etc.)
Configure o software do servidor DNS para:
- Reconhecer ex.
pc1.home
epc2.home
através, por exemplo, de arquivos de zona individuais, com mapeamentos de endereços IP apropriados (provavelmente a melhor opção).
ou
Resolva todo o
.home
domínio e adicione ex.pc1.home
epc2.home
para esse arquivo de zona com mapeamentos de endereços IP apropriados (provavelmente não é a melhor opção).Envie todas as outras solicitações upstream (por exemplo, para os servidores DNS do seu ISP).
- Reconhecer ex.
Aponte seu roteador para o servidor DNS para resolução de DNS (nas configurações de endereço ex. Servidor de nomes de domínio (DNS) do roteador). Provavelmente, você também precisará encaminhar as portas 53 e 953 para o servidor DNS.
Domínios .locais
Se você não estiver vinculado ao .home
domínio, .local
normalmente é usado paraDNS mDNS (ZeroConf). De acordo comArtigo da Wikipedia sobre DNS multicast (mDNS):
Nas redes de computadores, o protocolo DNS multicast (mDNS) resolve nomes de host em endereços IP em redes pequenas que não incluem um servidor de nomes local. É um serviço de configuração zero, usando essencialmente as mesmas interfaces de programação, formatos de pacotes e semântica operacional que o Sistema de Nomes de Domínio (DNS) unicast.
O mDNS está frequentemente disponível em várias distribuições Linux viaavahi.
Responder3
Para dois computadores, na minha opinião não é necessário um Domínio. Configure o nome do outro computador no arquivo HOSTS local. Faça isso para cada computador. Então você pode endereçar os computadores pelo nome.
O arquivo de hosts locais está aqui: https://www.makeuseof.com/tag/modify-manage-hosts-file-linux/