Come forzare MacOS a rigenerare il file /etc/resolv.conf?

3

Apple afferma chiaramente che il file /etc/resolv.conf è gestito da Mac OS, quindi verrà rigenerato. Il problema è che sembra che quando mi unisco a OpenVPN questo non accade e di conseguenza strumenti come nslookup non riescono a vedere il vpn.

#
# Mac OS X Notice
#
# This file is not used by the host name and address resolution
# or the DNS query routing mechanisms used by most processes on
# this Mac OS X system.
#
# This file is automatically generated.
#
domain local
nameserver 192.168.1.1

Ho bisogno di sapere quale comando posso eseguire per forzare MacOS (Sierra) a rigenerare il file.

Come puoi vedere il mio file non contiene l'elenco corretto dei server DNS. Ad esempio, scutil --dns restituisce un lungo elenco di server DNS, uno che include i server DNS di OpenVPN.

    
posta sorin 09.12.2016 - 12:27
fonte

2 risposte

1

Immagino che questo file venga creato / aggiornato quando cambi le impostazioni di rete in "Preferenze di Sistema". Devi "Preferenze di sistema ..." - > Rete - > (selezionare il dispositivo NIC attivo)

Nella finestra di dialogo Rete seleziona: 'Avanzate'. È possibile apportare modifiche per TCP / IP, DNS, WINS, 802.1X, Proxy, Hardware nelle schede di dialogo corrispondenti. Chiudi questa finestra di dialogo con Ok. Ora devi fare clic su "Applica" nella finestra di dialogo Impostazioni di rete per rendere persistente la modifica. (Per me, questa è stata la parte difficile)

Conferma anche la posizione di resolv.conf:

➜  ~ ls -al /etc/resolv.conf 
lrwxr-xr-x  1 root  wheel  22 May  1  2017 /etc/resolv.conf -> ../var/run/resolv.conf

➜  ~ ls -al /var/run/resolv.conf
-rw-r--r--  1 root  daemon  303 Nov 27 09:27 /var/run/resolv.conf

➜  ~ cat /var/run/resolv.conf
#
# Mac OS X Notice
#
# This file is not used by the host name and address resolution
# or the DNS query routing mechanisms used by most processes on
# this Mac OS X system.
#
# This file is automatically generated.
#
search example.com
nameserver 8.8.4.4
nameserver 8.8.8.8

EDIT: nota che '/ etc' è un link simbolico a 'private / etc'

    
risposta data 27.11.2017 - 09:42
fonte
0

Ho trovato una soluzione oggi. In realtà il file non è /etc/resolv.conf in mac OS. È /var/run/resolv.conf

Quindi fai questo:

sudo rm /etc/resolv.conf
sudo ln -s /var/run/resolv.conf /etc/resolv.conf
    
risposta data 28.03.2017 - 17:45
fonte

Leggi altre domande sui tag