Skip to main content

Adding DNS Servers

One of the most valuable contributions is adding new DNS servers, especially ones that work well in Iran.

DNS List Format

DNS servers are stored in internal/dnslist/dns-list.conf (embedded in the Go binary):
The internal/dnslist/dns-list.conf file is what the binary embeds. This is the only file you need to update.

Example Entries

Adding a New DNS Server

Step 1: Verify the DNS Works

Before adding, verify the DNS server is working:

Step 2: Edit dns-list.conf

Open the configuration file:

Step 3: Add Your Entry

Add your DNS server in the appropriate section:

Step 4: Test with DNS-MNS

Build and run the tool to verify your DNS appears:

Categories

Add your DNS to the appropriate category in the file:

Guidelines for Adding DNS

Submitting Your Addition

Via Pull Request (Preferred)

  1. Fork the repository
  2. Edit dns-list.conf
  3. Commit with message: feat: add [DNS Name] to dns list
  4. Open a pull request
PR Description Template:

Via Issue

If you’re not comfortable with pull requests:
  1. Open a new issue
  2. Title: “Add DNS: [DNS Name]”
  3. Include:
    • DNS name
    • Primary and secondary IPs
    • Location
    • How you verified it works
    • Where you found it

Bulk DNS Additions

If you have multiple DNS servers to add:
  1. Create a text file with all entries
  2. Open a pull request or issue
  3. We’ll review and merge valid entries

Removing Outdated DNS

If you find a DNS server that no longer works:
  1. Open an issue titled “DNS not working: [DNS Name]”
  2. Include:
    • Which DNS is not working
    • Error you’re seeing
    • When you tested it
Or submit a PR removing the entry with verification.

Privacy Considerations

When adding DNS servers:
  • Don’t add private/internal DNS without permission
  • Verify the DNS provider is legitimate
  • Note if the DNS has any content filtering
Thank you for helping expand the DNS-MNS database!