Phishing sites live only hours or days
Domains younger than X days are blocked automatically using registration data (RDAP), so brand-new scam sites never load.

Antivirus works on one device. A firewall watches ports. But nearly every attack, tracker and scam begins with a single question: "where is this domain?" A DNS firewall answers that question for your whole network, and refuses to answer when the destination is dangerous.
One setting on your router protects phones, laptops, consoles, TVs and IoT. Nothing to install.
Almost every connection starts with a DNS lookup. Blocking there stops the threat before any data is exchanged.
Encrypted DNS over DoT and DoH, with clear log retention. You only ever see your own data.
Searchable query log, charts and email alerts show exactly what your network talks to.
Domains younger than X days are blocked automatically using registration data (RDAP), so brand-new scam sites never load.
Malware and phishing lists update automatically. Infected devices are stopped before they can leak data or download more payloads.
Ad and tracking domains are answered with 0.0.0.0 or NXDOMAIN, on every device, including smart TVs and phones where you cannot install an ad blocker.
Block whole TLDs known for abuse, with your own allowlist for the sites you trust.
Public domains that suddenly resolve to private addresses are blocked, protecting your local network from browser-based attacks.
Parental controls with categories, service blocking (TikTok, YouTube and more), forced SafeSearch, schedules and a one-click "pause internet".
Known VPN and public DoH endpoints are blocked, so filtering cannot simply be switched off by an app.
The server only answers registered IP addresses and ignores everyone else, with rate limits per IP. No open resolver, no amplification abuse.
Protect against all kinds of security threats on every device in your network.
Malware, phishing, cryptojacking and command-and-control domains are blocked using regularly updated threat lists.
Block domains registered in the last days. Most new domains used in attacks are only active for a short time.
Stop look-alike domains that copy well-known brands by swapping or adding letters.
Stop public domains from resolving to private IP addresses and reaching devices on your local network.
Block whole TLDs that are often used for spam and abuse, and allow exceptions for sites you trust.
Block parked pages and dynamic DNS hostnames that are often used to spread malware.
Block ads and trackers in websites and apps, and keep your DNS traffic private.
Choose from popular community-maintained lists to block ads, trackers and analytics domains.
Block tracking built into operating systems, smart TVs and connected devices.
Detect trackers that hide behind a website's own subdomain to avoid blockers.
Use DNS-over-TLS and DNS-over-HTTPS so your network provider cannot read or change your lookups.
Logs are kept for a set period and deleted automatically.
Decide whether affiliate and tracking links in emails and search results should work.
Keep children safe online with simple, reliable controls that work on every device.
Block categories such as adult content, gambling, dating and piracy with one switch each.
Block specific services like TikTok, YouTube, Fortnite, Instagram and more.
Force SafeSearch on Google, Bing, DuckDuckGo and other search engines, and filter explicit results.
Hide mature videos and comments on YouTube.
Allow some services only at certain times, like games after homework or nothing after bedtime.
Block VPNs, proxies and public encrypted DNS services that children could use to get around the rules.
See what your devices are really doing on the internet.
Watch every DNS request as it happens, with the domain, device and whether it was allowed or blocked.
Find any domain quickly and filter by blocked, allowed or device.
See the most queried and most blocked domains, top devices and blocking reasons.
Get notified when a device tries to reach malware or phishing domains.
Allow or block a domain directly from the log.
Keep logs for an hour, a day, a month or not at all.
Sign up and register the IP address of your network. Use the "use my IP" button to fill it in.
Turn on security, privacy and parental control features. Every setting takes effect within seconds.
Change the DNS server on your router or device, or use your own DNS-over-HTTPS or DNS-over-TLS address.
Set it once on your router to protect every device at home, or set it per device to stay protected on mobile networks and public Wi-Fi.
You decide exactly what gets through.
Complete DNS-level protection with the visibility and control your organization needs.
Automatically blocks connections to known malware distribution networks, command & control servers, and compromised domains in real-time.
Identifies and optionally blocks domains registered within the last 30 days - a common vector for phishing and malware campaigns.
Filter DNS requests by category including adult content, gambling, social media, and more. Customize policies per IP or network.
See every DNS query from your network in real-time. Track blocked requests, identify threats, and monitor network activity.
Create your own rules. Add specific domains to block or allow. Override default policies with granular control.
Comprehensive dashboards showing query statistics, blocked threats, top domains, and historical trends for compliance reporting.
One simple price: $2.90 per device per month. Pick the package that fits your network.
5 devices at $2.90 per device per month
25 devices at $2.90 per device per month
Unlimited devices, billed per device
All plans include a 14-day money-back guarantee. No questions asked.
Everything you need to deploy, configure, and optimize FirewallDNS for your environment.
Quick setup guide to get FirewallDNS protecting your network in under 5 minutes.
Learn how to customize filters, create allowlists, and fine-tune protection.
Complete REST API documentation for programmatic access and automation.
Step-by-step instructions for configuring DNS on popular router brands.
Recommendations for maximizing protection and security hygiene.
Common issues and solutions to get you back up and running quickly.
dns1.firewalldns.comdns2.firewalldns.comConfigure these DNS servers on your router or device after registering your IP address in the dashboard.
Stay informed about the latest DNS security threats and best practices.
A DNS firewall blocks dangerous domains before a connection starts; a network firewall controls traffic by IP, port and protocol. Here is how they differ.
Protective DNS is a resolver that refuses to answer for malicious domains. Learn how it works, why governments recommend it and how to deploy it at work.
DNS-over-HTTPS, DNS-over-TLS and DNS-over-QUIC all encrypt lookups. Compare how they work, their ports, support and what each means for DNS filtering.
Find out which DNS server your computer, phone or router really uses. Step-by-step checks for Windows, macOS, Linux, iPhone, Android and your browser.
A comprehensive guide to DNS-level protection and why it matters for your organization.
DNS (Domain Name System) filtering is a technique that blocks access to malicious or unwanted websites at the DNS resolution level. When a user tries to access a website, their device first queries a DNS server to translate the domain name into an IP address. DNS filtering intercepts this query and blocks resolution for domains that match predefined security policies.
Unlike traditional web filtering that operates at the HTTP level, DNS filtering works at the network layer, providing protection before any connection is established. This means malware, phishing sites, and command & control servers are blocked before they can communicate with your network.
Domains hosting malicious software, ransomware droppers, and exploit kits. These are typically short-lived domains used in drive-by download attacks.
Fake websites designed to steal credentials by impersonating legitimate services like banks, email providers, and popular platforms.
Command and control infrastructure used by attackers to communicate with malware installed on compromised systems.
A technique where attackers encode data in DNS queries to bypass security controls and exfiltrate data from compromised networks.
Research shows that over 70% of newly registered domains (NRDs) are never used for legitimate purposes. Cybercriminals frequently register new domains for phishing campaigns, malware distribution, and other malicious activities because:
FirewallDNS tracks domain registration dates and can optionally block or flag domains registered within the last 30 days, significantly reducing your attack surface against zero-day phishing and malware campaigns.
Set up your DNS server to communicate with FirewallDNS. These scripts handle IP whitelisting, blocklist syncing, and log forwarding.
This script syncs allowed IPs to iptables and downloads blocklists from your FirewallDNS account. Run as a systemd service.
#!/bin/bash
# FirewallDNS Server Client
# This script runs on your DNS server to sync with FirewallDNS
FIREWALLDNS_API="https://api.firewalldns.com/v1"
API_KEY="your-api-key-here"
# Function to sync allowed IPs
sync_iptables() {
echo "Fetching allowed IPs from FirewallDNS..."
# Get list of allowed IPs from API
ALLOWED_IPS=$(curl -s -H "Authorization: Bearer $API_KEY" \
"$FIREWALLDNS_API/allowed-ips")
# Clear existing FirewallDNS rules
iptables -D INPUT -p udp --dport 53 -j FIREWALLDNS 2>/dev/null
iptables -F FIREWALLDNS 2>/dev/null
iptables -X FIREWALLDNS 2>/dev/null
# Create new chain
iptables -N FIREWALLDNS
# Add allowed IPs
for ip in $ALLOWED_IPS; do
iptables -A FIREWALLDNS -s $ip -j ACCEPT
echo "Allowed: $ip"
done
# Drop all other DNS traffic
iptables -A FIREWALLDNS -j DROP
# Link to INPUT chain
iptables -A INPUT -p udp --dport 53 -j FIREWALLDNS
echo "iptables rules updated successfully"
}
# Function to sync DNS blocking rules
sync_blocklists() {
echo "Syncing blocklists from FirewallDNS..."
# Fetch user-specific blocklists
curl -s -H "Authorization: Bearer $API_KEY" \
"$FIREWALLDNS_API/blocklists" > /etc/firewalldns/blocklists.txt
# Reload DNS server (example for dnsmasq)
systemctl reload dnsmasq
echo "Blocklists synced successfully"
}
# Main sync loop
while true; do
sync_iptables
sync_blocklists
sleep 60 # Sync every minute
doneExample dnsmasq configuration for use with FirewallDNS. Logs all queries and loads blocklists from the synced file.
# /etc/dnsmasq.d/firewalldns.conf
# FirewallDNS dnsmasq configuration
# Log all DNS queries
log-queries
log-facility=/var/log/firewalldns/queries.log
# Load blocklists
conf-file=/etc/firewalldns/blocklists.txt
# Forward to upstream DNS if not blocked
server=8.8.8.8
server=8.8.4.4
# Listen on all interfaces
interface=eth0
bind-interfaces
# Cache settings
cache-size=10000
neg-ttl=3600Forwards DNS query logs to FirewallDNS in real-time. This enables the dashboard analytics and threat detection features.
#!/bin/bash
# Send DNS logs to FirewallDNS API
FIREWALLDNS_API="https://api.firewalldns.com/v1"
API_KEY="your-api-key-here"
LOG_FILE="/var/log/firewalldns/queries.log"
tail -F $LOG_FILE | while read line; do
# Parse dnsmasq log format
DOMAIN=$(echo $line | grep -oP 'query\[\w+\] \K[^ ]+')
QUERY_TYPE=$(echo $line | grep -oP 'query\[\K\w+')
CLIENT_IP=$(echo $line | grep -oP 'from \K[0-9.]+')
if [ -n "$DOMAIN" ]; then
# Send to API
curl -s -X POST -H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d "{\"domain\": \"$DOMAIN\", \"query_type\": \"$QUERY_TYPE\", \"source_ip\": \"$CLIENT_IP\"}" \
"$FIREWALLDNS_API/logs"
fi
doneIntegrate FirewallDNS into your infrastructure with our comprehensive REST API.
API keys with granular permissions. Supports both Bearer tokens and API key headers.
Average response time under 50ms. Rate limits of 1000 requests per minute on Pro plans.
Real-time notifications for blocked threats, configuration changes, and security events.
Official libraries for Python, Node.js, Go, and Ruby. Community SDKs for other languages.
GET/api/v1/settingsRetrieve current filter settings
PUT/api/v1/settingsUpdate filter configuration
GET/api/v1/logsFetch DNS query logs
POST/api/v1/ipRegister a new IP address
DELETE/api/v1/ip/{id}Remove an IP address
GET/api/v1/statsGet query statistics
curl -X GET "https://api.firewalldns.com/v1/settings" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
# Response
{
"block_malware": true,
"block_adult_content": false,
"block_social_media": false,
"block_gambling": true,
"block_new_domains": true,
"custom_blocklist": ["ads.example.com"],
"custom_allowlist": ["trusted.example.com"]
}