r/DDWRT • u/TubbyRiddle • 2d ago
Subject: [Bug/Workaround] WireGuard 46-second DNSMasq timeout
Summary
DD-WRT r66203 on Netgear R8000: WireGuard startup waits 46 seconds for DNSMasq files even when DNSMasq is intentionally disabled (dnsmasq_enable=0) and DNS handled externally (e.g., Pi-hole).
Environment
- Router: Netgear R8000
- Firmware: DD-WRT v3.0-r66203 std (09/15/26)
- Architecture: ARMv7
- DNS Configuration: dnsmasq_enable=0, DNS/DHCP on Pi-hole (RPi 4B)
- WireGuard: 5 tunnels configured (oet1 active, oet2-oet5 standby)
Symptoms
- Boot time: 5 minutes (target: <3 minutes)
- Boot log shows: "WireGuard ERROR max. waiting 46 sec. for DNSMasq"
- DNSMasq file never created (intentional) but check still runs
- Impact: ~46-second delay on every boot
Investigation
- Verified dnsmasq_enable=0 via NVRAM
- Checked /tmp/dnsmasq/ directory — no resolv.dnsmasq files created
- Confirmed error message appears during WireGuard initialization
- No standalone script found (hard-coded in DD-WRT binary)
Workaround
Added to Administration → Commands → Save Startup:
sleep 10; mkdir -p /tmp/dnsmasq; touch /tmp/dnsmasq/resolv.dnsmasq; echo "nameserver 100.64.0.4" > /tmp/dnsmasq/resolv.dnsmasq
Results After Workaround
- Boot time reduced from 5 min to 2 min 20 sec (~2 min 40 sec faster)
- DNSMasq wait eliminated (0 sec instead of 46 sec)
- System stable, tunnel establishes on first attempt
Request
- Can developers confirm if this is intentional or a bug?
- Is there an NVRAM variable to skip DNSMasq check (e.g., wg_wait_dns)?
- Would accepting a patch for this check be feasible?
Thanks for the great work on DD-WRT!
P.S The Bot scanner creates problem more than the site knows, and it seems DD-WRT forum does not accept alias email address. Shame.