TP-Link WR940N v4 and University VPN


im struggeling now for days to get this working. I really hope someone can help me.


Im living in a dormitory which does not have wifi, but a LAN socket. To connect to the internet you have to install Cisco AnyConnect and login with your student account. This works, but there is no way I can connect my phone with the internet.

So a friend said I can buy a router and use LEDE to connect to the University VPN. Well, I bought a TP-Link WR940N v4, not knowing it has just 4MB of flash :(.

What I tried till now

First I installed the LEDE firmware for this router (lede-17.01.4-ar71xx-generic-tl-wr940n-v4-squashfs-factory-eu.bin) which was working. Then I tried to install vpnc (I tried to follow this guide), but the flash size was obviously not enough (which I didn't know before of course).

So I started to try out the image builder an build my own image with:

make image PROFILE=tl-wr940n-v4 PACKAGES="vpnc vpnc-scripts luci-proto-vpnc ip6tables -odhcp6c -kmod-ipv6 -kmod-ip6tables -ppp -ppp-mod-pppoe"

Cause I guessed I don't need IPv6 and PPP. Then I flashed the router with this file: "bin/targets/ar71xx/generic/lede-17.01.4-ar71xx-generic-tl-wr940n-v4-squashfs-sysupgrade.bin".
After that I tried to open LuCI and it didn't open, so I checked with "opkg list-installed" the packages and surprise neither where the PPP or IPv6 removed nor was the vpnc installed.

So I checked my make image command again, and it just doesn't matter what packages I put, in the end the generated file is always 3145732 bytes big, so I guess its just not updating the syupgrade.bin file (the only file which is changing is lede-17.01.4-ar71xx-generic-root.squashfs). No idea why.

Then I tried to use an other user generated image. The OpenVPN build of this post. Which is working, but I cannot figure out how to configure the VPN to connect to the cisco server. So im stuck there too.

My Question's

  1. why does the make image command does not change the *.bin files, what do I do wrong?
  2. can I remove the PPP and IPv6?
  3. is it possible to use OpenVPN to connect to a cisco system and how is it done? I read a lot of tutorial's but I just couldn't figure it out. I don't have .ovpn file or a CA file or anything from the university.

Sorry for the long text and thanks in advance!

Return the router and purchase one with at least 8 MB of flash memory.

See this list of OpenWrt/LEDE "friendly" routers...

Yes, I remove PPP in all of my builds, though I use the full tool chain, not the Image Builder. If you remove IPv6, then I believe you can also remove odhcpd. As you've noticed, getting a modern OS to run on a "tiny" device can be a challenge. You may need to remove LuCI (the GUI) and manage the device through the command line.

:unamused: No -- The Cisco protocols are not compatible with OpenVPN's protocol

Thanks jeff! Now I know at least where to continue, but Im still struggeling with the image builder. What do you mean with the full tool chain?

That would be my last option, and Im not sure if the store is taking the router back, cause I didn't bought it online and in germany they can just say no.

There are additional considerations besides flash size...

If you do decide to return it, you might use this tutorial to revert back to stock firmware...

Works for several TP-Link routers -

You would rename the stock firmware file wr940v4_tp_recovery.bin

Once installed, it takes me under 30 min on a Intel(R) Core(TM) i3-7100T CPU @ 3.40GHz (hardly a "high-end" CPU) to do a "clean" compile including some more complex packages such as git (which pulls in perl) and OpenSSL/SSH. It's a lot faster on a re-build to add/remove a package or the like.

Edit: For Cisco connectivity, it may be possible to use OpenConnect. I wasn't successful in getting it to connect on another platform, but you may have better luck with your university's system, assuming it fits on your device. The OpenWRT packages appear to be available and look to consume ~1 MB once you include libxml2 and gnutls. Adding them directly to a build may save significant space over those uncompressed sizes.

Edit: You might want to consider running your WR940N as little more than a NAT + AP and run your VPN on something like an ODROID or a Raspberry Pi with a USB Ethernet adapter to overcome the Pi's bottleneck.

I looked at the installation and it looks a bit to complicated for me to be honest. I think I will follow jwoods advice and try to buy a new one. At least I got the stock firmware back on it. So I can hope that they will take it.
Thanks to both of you!

lucky for me the router was not bricked

1 Like