From d55b109b1385955bf4018ca11d6982e1d8261aa2 Mon Sep 17 00:00:00 2001 From: BornToBeRoot <16019165+BornToBeRoot@users.noreply.github.com> Date: Tue, 5 Aug 2025 21:21:44 +0200 Subject: [PATCH 1/2] Fix: DNS Lookup - Add MX priority --- .../Network/DNSLookup.cs | 23 +++++++++++-------- Source/NETworkManager.sln.DotSettings | 1 + 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/Source/NETworkManager.Models/Network/DNSLookup.cs b/Source/NETworkManager.Models/Network/DNSLookup.cs index 556a91763b..da84a900d1 100644 --- a/Source/NETworkManager.Models/Network/DNSLookup.cs +++ b/Source/NETworkManager.Models/Network/DNSLookup.cs @@ -2,7 +2,6 @@ using DnsClient.Protocol; using System; using System.Collections.Generic; -using System.Diagnostics; using System.Linq; using System.Net; using System.Net.NetworkInformation; @@ -34,6 +33,7 @@ public DNSLookup(DNSLookupSettings settings, IEnumerable d #endregion #region Variables + /// /// Query types that can be used. /// @@ -137,7 +137,7 @@ public void ResolveAsync(IEnumerable hosts) { Task.Run(() => { - // Append dns suffix to hostname, if option is set, otherwise just copy the list + // Append dns suffix to hostname, if the option is set, otherwise copy the list var queries = _addSuffix && _settings.QueryType != QueryType.PTR ? GetHostWithSuffix(hosts) : hosts; // For each dns server @@ -249,8 +249,10 @@ private void ProcessDnsAnswers(IEnumerable answers, NameServe // CAA foreach (var record in dnsResourceRecords.OfType()) OnRecordReceived(new DNSLookupRecordReceivedArgs( - new DNSLookupRecordInfo(record.DomainName, record.TimeToLive, $"{record.RecordClass}", $"{record.RecordType}", - $"{record.Flags} {record.Tag} {record.Value}", $"{nameServer.Address}", nameServerHostname, nameServer.Port))); + new DNSLookupRecordInfo( + record.DomainName, record.TimeToLive, $"{record.RecordClass}", $"{record.RecordType}", + $"{record.Flags} {record.Tag} {record.Value}", $"{nameServer.Address}", nameServerHostname, + nameServer.Port))); // CNAME foreach (var record in dnsResourceRecords.OfType()) @@ -264,14 +266,16 @@ private void ProcessDnsAnswers(IEnumerable answers, NameServe OnRecordReceived(new DNSLookupRecordReceivedArgs( new DNSLookupRecordInfo( record.DomainName, record.TimeToLive, $"{record.RecordClass}", $"{record.RecordType}", - $"{record.Flags} {record.Protocol} {record.Algorithm} {Convert.ToBase64String(record.PublicKey.ToArray())}", $"{nameServer.Address}", nameServerHostname, nameServer.Port))); + $"{record.Flags} {record.Protocol} {record.Algorithm} {Convert.ToBase64String(record.PublicKey.ToArray())}", + $"{nameServer.Address}", nameServerHostname, nameServer.Port))); // MX foreach (var record in dnsResourceRecords.OfType()) OnRecordReceived(new DNSLookupRecordReceivedArgs( new DNSLookupRecordInfo( record.DomainName, record.TimeToLive, $"{record.RecordClass}", $"{record.RecordType}", - record.Exchange, $"{nameServer.Address}", nameServerHostname, nameServer.Port))); + $"{record.Preference} {record.Exchange}", $"{nameServer.Address}", nameServerHostname, + nameServer.Port))); // NS foreach (var record in dnsResourceRecords.OfType()) @@ -299,7 +303,8 @@ private void ProcessDnsAnswers(IEnumerable answers, NameServe OnRecordReceived(new DNSLookupRecordReceivedArgs( new DNSLookupRecordInfo( record.DomainName, record.TimeToLive, $"{record.RecordClass}", $"{record.RecordType}", - $"{record.Priority} {record.Weight} {record.Port} {record.Target}", $"{nameServer.Address}", nameServerHostname, nameServer.Port))); + $"{record.Priority} {record.Weight} {record.Port} {record.Target}", $"{nameServer.Address}", + nameServerHostname, nameServer.Port))); // TXT foreach (var record in dnsResourceRecords.OfType()) @@ -308,10 +313,8 @@ private void ProcessDnsAnswers(IEnumerable answers, NameServe record.DomainName, record.TimeToLive, $"{record.RecordClass}", $"{record.RecordType}", string.Join(", ", record.Text), $"{nameServer.Address}", nameServerHostname, nameServer.Port))); - - // ToDo: implement more } #endregion -} +} \ No newline at end of file diff --git a/Source/NETworkManager.sln.DotSettings b/Source/NETworkManager.sln.DotSettings index 8b76d71be8..9a822dab10 100644 --- a/Source/NETworkManager.sln.DotSettings +++ b/Source/NETworkManager.sln.DotSettings @@ -51,6 +51,7 @@ True True True + True True True True From fe5be08671da761b121e6314574097f720f410cf Mon Sep 17 00:00:00 2001 From: BornToBeRoot <16019165+BornToBeRoot@users.noreply.github.com> Date: Tue, 5 Aug 2025 21:27:41 +0200 Subject: [PATCH 2/2] Docs: #3118 --- Website/docs/changelog/next-release.md | 1 + 1 file changed, 1 insertion(+) diff --git a/Website/docs/changelog/next-release.md b/Website/docs/changelog/next-release.md index ce58f49c27..fb832fb15c 100644 --- a/Website/docs/changelog/next-release.md +++ b/Website/docs/changelog/next-release.md @@ -57,6 +57,7 @@ Release date: **xx.xx.2025** **DNS Lookup** - Record types that are not implemented are now hidden in the user interface. [#3012](https://github.com/BornToBeRoot/NETworkManager/pull/3012) +- Added priority to MX records. The result is now shown as `10 mail.example.com.` instead of `mail.example.com.`. [#3118](https://github.com/BornToBeRoot/NETworkManager/pull/3118) **PowerShell**