RutgerWillemsIf you're not sure, call me Will
Projects

Proxmox Backup Server hostname resolution failure after reboot

Environment

  • System: Proxmox Backup Server (PBS) installed manually on Debian Trixie (13)
  • Networking: Static LAN (192.168.68.0/24), DNS via Pi-hole or local router
  • Hostname: debianpbs
  • Network interface: enp1s0

1. Initial Symptoms

After a reboot, the system displayed on boot:

hostname 'debianpbs' does not resolve to any non-loopback address

and the PBS web interface was inaccessible.


2. Root Cause #1 — Hostname resolution failure

Technical explanation

Proxmox Backup Server requires that its hostname resolves to a valid non-loopback IP address (i.e., not 127.0.x.x or ::1).
At boot, it runs a check similar to:

getent hosts $(hostname -f)

and ensures the result maps to a routable interface.

In the original configuration:

  • /etc/hostname contained debianpbs
  • /etc/hosts mapped that name only to 127.0.1.1

This caused the hostname to resolve only to the loopback address, triggering the error.

Recognition

If you see this error on a PBS console after boot, and no IP appears in the “Connect to:” line, it means the hostname lookup returns a loopback IP.

You can confirm with:

getent hosts $(hostname)

If the result is 127.0.1.1 debianpbs, the mapping is wrong.

Fix

Edit /etc/hosts to associate the actual LAN IP with the hostname:

127.0.0.1       localhost
::1             localhost ip6-localhost ip6-loopback
192.168.68.50   debianpbs.home.arpa debianpbs

Then ensure /etc/hostname just contains:

debianpbs

After reboot, PBS successfully displayed the LAN IP on boot — confirming hostname resolution was fixed.


3. New Symptom

After fixing /etc/hosts, PBS displayed the correct IP on boot, but:

  • It was not reachable on the LAN
  • The server itself had no internet access
  • ip -4 a showed only 127.0.0.1

This indicated that the network interface never obtained an IP — DHCP or static configuration was not being applied.


4. Root Cause #2 — Network configuration not applied

Technical explanation

Debian 12 (Bookworm) and newer (including 13 Trixie) switched to systemd-networkd as the default network management service.
This means legacy /etc/network/interfaces configurations using ifupdown are ignored unless you explicitly enable the old service.

The user’s /etc/network/interfaces contained:

auto enp1s0
iface enp1s0 inet dhcp

But systemd-networkd was active and ifupdown was not.
As a result, the interface was never brought up at boot, so no IP was assigned.


5. Diagnostic process

We verified the issue step by step:

  1. ip link showed the interface enp1s0 existed.
  2. ip -4 a → only loopback address, confirming no configuration applied.
  3. networkctl status enp1s0State: degraded (configuring) — meaning networkd saw the interface but failed to complete configuration.
  4. Logs (journalctl -u systemd-networkd) revealed:
    Unknown key name 'dchp' in section 'Network', ignoring
    indicating a configuration typo (DCHP instead of DHCP).

This confirmed the .network file was being parsed but ignored due to an invalid key.


6. Corrective actions

We created a proper systemd-networkd configuration file for DHCP operation:

File: /etc/systemd/network/10-enp1s0.network

[Match]
Name=enp1s0

[Network]
DHCP=yes

Then:

sudo systemctl enable systemd-networkd
sudo systemctl restart systemd-networkd

After correction:

  • networkctl status enp1s0State: routable (configured)
  • ip -4 a → IP assigned (e.g., 192.168.68.50)
  • ping 1.1.1.1 and ping google.com both succeeded
  • PBS web interface became reachable at https://192.168.68.50:8007

7. Verification

Final checks:

hostname -f
getent hosts debianpbs
ip -4 a
ip r
ping -c1 1.1.1.1
ping -c1 google.com

Expected output:

  • Hostname resolves to 192.168.68.50
  • Interface enp1s0 has an IP
  • Default route exists (default via 192.168.68.1)
  • External and DNS connectivity confirmed

8. Preventive measures

For Debian 12+ (Bookworm, Trixie)

  • Always use /etc/systemd/network/*.network files to configure networking.
  • Avoid /etc/network/interfaces unless explicitly re-enabling ifupdown.
  • Validate .network files using:
    networkctl status
    networkctl list
  • Use the correct key casing (DHCP=yes), as systemd-networkd is case-sensitive.
  • To debug quickly:
    journalctl -u systemd-networkd
    networkctl status <interface>

For PBS installations

  • Ensure /etc/hosts maps the hostname to the correct LAN IP.
  • Check that hostname -f returns a routable address.
  • Keep systemd-networkd enabled and consistent with PBS’s FQDN.

9. Root Cause Summary

Layer Problem Root Cause Resolution
Hostname PBS error: “does not resolve to non-loopback address” /etc/hosts mapped hostname to 127.0.1.1 only Added LAN IP mapping to /etc/hosts
Networking No LAN/IP connectivity Debian 13 uses systemd-networkd; old /etc/network/interfaces ignored Created proper /etc/systemd/network/10-enp1s0.network
DHCP Interface “degraded (configuring)” Typo in key DCHP instead of DHCP Corrected config and restarted networkd

10. Outcome

  • Hostname now resolves correctly to LAN IP
  • Network interface automatically configured via systemd-networkd
  • Server has full LAN and internet connectivity
  • PBS web UI accessible and operational

Would you like me to format this as a Markdown or PDF file for documentation or knowledge-base storage (e.g., to include in your homelab wiki or internal notes)?