You are not logged in.

#1 2024-04-14 10:59:48

Lockheed
Member
Registered: 2010-03-16
Posts: 1,521

[solved] DNS ip not assigned from DHCP

My Arch install is nearly 15yo and I don't recall what I did, but my system does not get DNS ip from the router it connects to, it can only use hard-defined IPs in cat /etc/resolvconf.conf which is annoying because I can either hard-code my local PiHole IP in there AND not have the DNS work anywhere outside the house, or I can hard-code a public IP DNS which will never use my Pi Hole IP distributed by DHCP.

# cat /etc/resolv.conf
# Generated by resolvconf
search tail1a75c.ts.net xxxxxx.beta.tailscale.net
nameserver 208.67.222.222
nameserver 100.100.100.100
# cat /etc/resolvconf.conf 
# Configuration for resolvconf(8)
# See resolvconf.conf(5) for details

resolv_conf=/etc/resolv.conf
# If you run a local name server, you should uncomment the below line and
# configure your subscribers configuration files below.
#name_servers=127.0.0.1

# Use the local name server
#name_servers=127.0.0.1
#name_servers="1.1.1.1 208.67.222.222 8.8.8.8"
name_servers=208.67.222.222
#name_servers=192.168.7.1

# Write out dnsmasq extended configuration and resolv files
dnsmasq_conf=/etc/dnsmasq-conf.conf
dnsmasq_resolv=/etc/dnsmasq-resolv.conf

How can I fix it?

Last edited by Lockheed (2024-04-15 06:44:01)

Offline

#2 2024-04-14 11:35:42

-thc
Member
Registered: 2017-03-15
Posts: 510

Re: [solved] DNS ip not assigned from DHCP

That depends on how you manage your network.

find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-45s | %s\n", $(NF-0), $(NF-1)) }' | sort -f

Added after TO's post extension:

Why resolveconf (openresolv or systemd-resolveconf)?
Why dnsmasq?

Last edited by -thc (2024-04-14 13:32:11)

Offline

#3 2024-04-14 15:59:40

Lockheed
Member
Registered: 2010-03-16
Posts: 1,521

Re: [solved] DNS ip not assigned from DHCP

-thc wrote:

That depends on how you manage your network.

Network Manager in KDE.

find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-45s | %s\n", $(NF-0), $(NF-1)) }' | sort -f
acpid.service                                 | multi-user.target.wants
asd-resync.service                            | default.target.wants
autofs.service                                | multi-user.target.wants
avahi-daemon.service                          | multi-user.target.wants
avahi-daemon.socket                           | sockets.target.wants
bluetooth.service                             | bluetooth.target.wants
cpupower.service                              | multi-user.target.wants
cups.path                                     | multi-user.target.wants
cups.socket                                   | sockets.target.wants
dbus-org.bluez.service                        | system
dbus-org.freedesktop.Avahi.service            | system
dbus-org.freedesktop.NetworkManager.service   | system
dbus-org.freedesktop.nm-dispatcher.service    | system
dbus-org.freedesktop.thermald.service         | system
dbus-org.freedesktop.timesync1.service        | system
dbus-uk.org.thekelleys.dnsmasq                | system
dcron.service                                 | multi-user.target.wants
default.target                                | system
display-manager.service                       | system
gcr-ssh-agent.socket                          | sockets.target.wants
haveged.service                               | multi-user.target.wants
intel-undervolt.service                       | hibernate.target.wants
intel-undervolt.service                       | hybrid-sleep.target.wants
intel-undervolt.service                       | multi-user.target.wants
intel-undervolt.service                       | suspend.target.wants
lm_sensors.service                            | multi-user.target.wants
NetworkManager.service                        | multi-user.target.wants
NetworkManager-wait-online.service            | network-online.target.wants
nfs-client.target                             | multi-user.target.wants
nfs-client.target                             | remote-fs.target.wants
nmrestart.service                             | suspend.target.wants
p11-kit-server.socket                         | sockets.target.wants
pipewire-pulse.socket                         | sockets.target.wants
pipewire-session-manager.service              | user
pipewire.socket                               | sockets.target.wants
remote-fs.target                              | multi-user.target.wants
resume_powercheck.service                     | suspend.target.wants_OLD
root-resume.service                           | suspend.target.wants_OLD
rpcbind.socket                                | sockets.target.wants
systemd-swap.service                          | local-fs.target.wants
systemd-timesyncd.service                     | sysinit.target.wants
tailscaled.service                            | multi-user.target.wants
thermald.service                              | multi-user.target.wants
tlp.service                                   | multi-user.target.wants
upower.service                                | graphical.target.wants
wireplumber.service                           | pipewire.service.wants
xdg-user-dirs-update.service                  | default.target.wants
zfs-import-cache.service                      | zfs-mount.service.wants
zfs-import-cache.service                      | zfs.target.wants
zfs-mount.service                             | zfs-share.service.wants
zfs-mount.service                             | zfs.target.wants
zfs.target                                    | multi-user.target.wants
-thc wrote:

Why resolveconf (openresolv or systemd-resolveconf)?
Why dnsmasq?

No idea. It was years ago and I don't need it anymore. I just want to get back to default basic auto-DNS setup.

Offline

#4 2024-04-14 19:52:29

-thc
Member
Registered: 2017-03-15
Posts: 510

Re: [solved] DNS ip not assigned from DHCP

Okie. Make sure that the connection's IPv4 method is not "Automatic (DHCP) addresses only".

Please post the outputs of

pacman -Q | grep resolv
cat /etc/NetworkManager/NetworkManager.conf            # should only contain two comment lines

and - if there are drop-in files in "/etc/NetworkManager/conf.d" - their contents,

Offline

#5 2024-04-14 20:24:40

Lockheed
Member
Registered: 2010-03-16
Posts: 1,521

Re: [solved] DNS ip not assigned from DHCP

It's just "Automatic DHCP"

~> pacman -Q | grep resolv
openresolv 3.13.2-2
python-resolvelib 1.0.1-1
~> cat /etc/NetworkManager/NetworkManager.conf
# Configuration file for NetworkManager.
# See "man 5 NetworkManager.conf" for details.

Offline

#6 2024-04-15 04:25:21

-thc
Member
Registered: 2017-03-15
Posts: 510

Re: [solved] DNS ip not assigned from DHCP

NetworkManager does not automatically use openresolv - there must be drop-in files in "/etc/NetworkManager/conf.d".

Offline

#7 2024-04-15 05:32:25

Lockheed
Member
Registered: 2010-03-16
Posts: 1,521

Re: [solved] DNS ip not assigned from DHCP

Only one:
/etc/NetworkManager/conf.d/wifi_rand_mac.conf

> cat /etc/NetworkManager/conf.d/wifi_rand_mac.conf
[device]
wifi.scan-rand-mac-address=no

Offline

#8 2024-04-15 06:22:52

-thc
Member
Registered: 2017-03-15
Posts: 510

Re: [solved] DNS ip not assigned from DHCP

That's strange - since NetworkManager "doesn't know" about openresolv it should ignore it.

Try this: Remove openresolv (since you are certain you no longer need it).

sudo pacman -Rsn openresolv

and delete (or rename) "/etc/resolv.conf".

sudo rm /etc/resolv.conf

After a restart of NetworkManager (or reboot) "/etc/resolv.conf" should exist again - created by NetworkManager.

sudo systemctl restart NetworkManager.service

Offline

#9 2024-04-15 06:42:13

Lockheed
Member
Registered: 2010-03-16
Posts: 1,521

Re: [solved] DNS ip not assigned from DHCP

Ha! It worked.

~> cat /etc/resolv.conf
# Generated by NetworkManager
search lan
nameserver 192.168.7.4

Thank you!

Last edited by Lockheed (2024-04-15 06:43:39)

Offline

Board footer

Powered by FluxBB