# Linux client doesn't apply internal DNS after VPN connection (EOS, arch-based)

**URL:** <https://forum.pritunl.com/t/linux-client-doesnt-apply-internal-dns-after-vpn-connection-eos-arch-based/3414>\
**Category:** Pritunl VPN\
**Tags:** pritunl-client\
**Created:** [July 10, 2025, 10:41am UTC](https://forum.pritunl.com/t/linux-client-doesnt-apply-internal-dns-after-vpn-connection-eos-arch-based/3414 "2025-07-10T10:41:14Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![wavewithme](https://forum.pritunl.com/user_avatar/forum.pritunl.com/wavewithme/32/1299_2.png) [@wavewithme](https://forum.pritunl.com/u/wavewithme)\
**Post date:** [July 10, 2025, 10:41am UTC](https://forum.pritunl.com/t/linux-client-doesnt-apply-internal-dns-after-vpn-connection-eos-arch-based/3414/1 "2025-07-10T10:41:14Z")

</div>

**System information:**

- **OS:** EndeavourOS (Arch-based, fully updated)
- **Laptop:** Honor Magicbook X16 Pro (Ryzen 7 7840HS, 16GB RAM)
- **Pritunl Client version:** 1.3.4275.94-1 (`pritunl/pritunl-client-electron` from pritunl)

* * *

**Issue:**

I am using Pritunl VPN client on a Linux laptop (EndeavourOS with systemd-resolved enabled). The VPN connects successfully, and the VPN DNS server (e.g., 192.168.0.10) is reachable by ping and responds correctly to DNS queries when tested via `dig`.

However, after connection, DNS resolution for internal VPN hostnames does not work properly — I get temporary failure in name resolution. It seems systemd-resolved does not route DNS queries through the VPN DNS server as expected.

I have checked the current DNS configuration using `resolvectl status`:

```auto
- `wlan0` interface DNS: 192.168.0.1 (local router)
- `tun0` interface DNS: 192.168.0.10 (VPN DNS server)
- Both interfaces have `Default Route: yes`

```

I suspect the conflict between multiple default routes and systemd-resolved handling of DNS is causing the problem.

Could you please advise on the best practice to configure systemd-resolved to correctly use the Pritunl VPN DNS server? Is there a recommended way to configure split-DNS or force DNS queries over VPN interface without disrupting other connectivity?

Thank you in advance for your help!

```auto
[wavewithme@magicbook ~]$ resolvectl status tun0
Link 4 (tun0)
    Current Scopes: DNS LLMNR/IPv4 LLMNR/IPv6 mDNS/IPv4 mDNS/IPv6
         Protocols: +DefaultRoute +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported
Current DNS Server: 192.168.0.10
       DNS Servers: 192.168.0.10
     Default Route: yes
[wavewithme@magicbook ~]$

```

---

<div class="post-metadata">

**Author:** ![zach](https://forum.pritunl.com/user_avatar/forum.pritunl.com/zach/32/1105_2.png) [@zach](https://forum.pritunl.com/u/zach)\
**Post date:** [July 11, 2025, 10:20am UTC](https://forum.pritunl.com/t/linux-client-doesnt-apply-internal-dns-after-vpn-connection-eos-arch-based/3414/2 "2025-07-11T10:20:16Z")

</div>

Not all of the DNS handlers on Linux are supported. You would need to manually set the DNS server or use the NetworkManager OpenVPN client if supported. Some connection modes will only work with the Pritunl Client.

---

<div class="post-metadata">

**Author:** ![wavewithme](https://forum.pritunl.com/user_avatar/forum.pritunl.com/wavewithme/32/1299_2.png) [@wavewithme](https://forum.pritunl.com/u/wavewithme)\
**Post date:** [July 11, 2025, 10:28am UTC](https://forum.pritunl.com/t/linux-client-doesnt-apply-internal-dns-after-vpn-connection-eos-arch-based/3414/3 "2025-07-11T10:28:43Z")

</div>

> [@zach](#):
>
> Not all of the DNS handlers on Linux are supported. You would need to manually set the DNS server or use the NetworkManager OpenVPN client if supported. Some connection modes will only work with the Pritunl Client.

Thanks for your reply.  
Can you please show and suggest basic things that need to be done to manually configure the DNS server?

---

<div class="post-metadata">

**Author:** ![zach](https://forum.pritunl.com/user_avatar/forum.pritunl.com/zach/32/1105_2.png) [@zach](https://forum.pritunl.com/u/zach)\
**Post date:** [July 12, 2025, 7:18am UTC](https://forum.pritunl.com/t/linux-client-doesnt-apply-internal-dns-after-vpn-connection-eos-arch-based/3414/4 "2025-07-12T07:18:43Z")

</div>

With resolvectl `sudo resolvectl dns eth0 192.168.0.10` and NetworkManger `nmcli connection modify "connection-name" ipv4.dns "192.168.0.10" ipv4.ignore-auto-dns yes`.

---

<div class="post-metadata">

**Author:** ![wavewithme](https://forum.pritunl.com/user_avatar/forum.pritunl.com/wavewithme/32/1299_2.png) [@wavewithme](https://forum.pritunl.com/u/wavewithme)\
**Post date:** [July 31, 2025, 12:44pm UTC](https://forum.pritunl.com/t/linux-client-doesnt-apply-internal-dns-after-vpn-connection-eos-arch-based/3414/5 "2025-07-31T12:44:10Z")

</div>

Thanks, a slightly mixed solution helped:

`sudo resolvectl domain tun0 ‘~YOURHOSTNAME’`

where **tun0** is the VPN interface from Pritunl.

I also use an automatic script, it runs when I connect to a VPN in Pritunl (tun0)

```bash
#!/bin/bash

IFACE="$1"
STATUS="$2"

# degub
# echo "$(date): Interface $IFACE changed to $STATUS" >> /tmp/nm-dispatcher.log

if [["$IFACE" == tun0]] && ["$STATUS" = "up"]; then
    /usr/bin/resolvectl domain "$IFACE" '~YOURHOSTNAME'
fi

```
