Incredibly slow speeds on Beryl wireguard VPN tunnel (Will pay someone to help me)

I have been having problem with my computer using my VPN tunnel.

Both server and client are Beryls.

Both have at least 100mb upload and download.

Firmware version: 3.206

I believe it has to do something with the MTU at either my computer, the client or server router.

But I am not as technically inclined with this stuff.

I am super desperate for a solution as I can barely attend Microsoft teams meetings with it.

Please help

Any reasons not to update to 4.3.10?

Can you provide a speedtest so we can have some numbers?

Yeah update maybe a good idea. I can update to the latest from the dashboard right?

Speedtests usually less than 5mb up and down.

Yes, please try updating and, perform a factory reset to ensure a complete reset. It’s always a good idea after significant version upgrades. I believe you can proceed with the update from the dashboard.

Are you experiencing normal speed tests without VPN? Are you using LAN cables or Wi-Fi?

Yeah nonvpn speed tests are good.

I am using a cable from the client to my actual router. And then I connect via wifi. I have tried using Ethernet but it’s just as bad. I also have a work vpn on my pc but speeds are fine on my non vpn WiFi.

Also how do I update my server side router since I’m not there?

You could use GoodCloud or run an update via SSH

But: You can’t keep settings from 3.x to 4.x - so the router will reset. Remote connection won’t be possible anymore then.

So I would lose my vpn connection completely? And I would have to be at the server router to set it up again?

Yep, you are correct.

Major updates require hands on.

Alright so that’s not an option unfortunately. It has worked fine before so maybe something else is at play here?

What MTU should all my devices be at?

Can’t tell, depends on trial and error + the network itself.
Never had to modify MTUs in my life.

Try to reduce the MTU until you find the sweet spot. Start with 1412.

If someone helps me solve this I will pay you $50 via PayPal, yes I am that desperate.

I always try a MTU of 1280 on the client side when I am having issues, as it seems to work when networks are not passing full size UDP packets.

I travel full time, and have had enough issues that on my GL iNet travel router (AR750s) and remote GL iNet VPN server (AR300M) that I have configured them to support Wireguard (UDP), SoftEther (TCP) and OpenVPN (UDP and TCP). Not easy to do, but having multiple VPN protocols that support both TCP and UDP has saved me more then once.

Thanks for information.
Since you seem like you know what you’re talking about,would you happen to know why I see a temporary increase in speed after changing my MTU on my computer?

Also do you know how I can change the MTU of my server router without being their physically?

Which MTUs should I adjust though? Computer, client or server?

Also I have tried messing with them on the computer side.

I ping a website on cmd with a specific MTU and see if it fragments. If it does I lower it. But once I lower it, it only works for a few minutes before it starts to fragment again on the same MTU.

Any idea what’s going on here? I’m definitely beyond my capabilities here and don’t really know what I’m doing.

Only change the MTU in the Wireguard client setting on your travel router. Leave all other MTU setting at the default size.

The smaller the MTU, the more packets have to be sent for a given message, so larger MTU, less overhead, BUT if the packets fragment, and if fragmenting is blocked anywhere between your remote site and your home router, then your VPN runs really slow, or just does not work.

So how do I get around fragmentation?

When I test different MTUs, I found that when I lower it, I don’t get fragmented. But that only lasts for a few mins before it starts fragmenting again.

Is this normal?

Chat gpt is fre, ask it your configs and it will help pretty quick , i sewttled with tailscale in the end., ssh traffic gets blocked along the way with my setup for some reason

To prevent fragmentation, you need to have your UDP packets be smaller then the smallest maximum packet size between your travel router and your home router. You can sometimes use ping and by setting different packet sizes, find what the maximum packet that will pass before the ping packets are dropped.

I have no ideas on why it would work and then stop after a few minutes. That is not normal. Almost looks like filtering on a firewall between your two routers.

TCP handles fragmentation much better then UDP, so its why I have both setup on my routers.

Gotcha. You probably can guess my next question, how do I set up TCP on my beryl? Any documentation on it?