Skip to main content

Installation

DNS-MNS can be installed on Windows, macOS, and Linux. Choose the method that works best for you. The easiest way to use DNS-MNS is to download the pre-built binary. No dependencies required — just download and run.
This is the best option for users in Iran who cannot use curl or wget due to network restrictions. Just get the binary file and run it. No internet connection needed after download.
  1. Go to the Releases page
  2. Download the binary for your system:
PlatformFile
Windows (64-bit)dns-mns-windows-amd64.exe
macOS (Intel)dns-mns-darwin-amd64
macOS (Apple Silicon)dns-mns-darwin-arm64
Linux (x86_64)dns-mns-linux-amd64
Linux (ARM64)dns-mns-linux-arm64
  1. Run it:
chmod +x dns-mns-linux-amd64
./dns-mns-linux-amd64

One-Line Install

Install DNS-MNS with a single command. The installer automatically detects your OS and architecture, then downloads the correct pre-built binary.
curl -sSL https://gitlab.com/E-Gurl/dns-mns/-/raw/main/install.sh | bash
The installer will:
  • Detect your OS (Linux, macOS, Windows) and architecture (x86_64, ARM64)
  • Download the correct pre-built binary (same as the manual download — no dependencies)
  • Install it to ~/.local/bin/dns-mns
  • Add it to your PATH (you may need to restart your terminal)

Manual Installation

If you cannot or do not want to use curl/wget, you can install manually.

Option A: Download ZIP

  1. Go to gitlab.com/E-Gurl/dns-mns
  2. Click the Code button, then click Download ZIP
  3. Extract the ZIP file to a folder on your computer
  4. Open a terminal and navigate to that folder:
cd /path/to/dns-mns
chmod +x dns-mns.sh
./dns-mns.sh

Option B: Clone with Git

git clone https://gitlab.com/E-Gurl/dns-mns.git
cd dns-mns
chmod +x dns-mns.sh
./dns-mns.sh

Building from Source

If you want to build the Go binary yourself:
  1. Install Go (1.21 or newer)
  2. Clone and build:
git clone https://gitlab.com/E-Gurl/dns-mns.git
cd dns-mns
go build -ldflags="-s -w" -o dns-mns ./cmd/dns-mns/
Cross-compile for other platforms:
# Windows
GOOS=windows GOARCH=amd64 go build -ldflags="-s -w" -o dns-mns.exe ./cmd/dns-mns/

# macOS (Apple Silicon)
GOOS=darwin GOARCH=arm64 go build -ldflags="-s -w" -o dns-mns-mac ./cmd/dns-mns/

Platform-Specific Requirements

The pre-built binary has no dependencies. The requirements below apply only to the shell script version.
Most Linux systems have everything needed. If not, install these:Ubuntu/Debian:
sudo apt update
sudo apt install curl ping gawk
Fedora:
sudo dnf install curl iputils gawk
Arch Linux:
sudo pacman -S curl iputils gawk

Updating to a Newer Version

Uninstalling

Binary (installed via download or one-line installer):
rm -f ~/.local/bin/dns-mns
Legacy shell script (if previously installed):
rm -rf ~/.dns-mns
rm -f ~/.local/bin/dns-mns

Verifying Installation

After installation, verify that DNS-MNS is working:
dns-mns
You should see the main menu:
[ MAIN MENU ]

  [1]  Test Gaming DNS
  [2]  Set Custom DNS
  [3]  Clear/Reset DNS
  [4]  Test DoH/DoT DNS
  [5]  Help & About
  [6]  Test DNSCrypt
  [7]  DNSCrypt Proxy
  [8]  DoH/DoT Proxy
  [9]  DNS Censorship Check
  [10] Smart Proxy (Auto-Fallback)
  [0]  Exit

Enter your choice [0-10]:
If you see “Command not found: dns-mns”, try restarting your terminal or run directly: ~/.local/bin/dns-mns