Troubleshooting
This page covers common issues and their solutions.
Installation Issues
”Command not found: dns-mns”
The command was not added to your PATH.
Solutions:
- Restart your terminal
- Run directly:
~/.local/bin/dns-mns
- Add to PATH manually:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
If you use the pre-built binary instead, just run it directly — no PATH setup needed.
”curl: command not found”
Install curl, use wget instead, or use the pre-built binary which doesn’t need curl at all.
Use the binary (recommended for Iran):
Download from the Releases page — no curl/wget needed.
Or install curl:
Ubuntu/Debian:
Or use wget:
wget -qO- https://gitlab.com/E-Gurl/dns-mns/-/raw/main/install.sh | bash
“Permission denied” during installation
Make the script or binary executable:
chmod +x install.sh
# Or for the binary:
chmod +x dns-mns-linux-amd64
DNS Testing Issues
All DNS servers show as unreachable
Possible causes:
- No internet connection
- Firewall blocking ICMP
- ISP blocking DNS queries
Solutions:
-
Check your internet connection:
-
Try a known working DNS:
-
Check if your firewall is blocking:
sudo iptables -L | grep icmp
Testing is very slow
Possible causes:
- Many DNS servers are unreachable
- Slow internet connection
- High network latency
Solutions:
- Test a specific category instead of all servers
- Ensure you have a stable connection
- Close bandwidth-heavy applications
”dig: command not found”
The dig command is optional but improves testing accuracy.
Ubuntu/Debian:
sudo apt install dnsutils
Fedora:
sudo dnf install bind-utils
macOS:
DNS Configuration Issues
”Permission denied” when changing DNS
The tool needs administrator privileges.
Linux/macOS:
Windows:
Right-click Git Bash or PowerShell and select “Run as Administrator”
DNS changes not taking effect
Step 1: Flush DNS cache
sudo resolvectl flush-caches
sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder
Step 2: Verify DNS is set
resolvectl status
# Or
cat /etc/resolv.conf
Get-DnsClientServerAddress
Step 3: Restart network service
sudo systemctl restart systemd-resolved
# Or
sudo systemctl restart NetworkManager
Toggle Wi-Fi off and on, or:sudo ifconfig en0 down && sudo ifconfig en0 up
Restart-NetAdapter -Name "Wi-Fi"
DNS changes don’t persist after reboot
Linux (NetworkManager):
sudo nmcli connection modify "Your Connection" ipv4.ignore-auto-dns yes
Linux (systemd-resolved):
Ensure the config file exists:
cat /etc/systemd/resolved.conf.d/dns-mns.conf
VPN overrides DNS settings
Most VPNs override DNS settings for security. Options:
- Configure DNS within your VPN client
- Disconnect VPN before changing DNS
- Use VPN’s DNS servers instead
General Issues
Update to the latest version using the built-in updater:
Or re-run the installer to download the latest binary:
curl -sSL https://gitlab.com/E-Gurl/dns-mns/-/raw/main/install.sh | bash
Colors not displaying correctly
Your terminal may not support ANSI colors.
Solutions:
- Use a modern terminal emulator
- Set TERM environment variable:
export TERM=xterm-256color
Network Issues
Websites still not loading after DNS change
Possible causes:
- DNS cache not flushed
- Browser cache
- ISP-level blocking
Solutions:
- Flush DNS cache (see above)
- Clear browser cache
- Try incognito/private browsing
- Restart browser
Gaming ping still high
DNS only affects name resolution, not game server routing.
Additional steps:
- Use a gaming VPN (ExitLag, WTFast)
- Check your ISP’s routing
- Use wired instead of Wi-Fi
- Close background applications
Some websites work, others don’t
The DNS server may be blocking certain domains.
Solutions:
- Try a different DNS (e.g., Cloudflare 1.1.1.1)
- Use option 3 to reset DNS and test
System Diagnostics
Use the built-in diagnostics command to automatically check your system configuration:
This checks:
- System information and OS version
- Administrator/root permissions
- Network interface configuration
- Current DNS settings
- DNS resolution capabilities
- Platform-specific configuration
Save diagnostics to a file:
dns-mns diagnose > dns-mns-debug.txt
Include this output when opening bug reports.
Windows-Specific Issues
”Access Denied” Errors
Problem: Windows requires Administrator privileges to change DNS settings.
Solutions:
-
Use the PowerShell Wrapper (Recommended):
Download from the releases page and place next to
dns-mns.exe.
-
Manual Elevation:
Right-click PowerShell and select “Run as Administrator”
Update Process on Windows
Windows locks running executables, which prevents direct replacement. The updater handles this automatically by:
- Downloading the new binary to a temporary file
- Creating an update script (
update.bat and update.vbs)
- Exiting the current process
- The script replaces the binary and restarts the application
Note: You may see update.bat or update.vbs files temporarily during updates. These are cleaned up automatically after successful completion.
Antivirus False Positives
Some antivirus software may flag DNS-MNS because it modifies network settings. This is a false positive.
If your antivirus blocks the tool:
- Add an exception for
dns-mns.exe in your antivirus settings
- Windows Defender typically does not flag the tool
PowerShell Execution Policy
Error: Execution of scripts is disabled on this system
Solution: Run PowerShell as Administrator and execute:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Getting Help
If you’re still experiencing issues:
- Run diagnostics:
dns-mns diagnose > debug.txt
- Check existing issues: gitlab.com/E-Gurl/dns-mns/issues
- Open a new issue with:
- Your operating system and version
- The command you ran
- The error message you received
- Output of
dns-mns diagnose
# Capture output for bug report
dns-mns diagnose 2>&1 | tee dns-mns-debug.log