Skip to content

DD-WRT OpenVPN Setup: Connect Your Whole Router to VPNBaron

Running the VPN on the router covers everything behind it: smart TVs, consoles, IoT gadgets, guests, devices that can’t run VPN apps at all. And the whole network counts as one device on your plan.

DD-WRT remains one of the big three open router firmwares (alongside OpenWrt and FreshTomato) and its OpenVPN client is mature. This guide assumes DD-WRT is already flashed; if not, check your model in the DD-WRT router database first, flashing is its own adventure.

Set expectations on speed

OpenVPN runs on the router’s CPU, and consumer router CPUs are small. Expect roughly 20 to 100 Mbps through the tunnel depending on the model, regardless of your line speed. For full-speed use on a single device, the native app is the better tool; the router tunnel is for coverage, not records.

What you need

From your Servers page (log in first):

  1. A TCP config for the server you want (OpenVPN tab → TCP download; TCP is the stable choice for routers)
  2. Your VPN username and password (top card; separate from your website login)

Open the .ovpn file in any text editor. You’ll copy pieces of it into DD-WRT’s fields.

Setup Guide

  1. Open the OpenVPN client page

    In the DD-WRT admin UI: Services → VPN (on some builds Setup → OpenVPN Client). Set Start OpenVPN Client: Enable.

  2. Map the basics from the .ovpn file

    • Server IP/Name: the host from the remote line
    • Port: the port from the same line
    • Tunnel Device: TUN
    • Tunnel Protocol: TCP
    • Encryption Cipher / Hash Algorithm: match the cipher and auth lines (set the Data Ciphers field to the data-ciphers value on newer builds)
  3. Enable username/password auth

    Set User Pass Authentication: Enable and enter your VPN username and password from the Servers page.

  4. Paste the certificate blocks

    From the .ovpn, copy everything between the markers into the matching DD-WRT fields:

    • <ca> ... </ca>CA Cert
    • <tls-crypt> ... </tls-crypt> (or <tls-auth>) → TLS Auth Key, if present in your config
  5. Additional Config (recommended)

    persist-key
    persist-tun
    verb 3
  6. Apply and connect

    Save, then Apply Settings. Check Status → OpenVPN: you want Connected: SUCCESS.

Verify from any device on the network

From a laptop or phone on the router’s Wi-Fi:

curl -s https://buyvpn.com/api/ip

If the IP is the VPN server’s, the whole network is tunnelled.

Kill switch

Newer DD-WRT builds have a Killswitch toggle on the OpenVPN client page: it blocks LAN traffic from leaking to the raw WAN when the tunnel drops. Enable it if your build offers it; on older builds the equivalent is a small iptables rule, which the DD-WRT wiki documents per version.

Troubleshooting

Protocol notes

Recent DD-WRT builds also ship a WireGuard client, which is far lighter on weak router CPUs. Our supported router path today is OpenVPN; if you’re running OpenWrt instead of DD-WRT, the same .ovpn works via its OpenVPN packages. For a stock-firmware alternative, see the TP-Link OpenVPN guide.