

#Protonvpn servers how to
The DD-WRT wiki page provides fairly straightforward instructions on how to format a USB flash drive and install the package manager. DD-WRT does not ship with this tool out of the box, however, so I first had to install the Entware package manager. To parse the JSON results from the ProtonVPN API, I wanted to use the popular jq command-line tool. This solution assumes that you already have the DD-WRT OpenVPN Client enabled and connected to ProtonVPN ( ProtonVPN docs). In this post, I outline how I automated selecting a more optimal server IP via a shell script on DD-WRT. ProtonVPN exposes an API endpoint here that provides up-to-date Load and Score metrics for each server. Server loads seem to be fluctuating more wildly during the pandemic, and performance degradation can be quite noticeable during peak loads. My custom domain solution worked alright but did not take into account the servers’ current loads. In my testing, however, this domain often connected me to servers that were physically far from my location with sub-par speed and latency.

This solution partially mimicked ProtonVPN’s country configuration option that allows you to connect to us. which should resolve to the most ideal US IP for your location and the current server load. In short, I configured a domain name that I own to return a round-robin IP address from a set of generally optimal servers for my location with Cloudflare. In a recent post, I outlined a solution that I was testing for configuring my DD-WRT router to connect to an optimal ProtonVPN server. Updated and simplified the script to continue to support PBR per this forum post. ProtonVPN now supports customized OpenVPN username suffixes to specify exit node and additional features. Added most recent script to GitHub rather than updating this post.
