1 votos

¿Cómo puedo crear un DNS local que se ve desde otros ordenadores de mi red local?

Estoy tratando de crear un DNS local en mi equipo para que yo pueda acceder de forma local con una dirección de DNS en lugar de una dirección IP. La primera cosa que hice fue configurar el nombre de host en los archivos /etc/hosts y /etc/init.d/hostname.sh.

$ sudo vi /etc/hosts

127.0.0.1   localhost
127.0.1.1   mynewhostname 

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

$ sudo vi /etc/hostname

mynewhostname

Luego he instalado el avahi-daemon como servidor DNS:

sudo apt-get install avahi-daemon

Después de reiniciar el sistema me puede acceder al DNS local mynewhostname.local sólo de localhost (sólo desde mi propio ordenador), otros equipos de la red local sólo puede acceder a mi ordenador con la dirección IP y no con el DNS. ¿Alguien sabe por qué pasa eso? O lo que sería un enfoque diferente para crear un DNS local que ha visto de todo en mi red local?

2voto

ptetteh227 Puntos 178

el .local de dominio es utilizado por avahi por sus servicios especiales y no he sido capaz de conseguir otros equipos a utilizar a lo largo de la red, excepto cuando el uso de mDNS aplicaciones.

Puede ejecutar un servidor de dns apropiado como dnsmasq para lograr dns de resolución de nombres de host a direcciones ip a través de una red pequeña, además el archivo /etc/hosts.

Para configurar dnsmasq como su dominio de resolución de elegir otro dominio en lugar de .local. por ejemplo, digamos .casa o .casa o cualquier otra cosa que .local. Este dominio sólo funciona en la red.

instalar dnsmasq en la central "servidor". En este caso el equipo:

sudo apt install dnsmasq

A continuación, configuración de dnsmasq:

sudo nano /etc/dnsmasq.conf

crear un archivo estático:

sudo rm /etc/resolv.conf
echo 'nameserver 127.0.0.1' | sudo tee /etc/resolv.conf

dejar de todas las instancias de los servicios:

sudo killall dnsmasq
sudo service systemd-resolved stop

editar el archivo de conf:

sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.bak
sudo nano /etc/dnsmasq.conf

y agregue el siguiente

#Beginning of configuration
domain-needed
bogus-priv
no-resolv
interface=wlp2s0
#Use below nameservers to reach the internet
server=8.8.8.8
server=8.8.4.4
#use below line to point to the router address.
#dhcp-option=option:router,192.168.0.50
#use two lines below to resolve local domains (eg .home)
local=/home/
domain=home

a continuación, reinicie dnsmasq:

sudo service dnsmasq restart

si usted tiene un firewall recuerde abrir los puertos 53, 67/udp, 68/udp, en el firewall

a continuación, edite el archivo hosts:

sudo nano /etc/hosts

y pegar en ella

. . .
127.0.0.1       localhost localhost.home
. . . 
127.0.0.1 www.mysite1.home
127.0.0.1 mysite1.home
192.168.0.50 mysite1.home
192.168.0.50 mysite2.home

donde 192.168.0.50 es el de los servidores ip de los ordenadores en la red y mysite.en casa son servicios que se escucha en el equipo servidor*

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: