En el archivo de configuración para la interfaz de red local, tenemos que especificar si queremos obtener la dirección del servidor DNS local del servidor DHCP usando la DHCP=
opción :
[Network]
DHCP=yes
o especifique su dirección explícitamente usando la DNS=
opción :
[Network]
DNS=10.0.0.1
Además, necesitamos especificar (en la misma sección) dominios locales usando la Domains=
opción
Domains=domainA.example domainB.example ~example
Especificamos dominios locales domainA.example domainB.example
para obtener el siguiente comportamiento (de systemd-resolve.service, página de manual de systemd-resolve ):
Las búsquedas de un nombre de host que termina en uno de los dominios por interfaz se enrutan exclusivamente a las interfaces coincidentes.
De esta manera hostX.domainA.example
será resuelto exclusivamente por nuestro servidor DNS local.
Especificamos ~example
que todos los dominios que terminan en example
deben ser tratados como dominios de solo ruta para obtener el siguiente comportamiento (de la descripción de este commit):
Los servidores DNS que tienen dominios de solo ruta solo deben usarse para los dominios especificados.
De esta manera hostY.on.the.internet
, nuestro servidor DNS remoto global lo resolverá exclusivamente .
Nota
Idealmente, cuando se usa el protocolo DHCP, los nombres de dominio locales deben obtenerse del servidor DHCP en lugar de especificarse explícitamente en el archivo de configuración de la interfaz de red anterior. Ver UseDomains=
opción . Sin embargo, todavía hay problemas pendientes con esta función: consulte el problema de la opción de dominios de búsqueda DHCP systemd-networkd .
Necesitamos especificar el servidor DNS remoto como nuestro servidor DNS global de todo el sistema. Podemos hacer esto en el /etc/systemd/resolved.conf
archivo:
[Resolve]
DNS=8.8.8.8 8.8.4.4 2001:4860:4860::8888 2001:4860:4860::8844
No olvide volver a cargar la configuración y reiniciar los servicios:
$ sudo systemctl daemon-reload
$ sudo systemctl restart systemd-networkd
$ sudo systemctl restart systemd-resolved
¡Precaución!
Las garantías anteriores se aplican solo cuando systemd- resolve resuelve los nombres ; consulte la página de manual para nss-resolve, libnss_resolve.so.2 y la página de manual para systemd- resolve.service , systemd-resolve .
Ver también:
Referencias
.local
en este ejemplo? Ciertamente, con avahi, se suponía que esto estaba reservado para MDNS y su mal uso era un gran no-no. Sería más claro para mí usarexample.com
o .ejemplo .