Secure, Modern, Fully-Featured, All-In-One Cross-Architecture & Cross-Platform DNS Server Using .NET 7.0
This is the Alpha 4 Release for Terminal Edition of SecureDNS Server.
This is considered a Milestone release as it includes new rewritten components.
(Optional)
sudo apt install libsodium-dev
AppSettings.json
File As Per Wiki Page.Check Daemonization Under Linux Wiki Page.
Check Runtime Identifiers Wiki Page.
AppSettings.json
File Location To C:\ProgramData\<Username>\SecureDNS - Terminal Edition
.Check Operating Systems Wiki Page.
Check Processor Architecture Wiki Page.
Check Seq Queries Wiki Page.
Check https://github.com/Texnomic/SecureDNS/compare/v0.3-alpha...v0.4-alpha
This is the Alpha 3 Release for Terminal Edition of SecureDNS Server.
This is considered a Milestone release as it includes new infrastructure libraries.
(Optional)
sudo apt install libsodium-dev
AppSettings.json
File As Per Wiki Page.Check Daemonization Under Linux Wiki Page.
Check Runtime Identifiers Wiki Page.
DNSCrypt v2.0
Standard-Compliant Public Resolvers.Ethereum Name Service
Middleware.Check Operating Systems Wiki Page.
Check Processor Architecture Wiki Page.
Check Seq Queries Wiki Page.
This is the Alpha 2 Release for Terminal Edition of SecureDNS Server.
This is considered a Milestone release as it includes many of the Core Features that were promised on Cairo Security Camp 2019 Session.
AppSettings.json
File As Per Wiki Page.DoT
&/or DoH
Standard-Compliant Public Resolver.Host-Table
aka Hosts-File
Middleware.Composable
Middlewares Pipeline.Terminal CLI
, Terminal GUI
, Windows Service
& Linux Daemon
.Check Operating Systems Wiki Page.
Check Processor Architecture Wiki Page.
Check Seq Queries Wiki Page.
This is the Terminal Edition of SecureDNS Server for interested early adopters.
Install Datalust's Seq
# Note: Elevated PowerShell Core
# Option 1: MSI Setup
curl "https://getseq.blob.core.windows.net/releases/Seq-5.1.3200.msi" --output .
.\Seq-5.1.3200.msi /quiet
Invoke-Item "$Env:Programfiles\Seq\Admin\Seq.Administration.exe"
# Option 2: Docker
docker run -e ACCEPT_EULA=Y -p 5341:80 datalust/seq:latest
Download & Execute Binary.
# Note: Elevated PowerShell Core
# Option 1: Terminal GUI
.\Texnomic.SecureDNS.CLI-[OS]-[Arch]
# Option 2: Terminal CLI
.\Texnomic.SecureDNS.CLI-[OS]-[Arch] -binding "0.0.0.0:53" -seq "http://127.0.0.1:5341"
Update DNS Server(s).
# Note: Elevated PowerShell Core
# Setting DNS Servers
Get-NetAdapter -Physical | ForEach-Object { Set-DnsClientServerAddress $_.Name -ServerAddresses ("127.0.0.1") }
# Resetting DNS Servers
Get-NetAdapter -Physical | ForEach-Object { Set-DnsClientServerAddress $_.Name -ResetServerAddresses }
Example 1: A Records
select Coalesce(Answer.Answers[0].Name, Query.Questions[0].Name) as Domain, Coalesce(Answer.Answers[0].Type, Query.Questions[0].Type) as Type, Answer.Answers[0].Record.Address.IP as IP, RemoteEndPoint from stream where StartsWith(@Message, 'Resolved') and Type = 'A'
Example 2: CNAME Records
select Coalesce(Answer.Answers[0].Name, Query.Questions[0].Name) as Domain, Coalesce(Answer.Answers[0].Type, Query.Questions[0].Type) as Type, Answer.Answers[0].Record.Domain.Name as CNAME, RemoteEndPoint from stream where StartsWith(@Message, 'Resolved') and Type = 'CNAME'
On Windows:
# Elevated PowerShell Core
Set-Service -Name 'Internet Connection Sharing (ICS)' -StartupType Disabled
Stop-Service -DisplayName 'Internet Connection Sharing (ICS)'
# Elevated Command Prompt
sc config "SharedAccess" start=disabled
sc stop "SharedAccess"
On Linux: