ForestVPN for OpenWrt
ForestVPN on a router that runs OpenWrt 21.02 or newer, with an ARM or x86-64 processor. Nothing goes through ForestVPN until you finish the setup on the router.
Get it
Requirements
- OpenWrt
- 21.02 or later. Older releases are not supported.
- Processor
- ARM or x86-64. MIPS routers are listed as compatibility builds, and some MIPS chips are not supported yet.
- Package manager
- opkg on OpenWrt 24.10 and older, apk on 25.12 and newer. The install form follows it.
Install
Check your router
Open your router's page, then Status > Overview. Find two lines: Firmware Version and Target Platform. They decide which file you need.
Firmware Version
- OpenWrt 24.10 or older, and GL.iNet firmware: The install file (an .ipk).
- OpenWrt 25.12 or newer: The one-line command.
- Older than OpenWrt 21.02: Not supported.
Target Platform
Supported. The install file for your router is the one named below.
mediatek/filogicaarch64_cortex-a53, Tried on real hardware every release.mediatek/mt7622aarch64_cortex-a53, Tried on real hardware every release.qualcommax/ipq807xaarch64_cortex-a53, Tried on real hardware every release.qualcommax/ipq60xxaarch64_cortex-a53, Tried on real hardware every release.qualcommax/ipq50xxaarch64_cortex-a53, Tried on real hardware every release.mvebu/cortexa53aarch64_cortex-a53, Tried on real hardware every release.bcm27xx/bcm2710aarch64_cortex-a53, Tried on real hardware every release.ipq40xx/genericarm_cortex-a7_neon-vfpv4, Tried on real hardware every release.ipq40xx/chromiumarm_cortex-a7_neon-vfpv4, Tried on real hardware every release.ipq40xx/mikrotikarm_cortex-a7_neon-vfpv4, Tried on real hardware every release.bcm27xx/bcm2709arm_cortex-a7_neon-vfpv4, Tried on real hardware every release.mediatek/mt7623arm_cortex-a7_neon-vfpv4, Tried on real hardware every release.sunxi/cortexa7arm_cortex-a7_neon-vfpv4, Tried on real hardware every release.rockchip/armv8aarch64_generic, Built and tried in a lab.layerscape/armv8_64baarch64_generic, Built and tried in a lab.armsr/armv8aarch64_generic, Built and tried in a lab.bcm27xx/bcm2711aarch64_cortex-a72, Built, not tried on this kind of hardware.mvebu/cortexa72aarch64_cortex-a72, Built, not tried on this kind of hardware.bcm27xx/bcm2712aarch64_cortex-a76, Built, not tried on this kind of hardware.mvebu/cortexa9arm_cortex-a9_vfpv3-d16, Built and tried in a lab.tegra/genericarm_cortex-a9_vfpv3-d16, Built and tried in a lab.ipq806x/genericarm_cortex-a15_neon-vfpv4, Built and tried in a lab.ipq806x/chromiumarm_cortex-a15_neon-vfpv4, Built and tried in a lab.armsr/armv7arm_cortex-a15_neon-vfpv4, Built and tried in a lab.bcm53xx/genericarm_cortex-a9, Built, not tried on this kind of hardware.x86/64x86_64, Tried on real hardware every release.ramips/mt7621mipsel_24kc, Tried on real hardware every release. Compatibility build.ramips/mt7620mipsel_24kc, Tried on real hardware every release. Compatibility build.ramips/mt76x8mipsel_24kc, Tried on real hardware every release. Compatibility build.ramips/rt305xmipsel_24kc, Tried on real hardware every release. Compatibility build.ath79/genericmips_24kc, Tried on real hardware every release. Compatibility build.ath79/nandmips_24kc, Tried on real hardware every release. Compatibility build.ath79/mikrotikmips_24kc, Tried on real hardware every release. Compatibility build.ath79/tinymips_24kc, Tried on real hardware every release. Compatibility build.lantiq/xrx200mips_24kc, Tried on real hardware every release. Compatibility build.lantiq/xwaymips_24kc, Tried on real hardware every release. Compatibility build.realtek/rtl839xmips_24kc, Tried on real hardware every release. Compatibility build.realtek/rtl930xmips_24kc, Tried on real hardware every release. Compatibility build.bcm47xx/mips74kmipsel_74kc, Built, not tried on this kind of hardware. Compatibility build.ramips/rt3883mipsel_74kc, Built, not tried on this kind of hardware. Compatibility build.
Not yet: this router has a MIPS processor. Support is planned. We will not promise it before we have measured it.
Not in this list: we do not know this platform yet, so we do not offer a file for it.
Install file (OpenWrt 24.10 and older)
- 01
Download the install file for your Target Platform. Its SHA-256 is beside it.
- 02
On your router's page open System > Software.
- 03
Press Upload Package, choose the file and press Install.
- 04
Your router warns about software from untrusted sources and shows a SHA256 value. Check that it is the value on this page. Press Install again.
- 05
Reload the page and open Services > ForestVPN.
GL.iNet: open System > Advanced Settings > Go To LuCI first.
The result box starts with "ForestVPN cannot run on this router"? Nothing was installed. The next line says why.
forestvpn_0.3.15~7820e14ac-r1_aarch64_cortex-a53.ipkfff127d75671fda1f1e0f5f26f8dd98b3fce8df4f651f311199a97113936aa37forestvpn_0.3.15~7820e14ac-r1_aarch64_generic.ipk2050699546df467b25615769216f60a298529caee475d832fb22f5e21e60631cforestvpn_0.3.15~7820e14ac-r1_aarch64_cortex-a72.ipk6bdb8223ba1c01c996bf981fec8761eae6f1250254c1d8656204d44939376138forestvpn_0.3.15~7820e14ac-r1_aarch64_cortex-a76.ipk28dca2e321571a1b9b365db5e1d57b43da40218d967c270b2681b5a29aa50379forestvpn_0.3.15~7820e14ac-r1_arm_cortex-a7_neon-vfpv4.ipk1167e4683d0586073c7263bba9523f9013e62fa9fa99d1ee36498dfa7c930937forestvpn_0.3.15~7820e14ac-r1_arm_cortex-a9_vfpv3-d16.ipkfaea6616dacdd79c8e6cff10cbdd8190e7b0da3d01433b3f15f02027a2dcb7f2forestvpn_0.3.15~7820e14ac-r1_arm_cortex-a15_neon-vfpv4.ipkca58b4eaafe2ad86f882b5d4491e505dd70f857547f27b35c3fd8d9c1b600132forestvpn_0.3.15~7820e14ac-r1_arm_cortex-a9.ipk3d4c8e6a296b5f1cbd58517a9a8e5352a89d367bda3b69e4ed9cc8164e7a6d11forestvpn_0.3.15~7820e14ac-r1_x86_64.ipkca65344fb0f2453a62939f57bf0382215cfa07d100e8f49df7b9c0ae18ef8a4cforestvpn_0.3.15~7820e14ac-r1_mipsel_24kc.ipk90fb167677091dad84a9173bc772313147f630a69599b90405966a6c57176bd1forestvpn_0.3.15~7820e14ac-r1_mips_24kc.ipke80b9da51ee24b9b60ee05d535047b7f444b1f2726e461da16de009f03da17d0forestvpn_0.3.15~7820e14ac-r1_mipsel_74kc.ipka2142ec236bfc5d1a4dd0651718c2ea8f5cd8078b6cb7314428d7386cfcaff58
One command (OpenWrt 25.12 and newer, and anyone with a terminal)
Paste this one line into your router's terminal. It checks ForestVPN's signing key against the SHA-256 written in the script, adds ForestVPN's software source next to yours and installs by name. It never turns off a signature check. If your router cannot run ForestVPN, or the install fails, the key and the software source are taken away again. Once installed, the router registers with ForestVPN and connects, but no device's traffic goes through it until you finish the setup on Services > ForestVPN. To read the script before it runs, download it from the same address with wget -O install.sh, compare its SHA-256 with the one below, then run sh install.sh.
wget -qO- https://routers.fvpn.net/dl/0.3.15/install.sh | shSHA-256 of install.sh: c69a9b533501da5b328c798c27e29a3544ce316d76272df57d2b57b755084b65
Offline bundle
For a router that cannot reach us. One archive per processor type, the same files the repository serves. Copy it to the router, unpack it and run sh install-offline.sh in the router's terminal. The tunnel device must be there already. Compare the SHA-256 beside the archive with the file you downloaded before you copy it to the router: the sums inside the archive only show that it was not damaged. The bundle adds ForestVPN's signing key to your router, and once installed the router registers with ForestVPN and connects, but no device's traffic goes through it until you finish the setup.
forestvpn-offline-aarch64_cortex-a53.tar.gzb812f5d10cff13981a9301407d3ebc5a872ee1358ac1483f747c02de23452570forestvpn-offline-aarch64_generic.tar.gzf7b8c07d6b005e28c2215673a7332d304d2679028c54eae732de40403bf3e10aforestvpn-offline-aarch64_cortex-a72.tar.gzc76c206199eac107c19cb388d48e1f1d8b58502a47b12120b8a724e30bc6fb95forestvpn-offline-aarch64_cortex-a76.tar.gz4bbc8eb44bb672ec098881262b135132269dc472f23c4e25dee3427cde8a1b2cforestvpn-offline-arm_cortex-a7_neon-vfpv4.tar.gzc12299efdfc759fb2552346a5ee33789c1cf045b02f954df47b3e5057bd21dacforestvpn-offline-arm_cortex-a9_vfpv3-d16.tar.gzcebc3126fa627919ee60c62022f4112913e9bba1d4b00fe74f5d6af4eae969e7forestvpn-offline-arm_cortex-a15_neon-vfpv4.tar.gz04ba425550b7bfcdf8a3baf67497f22a2063be671d02de52e50f05169cef8248forestvpn-offline-arm_cortex-a9.tar.gzfe4719a9140f90e1967e6e0816a2cbe5ee2c446b2a6bfca7553827fe224a8a36forestvpn-offline-x86_64.tar.gzb26269af9c660852fc6aea4b362bbd816db48ddf6538d5ca0cc5b68ee4433082forestvpn-offline-mipsel_24kc.tar.gz612929e00814bccc2608db4f88f75d6f2234dd0cbffd47def38e144e5899a0d3forestvpn-offline-mips_24kc.tar.gz6220ca96415c795f59d64eb1cd5208bd2512918cad939e433bc52bd182ea07b9forestvpn-offline-mipsel_74kc.tar.gz2ea98fb7b330a9cec3c15a8b41462be6890a2922253b59e11ecd28b66e9f5bf3
If routers.fvpn.net does not load from your network, the same files are on this mirror: https://s3.eu-central-1.amazonaws.com/fvpn-routers
First run
- 01
Open the app on the router
In the router’s web page open Services, then ForestVPN.
- 02
Link it to your account
Use your account number, or a pairing code entered in ForestVPN on a phone where you are signed in.
- 03
Choose who is protected
Pick the whole home or only chosen devices, then a location.
What works on OpenWrt
- Whole home or per device
- Choose which devices on the network use the tunnel.
- Kill switch
- A routing rule and firewall sections keep traffic from leaving outside the tunnel. It is not absolute.
- LuCI app
- Everything is set from Services, then ForestVPN, in the router’s web page.
- Signed feed
- Updates come from a signed opkg or apk feed, under a release key of their own.
Not on OpenWrt: choosing sites or services per destination.
Verify your download
Every file is listed with its SHA-256 beside it, and updates come from a signed feed.
Uninstall
Remove the package from System, then Software, or run opkg remove forestvpn (apk del forestvpn on 25.12 and newer). The device stays on your account until you remove it in the app.
Questions
- Which routers work?
- Routers that run OpenWrt 21.02 or newer on an ARM or x86-64 processor. Read your router’s Target Platform from its Status page and look it up in the table on this page.
- Which file do I need?
- OpenWrt 24.10 and older use the install file (.ipk) listed for your Target Platform on this page. OpenWrt 25.12 and newer use the one-line command or the offline bundle, and this page lists each one once it is published.
- What if routers.fvpn.net does not load?
- The same files are on an S3 mirror linked on this page. A router that cannot reach us at all needs the offline bundle, which this page lists once it is published.