Step-by-step guide to configure macOS to use our secure, token-gated DNS-over-HTTPS (DoH) service.
๐ macOS • Desktop โ Verified • Working ๐ DoH • Token AuthmacOS does not have native GUI support for DNS-over-HTTPS (DoH) with custom providers. This guide provides two methods to configure your Mac to use our secure DNSaaS service with token-based authentication.
| Service | Endpoint | Authentication |
|---|---|---|
| Primary DNS | https://dns1.oss.co.za/xxxxx/dns-query |
Token in URL path |
| Protocol | DNS-over-HTTPS (DoH) • Port 443 • TLS 1.3 | |
| macOS Version | macOS Ventura 13+ / Sonoma 14+ / Sequoia 15+ | |
token_testclient123 (replace with your actual token)token_xxxxxxxxxx
This method installs a local DNS proxy using dnsdist that forwards all queries to your secure DoH service. It's persistent, secure, and includes fallback to public DNS.
Create the configuration file with your token:
token_testclient123 with your actual token in the configuration above.
Or run in the foreground for testing:
Go to System Settings โ Network โ select your active connection โ Details... โ DNS.
Click the + button and add 127.0.0.1 as a DNS server.
Remove any existing DNS servers if they are not needed.
(Replace Wi-Fi with your interface name if different)
If you prefer a graphical interface, several third-party apps support DoH with custom providers.
Configure /usr/local/etc/dnscrypt-proxy.toml with:
Download from the App Store or visit adguard.com.
Configure with your DoH endpoint: https://dns1.oss.co.za/testclient123/dns-query
Use these test sites to verify your macOS configuration is working correctly.
| Command | Expected Result |
|---|---|
dig example.com |
โ Should return A records |
dig zycdjz.com |
โ Should return NXDOMAIN (blocked) |
dig malware.testcategory.com |
โ Should return NXDOMAIN (blocked) |
| Test Domain | Expected Result |
|---|---|
https://example.com |
โ Should load normally |
http://zycdjz.com |
โ Should show "This site can't be reached" |
http://adult.filterdns.net |
โ Should show "This site can't be reached" |
| Test Domain | Expected Result |
|---|---|
https://dnsleaktest.com |
Should show dns1.oss.co.za or 102.220.218.218 |
sudo prefixdnsdist --check-configsudo brew services log dnsdistsudo lsof -i :53sudo brew services list | grep dnsdistdns1.oss.co.zadig example.com - should return A recordsdig zycdjz.com - should return NXDOMAIN (blocked)https://dnsleaktest.com - should show your DNS servercurl -s http://127.0.0.1:8083/metricsTo revert to your previous DNS settings:
Go to System Settings โ Network โ select your connection โ Details... โ DNS.
Remove 127.0.0.1 and add your ISP's DNS servers or set to Automatic.
Or via command line:
/dns-query format (like Firefox)