> -----Original Message-----
> From: Thomas Haller [mailto:[email protected]]
> Sent: Thursday, May 31, 2018 3:35 PM
>
> On Thu, 2018-05-31 at 19:02 +0000, Matthew Starr wrote:
> > I am building NetworkManager 1.8.0 using buildroot with SysV init on
> > an ARM embedded device. Buildroot has the /etc/resolv.conf file as a
> > symlink that points to /tmp/resolv.conf. When I use NetworkManager
> > with this resolv.conf symlink configuration, DNS lookups do no work
> > because NetworkManger is not writing to the resolv.conf file or the
> > file pointed to by the symlink.
> >
> > I tried updating the NetworkManager.conf file to include "rc-
> > manager=file" since the man page states that NetworkManager will then
> > follow the symlink and write the contents of the resolv.conf there.
> > Unfortunately this does not work when the destination file the symlink
> > points to does not exist. In this situation the symlink points to a
> > file in /tmp which is a tmpfs file system (RAM based) and wiped clean
> > on each boot to help support a read-only root file system or doing
> > minimal writes to the root file system.
> >
> > Is there a specific reason NetworkManager doesn't create the file the
> > /etc/resolv.conf symlink points to if it doesn't exist? If there
> > isn't a reason, could NetworkManager be updated to create the file
> > pointed to by the /etc/resolv.conf symlink?
>
> Hi,
>
> with "file" mode, NetworkManager should follow the symlink and write the
> file (if it doesn't exist). It wouldn't create the necessary parent
> directories,
> but since you have /tmp/resolv.conf, this shouldn't apply.
>
> Odd, if that doesn't work. Would need some investigation. Does the logfile
> say anything with level=TRACE?
>
> You could also have /etc/resolv.conf as symlink to
> /var/run/NetworkManager/resolv.conf and leave "symlink" setting.
>
>
I actually had that wrong in the original email. What I was seeing where it
wouldn't write the /etc/resolv.conf file was with the "symlink" setting. I see
that this is the expected action when /etc/resolv.conf is a symlink.
The issue I am seeing with the "file" setting is that instead of following the
broken symlink at /etc/resolv.conf and writing the file at where the symlink is
pointing (/tmp/resolv.conf), Network Manager is deleting the symlink and
writing a new /etc/resolv.conf regular file. Wouldn't it make more sense.
Based on what the man page states, I was expecting NetworkManager to follow the
symlink and make a new file there. The man page says "NetworkManager will
write /etc/resolv.conf as file. If it finds a symlink, it will follow the
symlink and update the target instead."
In case it helps, here are some of the dns trace messages when NetworkManager
was updating the DNS:
daemon.debug NetworkManager[311]: <debug> [1527801019.9945] dns-mgr:
update-dns: updating resolv.conf
daemon.debug NetworkManager[311]: <trace> [1527801019.9948] dns-mgr: config:
100 best v4 mlan0 : 208.67.222.222 208.67.222.220 4.2.2.2
daemon.debug NetworkManager[311]: <trace> [1527801020.0115] dns-mgr:
update-resolv-conf: write to /etc/resolv.conf succeeded (rc-manager=file)
daemon.debug NetworkManager[311]: <trace> [1527801020.0126] dns-mgr:
update-resolv-conf: write internal file /etc/resolv.conf succeeded
(rc-manager=file)
daemon.debug NetworkManager[311]: <trace> [1527801020.0135] dns-mgr: current
configuration: [{'nameservers': <['208.67.222.222', '208.67.222.220',
'4.2.2.2']>, 'interface': <'mlan0'>, 'priority': <100>, 'vpn': <false>}]
daemon.debug NetworkManager[311]: <debug> [1527801020.0632] dns-mgr:
(device_ip4_config_changed): queueing DNS updates (1)
Best regards,
Matthew Starr
_______________________________________________
networkmanager-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/networkmanager-list