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 dns-mns.sh
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
Script Issues
”bash: syntax error”
You may have an old version of bash.
Check version:
DNS-MNS requires bash 4.0 or higher.
Update bash:
# Ubuntu/Debian
sudo apt install bash
# macOS (with Homebrew)
brew install bash
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
Getting Help
If you’re still experiencing issues:
- 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 with the issue
# Capture output for bug report
dns-mns 2>&1 | tee dns-mns-debug.log