Affected versions: CentOS Stream 9

📖 ~1 min read

Table of contents
  1. Symptom & Impact
  2. Environment & Reproduction
  3. Root Cause Analysis
  4. Quick Triage
  5. Step-by-Step Diagnosis
  6. Solution – Primary Fix
  7. Solution – Alternative Approaches
  8. Verification & Acceptance Criteria
  9. Rollback Plan
  10. Prevention & Hardening
  11. Related Errors & Cross-Refs
  12. References & Further Reading

Symptom & Impact

systemd-resolved breaks split-DNS lookups on CentOS Stream 9 disrupts services and slows incident response until the root cause is resolved.

Environment & Reproduction

Internal hostnames fail to resolve when systemd-resolved is enabled alongside NetworkManager.

resolvectl status
cat /etc/resolv.conf
systemctl status systemd-resolved

Root Cause Analysis

Misalignment between network configuration and CentOS Stream 9 defaults causes the failure path described above.

Quick Triage

Confirm package state, service status, and recent changes before deeper diagnostics.

systemctl status
rpm -qa | grep -i 
journalctl -p err -b --no-pager | tail -100

Step-by-Step Diagnosis

Capture detailed logs, configuration deltas, and runtime state to isolate the failing component.

resolvectl query intranet.example
journalctl -u systemd-resolved -n 200
ss -lntp | grep 53
Illustrative mockup for centos-stream-9 — network_dns_systemd_resolved_diagnostics
Diagnostics for network/dns-systemd-resolved on CentOS Stream 9 — Illustrative mockup — Progressive Robot

Solution – Primary Fix

Apply the targeted configuration change and restart the relevant services to restore expected behavior.

Still having issues? Our IT Solutions & Services team can diagnose and resolve this for you. Get in touch for a free consultation.

sudo resolvectl domain  '~internal.example'
sudo resolvectl dns  10.0.0.53 10.0.0.54
sudo systemctl restart systemd-resolved
Illustrative mockup for centos-stream-9 — network_dns_systemd_resolved_fix_results
Fix verification for network/dns-systemd-resolved on CentOS Stream 9 — Illustrative mockup — Progressive Robot

Solution – Alternative Approaches

Disable systemd-resolved if all DNS goes via corporate resolvers.

Verification & Acceptance Criteria

Validate the fix with deterministic checks and ensure no regressions in dependent services.

resolvectl query db.internal
dig db.internal

Rollback Plan

Revert configuration and restart services to return to the previous known-good state.

systemctl disable --now systemd-resolved
ln -sf /run/NetworkManager/resolv.conf /etc/resolv.conf

Prevention & Hardening

Document split-DNS topology and bake into NetworkManager profiles.

Related: resolvectl, split-DNS, stub resolver; see also adjacent topics in the CentOS Stream 9 common problems series.

Related tutorial: View the step-by-step tutorial for centos-stream-9.

View all centos-stream-9 tutorials on the Tutorials Hub →

Browse all common problems & solutions on the Tutorials Hub.

References & Further Reading

CentOS Stream documentation, Red Hat upstream guides, and CentOS Stream 9 release notes covering this subsystem.

Need Expert Help?

If you cannot resolve this yourself, our team offers hands-on Server Management, Managed IT Services, and flexible Support Plans. Contact us today — we respond within one business day.