From 0856ffd7d8adac9dbbfe2a3a70f8c0469c0da4e1 Mon Sep 17 00:00:00 2001 From: DHR60 <192860629+DHR60@users.noreply.github.com> Date: Mon, 2 Nov 2026 01:27:59 +0000 Subject: [PATCH] Try fix dns (#10485) --- v2rayN/ServiceLib/Models/CoreConfigs/V2rayConfig.cs | 1 + .../Services/CoreConfig/V2ray/V2rayDnsService.cs | 9 ++++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/v2rayN/ServiceLib/Models/CoreConfigs/V2rayConfig.cs b/v2rayN/ServiceLib/Models/CoreConfigs/V2rayConfig.cs index 6a8411c4..e4299ec6 100644 --- a/v2rayN/ServiceLib/Models/CoreConfigs/V2rayConfig.cs +++ b/v2rayN/ServiceLib/Models/CoreConfigs/V2rayConfig.cs @@ -214,6 +214,7 @@ public class DnsServer4Ray public List? domains { get; set; } public bool? skipFallback { get; set; } public List? expectedIPs { get; set; } + public bool? finalQuery { get; set; } public string? tag { get; set; } } diff --git a/v2rayN/ServiceLib/Services/CoreConfig/V2ray/V2rayDnsService.cs b/v2rayN/ServiceLib/Services/CoreConfig/V2ray/V2rayDnsService.cs index 830096bc..836d75f0 100644 --- a/v2rayN/ServiceLib/Services/CoreConfig/V2ray/V2rayDnsService.cs +++ b/v2rayN/ServiceLib/Services/CoreConfig/V2ray/V2rayDnsService.cs @@ -374,13 +374,20 @@ public partial class CoreConfigV2rayService { return; } - foreach (var dnsAddress in dnsAddresses) + //foreach (var dnsAddress in dnsAddresses) + for (var i = 0; i < dnsAddresses.Count; i++) { + var dnsAddress = dnsAddresses[i]; var dnsServer = CreateDnsServer(dnsAddress, domains, expectedIPs); if (isDirectDns) { dnsServer.tag = $"{Global.DirectDnsTag}-{directDnsTagIndex++}"; } + if (expectedIPs is not null + && i == expectedIPs.Count - 1) + { + dnsServer.finalQuery = true; + } var dnsServerNode = JsonUtils.SerializeToNode(dnsServer); dnsItem.servers.Add(dnsServerNode); }