Como configurar o DNS ao conectar-se a duas redes?

3

Eu tenho uma máquina linux com duas interfaces de rede. Ambos estão conectados a redes locais - um é 192.168.*.* , o outro é 10.*.*.* .

A rede 192.168.*.* é totalmente privada e não tem acesso à Internet. A rede 10.*.*.* tem acesso à internet.

Atualmente, posso fazer ping externo e os nomes serão resolvidos

ping google.com

No entanto, quando eu tento pingar um nome de máquina na rede 192.168.*.* , o nome não resolve

ping computer-name
ping computer-name.domain
ping computer-name.domain.local

Se eu especificar um endereço IP, ele será resolvido

ping 192.168.x.x

Como posso definir as configurações de DNS para que os nomes de máquina na rede local privada sejam resolvidos, mas ainda posso resolver endereços externos?

Estou usando o Centos6.

    
por Brendan Abel 22.02.2017 / 01:27

2 respostas

3

Em situações como essa, você geralmente precisa configurar um resolvedor de DNS que encaminhará para vários servidores DNS upstream baseados no namespace. Você pode fazer isso com DNSMasq , Ligação e outros servidores DNS.

    
por 22.02.2017 / 01:33
-1

Consegui fazer isso funcionar modificando meu arquivo /etc/resolv.conf

domain privatedomain
search privatedomain publicdomain.com
nameserver 192.168.10.15
nameserver 10.10.1.15

O privatedomain é o nome do domínio de rede local 192.168.*.* . O publicdomain.com é o nome de domínio da rede 10.*.*.* com acesso à Internet.

Agora ele pode resolver todas essas solicitações corretamente

ping computer.privatedomain
ping computer
ping computer2.publicdomain.com
ping google.com

A única desvantagem disso é que quando tento resolver um nome que não pode ser acessado do domínio privado, há um atraso perceptível. Por exemplo:

ping google.com

Eu imagino que seja porque é a primeira tentativa de resolver o nome através do primeiro nameserver no privatedomain , que acabará por expirar, e depois vai para o segundo nameserver que é capaz de resolvê-lo.

    
por 22.02.2017 / 02:28