¿Dónde encontrar servidores de nombres obtenidos de DHCP (a través de NetworkManager)?

¿Dónde encontrar servidores de nombres obtenidos de DHCP (a través de NetworkManager)?

Para aprender, estoy escribiendo mi propio servidor DNS de almacenamiento en caché (al estilo dnsmasq, pero en Python). Desde DHCP, NetworkManager obtiene servidores de nombres ascendentes y los coloca en formato /etc/resolv.conf. Mi sistema también busca /etc/resolv.confservidores de nombres para consultar.

Necesito colocar mi propio servidor DNS ( 127.0.0.1) /etc/resolv.confpara que mi sistema lo consulte, pero NetworkManager sobrescribirá el archivo. Si no permito/configuro NetworkManager para que no sobrescriba /etc/resolv.conf, mi servidor DNS no podrá encontrar servidores de nombres de almacenamiento en caché porque NetworkManager no los escribe allí.

Parece que hay /etc/resolv.confenlaces simbólicos a /var/run/NetworkManager/resolv.conf, así que supongo que podría hacer que mi servidor DNS encuentre servidores ascendentes allí. Solo quisiera chattr -i /etc/resolv.confevitar que NetworkManager lo sobrescriba. ¿Es así como se supone que debo hacerlo o hay una manera mejor?

Respuesta1

chattr funcionará. Le dice a NM que deje resolv.conf en paz. Alternativamente, ver rc-manageren man NetworkManager.conf.

NM siempre escribirá en su resolv.conf interno en var/run, por lo que puedes eliminarlo. O usa nmcli -f all device show, o usa un script de despachador ( man NetworkManager).

Finalmente, podrías escribir tu propio complemento DNS. Pero eso requiere que reconstruyas NM desde la fuente, y la API del complemento tampoco es pública/estable.

información relacionada