Xeltor's Ad-blocking DNS
Prerequisites
- Ensure the router firmware supports DNS-over-TLS (DoT) or can run a local stub (Unbound, dnsmasq, AdGuard Home, etc.).
- Open outbound TCP port 853 in any upstream firewall rules.
- Upstream resolver IPs:
63.250.54.8 and 86.90.92.105. TLS hostname: dot.xel-serv.com.
Unbound (OPNSense, pfSense, bare metal)
- Edit
Services → Unbound DNS → General and enable DNS over TLS.
- Add the following custom options:
forward-zone:
name: "."
forward-tls-upstream: yes
forward-addr: 63.250.54.8@853#dot.xel-serv.com
forward-addr: 86.90.92.105@853#dot.xel-serv.com
- Clear the resolver cache and restart Unbound.
dnsmasq (OpenWrt, DD-WRT)
- Install
stubby or https-dns-proxy. Stubby example:
opkg update
opkg install stubby
- Edit
/etc/stubby/stubby.yml and replace the upstreams with:upstream_recursive_servers:
- address_data: 63.250.54.8
tls_auth_name: dot.xel-serv.com
tls_port: 853
- address_data: 86.90.92.105
tls_auth_name: dot.xel-serv.com
tls_port: 853
- Point dnsmasq to the stubby listener by adding to
/etc/dnsmasq.conf:
no-resolv
server=127.0.0.1#5453
- Restart both services:
/etc/init.d/stubby restart, /etc/init.d/dnsmasq restart.
OPNSense / pfSense GUI walkthrough
- Navigate to System → Trust → Authorities and ensure the default trust store is up to date.
- Go to Services → Unbound DNS → Advanced and add the following custom options:
forward-zone:
name: "."
forward-tls-upstream: yes
forward-addr: 63.250.54.8@853#dot.xel-serv.com
forward-addr: 86.90.92.105@853#dot.xel-serv.com
- Under System → General Setup, remove any ISP DNS servers so DHCP clients inherit only your router IP.
- Save and apply changes; Unbound restarts automatically.
AdGuard Home
- Open the AdGuard Home dashboard → Settings → DNS settings.
- Under Upstream DNS servers, add:
tls://dot.xel-serv.com
- Enable “Bootstrap DNS servers” and supply
63.250.54.8 and 86.90.92.105.
- Apply the changes and flush the query log.
Verification
- From a LAN client:
nslookup ads.facebook.com should return NXDOMAIN.
- Check the router logs; TLS handshakes to
dot.xel-serv.com:853 should succeed without fallback.
Voorwaarden
- Zorg dat de firmware DNS-over-TLS ondersteunt of een lokale stub kan draaien (Unbound, dnsmasq, AdGuard Home).
- Sta uitgaand TCP-poort 853 toe in upstream-firewalls.
- Upstream IP's:
63.250.54.8 en 86.90.92.105. TLS-hostnaam: dot.xel-serv.com.
Unbound (OPNSense, pfSense, bare metal)
- Ga naar Services → Unbound DNS → General en schakel DNS over TLS in.
- Voeg onderstaande custom options toe:
forward-zone:
name: "."
forward-tls-upstream: yes
forward-addr: 63.250.54.8@853#dot.xel-serv.com
forward-addr: 86.90.92.105@853#dot.xel-serv.com
- Leeg de resolvercache en herstart Unbound.
dnsmasq (OpenWrt, DD-WRT)
- Installeer
stubby of https-dns-proxy. Voorbeeld Stubby:
opkg update
opkg install stubby
- Pas
/etc/stubby/stubby.yml aan en vervang de upstreams door:upstream_recursive_servers:
- address_data: 63.250.54.8
tls_auth_name: dot.xel-serv.com
tls_port: 853
- address_data: 86.90.92.105
tls_auth_name: dot.xel-serv.com
tls_port: 853
- Laat dnsmasq naar de Stubby-listener verwijzen via
/etc/dnsmasq.conf:
no-resolv
server=127.0.0.1#5453
- Herstart beide services:
/etc/init.d/stubby restart, /etc/init.d/dnsmasq restart.
OPNSense / pfSense (GUI)
- Controleer onder System → Trust → Authorities of de standaard trust store actueel is.
- Ga naar Services → Unbound DNS → Advanced en voeg onderstaande custom options toe:
forward-zone:
name: "."
forward-tls-upstream: yes
forward-addr: 63.250.54.8@853#dot.xel-serv.com
forward-addr: 86.90.92.105@853#dot.xel-serv.com
- Verwijder onder System → General Setup eventuele ISP-DNS servers zodat DHCP-clients alleen het router-IP krijgen.
- Sla op en pas toe; Unbound wordt automatisch herstart.
AdGuard Home
- Open het AdGuard Home-dashboard → Settings → DNS settings.
- Voeg onder Upstream DNS servers toe:
tls://dot.xel-serv.com
- Zet “Bootstrap DNS servers” op
63.250.54.8 en 86.90.92.105.
- Pas de wijzigingen toe en wis het querylog.
Controleren
- Voer vanaf een LAN-client
nslookup ads.facebook.com uit; het resultaat moet NXDOMAIN zijn.
- Controleer de routerlogs: TLS-handshakes naar
dot.xel-serv.com:853 moeten slagen zonder fallback.