Qual è il "modo giusto" per effettuare le modifiche in /etc/resolv.conf con /etc/resolv.conf.d in atto?


11

I vecchi tempi, resolv.confero statico e l'hai modificato tu stesso.

In seguito, il client DHCP lo avrebbe riscritto, utilizzando alcune voci statiche e ciò che ha ottenuto dal contratto di locazione DHCP.

In questi giorni, alcune distribuzioni - come la mia (Linux Mint 18.1) hanno un /etc/resolv.conf.dmeccanismo con diverse sottodirectory di script e, beh, non riesco a capirlo.

Qual è la strada giusta, quindi,

  • indicare che desidero utilizzare o non utilizzare i server DNS ottenuti nel contratto di locazione DHCP?
  • aggiungere voci fisse a resolv.conf, sempre o come fallback quando non esiste un nameserver ottenuto da lease DHCP?
  • prendere decisioni sull'ordine relativo nel file?

Non mi dispiace scrivere alcuni dei miei script se ho, non voglio solo "lavorare contro" il meccanismo esistente o fare un lavoro duplicato.


4
Disinstallo resolvconfnei server ... unix.stackexchange.com/questions/286195/…
Rui F Ribeiro

È inoltre possibile configurare dhclientper ignorare / sostituire le informazioni DNS DHCP; Non sono sicuro che ci sia un meccanismo /etc/resolv.conf.dper farlo (ma non uso Mint e non ho quegli script).
Dirkt

@dirkt: In realtà, al momento, l'unica voce che va nel mio /etc/resolv.confè localhost (che esegue dnsmasq), quindi non mi è chiaro come interagiscono dnsmasq, il meccanismo resolv.conf.d e il client DHCP.
einpoklum,

Risposte:


2

La risposta è semplice: la resolv.conf.dcartella esiste in / etc / resolvconf / e contiene i file head / base / original e tail. ognuno di essi, se modificato, aggiornerà il resolv.conffile in / etc /

supponiamo che tu voglia inserire un indirizzo DNS statico all'inizio di resolv.confin / etc / (perché ad ogni riavvio si ripristina automaticamente alle sue impostazioni predefinite) devi modificare il headfile in /etc/resolvconf/resolvconf.d/ e digitare per esempio:

nameserver 1.1.1.1
nameserver 1.0.0.1

successivamente riavviare il servizio resolvconf usando:

sudo service resolvconf restart

ora cat resolv.confin / etc / e vedrai le nuove modifiche.

la stessa cosa vale se vuoi mettere cose in fondo al file, usi tailinvece che headin /etc/resolvconf/resolvconf.d/

PS: questo è testato al 100% e funziona con Ubuntu e Debian

Modifica: ho già risposto alle ultime due pallottole della tua domanda, ora relative al primo proiettile che parla di come non utilizzare l'indirizzo DNS fornito da DHCP. Dipende molto dal software / pacchetto DNS che hai installato, quindi ti consiglio di controllare questo Post e assicurarti di leggere anche quello sotto di esso, nel caso tu lo abbia dnsmasq.


1
+1, ma questo spiega solo come fare parte di ciò che ho chiesto.
einpoklum,

0

resol.conf e alcuni meccanismi come questi esistono dagli anni passati fino ad ora. C'è da riga di comando dhclient, resolvconfche gestiscono questo file, tuttavia in anni recenti di Linux introduce nuova interfaccia per la configurazione di NetworkManager con il nome di nmcli . Questo è un comando avanzato per gestire tutte le configurazioni di rete persistenti (non il tempo di esecuzione). puoi usare qualcosa come:

$ nmcli connection modify eth0 ipv4.dns 8.8.8.8

Questo comando sarà sovrascrivere il resolv.conffile. In RHCA si consiglia di non modificare resolv.conf manualmente e di utilizzare i suoi comandi. A proposito della directory resolvconf che hai menzionato, posso dire che ci possono essere alcuni servizi con una propria configurazione per DNS, quindi la usano come propria configurazione come OpenVpn. È possibile controllare il /etc/nsswitchfile anche per ottenere ulteriori informazioni sulla risoluzione.


Non credo che questo risponda effettivamente alla mia domanda.
einpoklum,

Beh, forse questa è la mia mancanza capita sulla tua domanda, ma il nsswitchfile è una tua risposta.
Ali Ghasempour,

Credo che @einpoklum voglia avere il controllo sull'ordine dei server DNS in resolv.conf(vedi man resolv.conf), non sull'ordine dei mezzi usati per risolvere ( man nsswitch.conf). Ma la tua risposta è comunque interessante.
Xhienne,

Grazie per il vostro interesse . Per quanto ne so resolv.conf è un file sequenziale e la sua priorità di risoluzione va dall'alto verso il basso.
Ali Ghasempour,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.