Compare commits
No commits in common. "82847ba7e6bfe5329890b49b2fd140ba70342898" and "d3aef63feb07d79f6f9a9d5d52b6c96db9b03c9f" have entirely different histories.
82847ba7e6
...
d3aef63feb
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<OutputType>WinExe</OutputType>
|
<OutputType>WinExe</OutputType>
|
||||||
<TargetFramework>net7.0-windows</TargetFramework>
|
<TargetFramework>net6.0-windows</TargetFramework>
|
||||||
<UseWindowsForms>true</UseWindowsForms>
|
<UseWindowsForms>true</UseWindowsForms>
|
||||||
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
|
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
|
||||||
|
|
||||||
|
@ -28,8 +28,5 @@
|
||||||
<Generator>SettingsSingleFileGenerator</Generator>
|
<Generator>SettingsSingleFileGenerator</Generator>
|
||||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||||
</None>
|
</None>
|
||||||
<None Update="Servers.xml">
|
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
||||||
</None>
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
|
@ -21,7 +21,6 @@ namespace EonaCat.DnsTester.Helpers
|
||||||
{
|
{
|
||||||
client.DontFragment = true;
|
client.DontFragment = true;
|
||||||
client.EnableBroadcast = false;
|
client.EnableBroadcast = false;
|
||||||
client.Client.SendTimeout = DnsSendTimeout;
|
|
||||||
client.Client.ReceiveTimeout = DnsReceiveTimeout;
|
client.Client.ReceiveTimeout = DnsReceiveTimeout;
|
||||||
byte[] responseBytes = null;
|
byte[] responseBytes = null;
|
||||||
if (FakeResponse)
|
if (FakeResponse)
|
||||||
|
@ -43,7 +42,6 @@ namespace EonaCat.DnsTester.Helpers
|
||||||
// For testing purposes
|
// For testing purposes
|
||||||
public static bool FakeResponse { get; set; }
|
public static bool FakeResponse { get; set; }
|
||||||
|
|
||||||
public static int DnsSendTimeout { get; set; } = 5;
|
|
||||||
public static int DnsReceiveTimeout { get; set; } = 5;
|
public static int DnsReceiveTimeout { get; set; } = 5;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -39,55 +39,52 @@ namespace EonaCat.DnsTester.Helpers
|
||||||
|
|
||||||
string url = searchEngine.Value + letters;
|
string url = searchEngine.Value + letters;
|
||||||
|
|
||||||
using (var client = new WebClient())
|
try
|
||||||
{
|
{
|
||||||
string responseString = null;
|
using (var client = new WebClient())
|
||||||
try
|
|
||||||
{
|
{
|
||||||
responseString = client.DownloadString(url);
|
string responseString = client.DownloadString(url);
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
searchEngineUrls.Remove(searchEngine.Key);
|
|
||||||
SetStatus($"{searchEngine.Key}: {ex.Message}");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (responseString == null)
|
// find all .xxx.com addresses
|
||||||
{
|
MatchCollection hostNames = Regex.Matches(responseString, @"[.](\w+[.]com)");
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
// find all .xxx.com addresses
|
// Loop through the match collection to retrieve all matches and delete the leading "."
|
||||||
MatchCollection hostNames = Regex.Matches(responseString, @"[.](\w+[.]com)");
|
HashSet<string> uniqueNames = new HashSet<string>();
|
||||||
|
foreach (Match match in hostNames)
|
||||||
// Loop through the match collection to retrieve all matches and delete the leading "."
|
|
||||||
HashSet<string> uniqueNames = new HashSet<string>();
|
|
||||||
foreach (Match match in hostNames)
|
|
||||||
{
|
|
||||||
string name = match.Groups[1].Value;
|
|
||||||
if (name != $"{searchEngine.Key.ToLower()}.com")
|
|
||||||
{
|
{
|
||||||
uniqueNames.Add(name);
|
string name = match.Groups[1].Value;
|
||||||
|
if (name != $"{searchEngine.Key.ToLower()}.com")
|
||||||
|
{
|
||||||
|
uniqueNames.Add(name);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add the names to the list
|
||||||
|
foreach (string name in uniqueNames)
|
||||||
|
{
|
||||||
|
if (urls.Count >= totalUrls)
|
||||||
|
{
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!urls.Contains(name))
|
||||||
|
{
|
||||||
|
urls.Add(name);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add the names to the list
|
await Task.Delay(100);
|
||||||
foreach (string name in uniqueNames)
|
}
|
||||||
{
|
catch (Exception ex)
|
||||||
if (urls.Count >= totalUrls)
|
{
|
||||||
{
|
searchEngineUrls.Remove(searchEngine.Key);
|
||||||
break;
|
SetStatus($"{searchEngine.Key}: {ex.Message}");
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
if (!urls.Contains(name))
|
{
|
||||||
{
|
letters = GetRandomLetters();
|
||||||
urls.Add(name);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
letters = GetRandomLetters();
|
|
||||||
await Task.Delay(100);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var urlText = "url" + (urls.Count > 1 ? "'s" : string.Empty);
|
var urlText = "url" + (urls.Count > 1 ? "'s" : string.Empty);
|
||||||
|
|
|
@ -55,6 +55,12 @@ namespace EonaCat.DnsTester
|
||||||
urls = await UrlHelper.RetrieveUrls(numThreads, numUrlsPerThread);
|
urls = await UrlHelper.RetrieveUrls(numThreads, numUrlsPerThread);
|
||||||
AddUrlToView(urls);
|
AddUrlToView(urls);
|
||||||
|
|
||||||
|
|
||||||
|
if (IsRunning)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
IsRunning = true;
|
IsRunning = true;
|
||||||
await Process(_recordType, urls.ToArray(), _dnsServer1, _dnsServer2);
|
await Process(_recordType, urls.ToArray(), _dnsServer1, _dnsServer2);
|
||||||
IsRunning = false;
|
IsRunning = false;
|
||||||
|
@ -193,10 +199,14 @@ namespace EonaCat.DnsTester
|
||||||
|
|
||||||
for (int i = 0; i < urlsTotal; i++)
|
for (int i = 0; i < urlsTotal; i++)
|
||||||
{
|
{
|
||||||
var currentUrl = urls[i];
|
await Task.Run(async () =>
|
||||||
await ExecuteDns1(recordType, dnsAddress1, currentUrl, dnsId1, i);
|
{
|
||||||
if (!chkDns2.Checked) return;
|
var currentUrl = urls[i];
|
||||||
await ExecuteDns2(recordType, dnsAddress2, currentUrl, dnsId2, i);
|
|
||||||
|
await ExecuteDns1(recordType, dnsAddress1, currentUrl, dnsId1, i);
|
||||||
|
if (!chkDns2.Checked) return;
|
||||||
|
await ExecuteDns2(recordType, dnsAddress2, currentUrl, dnsId2, i);
|
||||||
|
});
|
||||||
await Task.Delay(100);
|
await Task.Delay(100);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,4 @@ EonaCat.DnsTester
|
||||||
|
|
||||||
Dns Testing tool for Blocky
|
Dns Testing tool for Blocky
|
||||||
|
|
||||||
https://blocky.EonaCat.com
|
https://blocky.EonaCat.com
|
||||||
|
|
||||||
[](https://github.com/EonaCat/EonaCat.DnsTester/blob/main/Screenshots/1.png?raw=true "EonaCat DnsTester")
|
|
Binary file not shown.
Before Width: | Height: | Size: 205 KiB |
Loading…
Reference in New Issue