Nel file di configurazione per l'interfaccia di rete locale dobbiamo specificare che vogliamo ottenere l'indirizzo del server DNS locale dal server DHCP usando l' DHCP=
opzione :
[Network]
DHCP=yes
o specifica esplicitamente il suo indirizzo usando l' DNS=
opzione :
[Network]
DNS=10.0.0.1
Inoltre, dobbiamo specificare (nella stessa sezione) domini locali utilizzando l' Domains=
opzione
Domains=domainA.example domainB.example ~example
Specifichiamo i domini locali domainA.example domainB.example
per ottenere il seguente comportamento (da systemd-resolved.service, pagina man risolta da systemd ):
Le ricerche per un nome host che termina in uno dei domini per interfaccia vengono indirizzate esclusivamente alle interfacce corrispondenti.
In questo modo hostX.domainA.example
verrà risolto esclusivamente dal nostro server DNS locale.
Specifichiamo ~example
che tutti i domini che terminano example
devono essere trattati come domini di sola route per ottenere il seguente comportamento (dalla descrizione di questo commit):
I server DNS che dispongono di domini di sola route devono essere utilizzati solo per i domini specificati.
In questo modo hostY.on.the.internet
verrà risolto esclusivamente dal nostro server DNS remoto globale.
Nota
Idealmente, quando si utilizza il protocollo DHCP, i nomi di dominio locali dovrebbero essere ottenuti dal server DHCP anziché essere specificati esplicitamente nel file di configurazione dell'interfaccia di rete sopra. Vedere UseDomains=
l'opzione . Tuttavia, ci sono ancora problemi in sospeso con questa funzione: vedere il problema relativo all'opzione Domini di ricerca DHCP di systemd-networkd .
Dobbiamo specificare il server DNS remoto come nostro server DNS globale a livello di sistema. Possiamo farlo nel /etc/systemd/resolved.conf
file:
[Resolve]
DNS=8.8.8.8 8.8.4.4 2001:4860:4860::8888 2001:4860:4860::8844
Non dimenticare di ricaricare la configurazione e riavviare i servizi:
$ sudo systemctl daemon-reload
$ sudo systemctl restart systemd-networkd
$ sudo systemctl restart systemd-resolved
Attenzione!
Le garanzie di cui sopra si applicano solo quando i nomi vengono risolti da systemd-resolved - vedere la pagina man per nss-resolve, libnss_resolve.so.2 e la pagina man per systemd-resolved.service, systemd-resolved .
Guarda anche:
Riferimenti:
.local
in questo esempio? Certamente con avahi, questo doveva essere riservato a MDNS e l'uso improprio era un grande no-no. Per me sarebbe più chiaro usareexample.com
o .example .