Installation Guide

Get NexoralDNS up and running in minutes with our automated installation script.

Quick Installation

The easiest way to install NexoralDNS is using our one-command installer:

curl -fsSL https://raw.githubusercontent.com/nexoral/NexoralDNS/main/Scripts/install.sh | bash -

✅ What the installer does:

  • Automatically installs Docker and Docker Compose if not present
  • Downloads the latest NexoralDNS images
  • Configures system DNS settings
  • Starts all NexoralDNS services
  • Sets up the web dashboard on port 4000

System Requirements

ComponentRequirement
Operating SystemLinux Debian/Ubuntu (Recommended)
MemoryMinimum 1GB RAM (2GB+ recommended)
StorageMinimum 4GB free space
NetworkLAN connectivity (NOT cloud/public internet)
PrivilegesAdministrator/root access for installation
Ports53 (DNS), 4000 (Web Dashboard)

Manual Installation

If you prefer manual installation or want to contribute to development:

Step 1: Clone the Repository

git clone https://github.com/nexoral/NexoralDNS.git\ncd NexoralDNS

Step 2: Start with Docker Compose

cd Scripts\nsudo docker compose up -d

Step 3: Verify Installation

sudo docker compose ps

You should see all services running with status "Up".

Post-Installation Setup

1. Access the Web Interface

Open your browser and navigate to:

http://localhost:4000

2. Initial Login

Use the default credentials:

  • Username: admin
  • Password: admin

âš ī¸ Security Warning:

Change the default password immediately after first login! Go to Settings → Change Password.

3. Activate the Service

Enter your activation key from the cloud platform. If you don't have one, the free tier will be activated automatically.

4. Configure Your Router

To use NexoralDNS for your entire network:

  1. Find your machine's local IP address (e.g., 192.168.1.100)
  2. Access your router's admin panel
  3. Navigate to DNS settings (usually under LAN or DHCP settings)
  4. Set Primary DNS to your machine's IP address
  5. Save and restart your router

5. Reserve a Static IP

In your router settings, reserve the IP address for your NexoralDNS machine to prevent DNS interruption if the IP changes.

Service Management Commands

Start Services

curl -fsSL https://raw.githubusercontent.com/nexoral/NexoralDNS/main/Scripts/install.sh | bash -s start

Stop Services

curl -fsSL https://raw.githubusercontent.com/nexoral/NexoralDNS/main/Scripts/install.sh | bash -s stop

Update Services

curl -fsSL https://raw.githubusercontent.com/nexoral/NexoralDNS/main/Scripts/install.sh | bash -s update

Complete Removal

curl -fsSL https://raw.githubusercontent.com/nexoral/NexoralDNS/main/Scripts/install.sh | bash -s remove

đŸ—‘ī¸ Warning:

The remove command will completely delete all configurations, services, and data. This action is irreversible!

Verification

Test DNS Resolution

From any device on your network, test DNS resolution:

# On Linux/Mac\ndig @192.168.1.100 google.com\n\n# On Windows\nnslookup google.com 192.168.1.100

Check Service Status

sudo docker compose ps

View Logs

# All services\nsudo docker compose logs -f\n\n# Specific service\nsudo docker compose logs -f dns-server

Next Steps

Getting Help

If you encounter any issues during installation:

  • Check the Troubleshooting Guide
  • Open an issue on GitHub
  • Review existing issues for similar problems
  • Premium users: Contact support for priority assistance