From 16d951eed12556643f1382b0a67315a219382608 Mon Sep 17 00:00:00 2001 From: Nova Date: Sun, 19 Oct 2025 01:09:23 +0330 Subject: [PATCH] Override local to dhcp for macOS Tun mode --- src/configs/ConfigBuilder.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/configs/ConfigBuilder.cpp b/src/configs/ConfigBuilder.cpp index 0939188..d0385c6 100644 --- a/src/configs/ConfigBuilder.cpp +++ b/src/configs/ConfigBuilder.cpp @@ -423,8 +423,12 @@ namespace Configs { QJsonObject BuildDnsObject(QString address, bool tunEnabled) { bool usingSystemdResolved = false; + bool isDarwin = false; #ifdef Q_OS_LINUX usingSystemdResolved = ReadFileText("/etc/resolv.conf").contains("systemd-resolved"); +#endif +#ifdef Q_OS_MACOS + isDarwin = true; #endif if (address.startsWith("local")) { @@ -434,6 +438,13 @@ namespace Configs { {"type", "underlying"} }; } + if (tunEnabled && isDarwin) + { + MW_show_log(R"(DNS has been overriden to dhcp, if it does not work, please change both "Routing settings->Direct DNS" and "basic settings->Core->Core options->underlying dns" to something other than local)"); + return { + {"type", "dhcp"} + }; + } return { {"type", "local"} };