Jump to content
Not connected, Your IP: 216.73.216.119
Rootkittorrent

ANSWERED Gluetun wireguard very slow despite opened port

Recommended Posts

Posted ... (edited)

Hello everyone,

Im reaching to you because I cant figure out how to make it work properly. I switched to AirVPN recently and now my download and upload speed seems to be unusualy slow when torrenting.
I have everything set up under docker with gluetun and qbittorrent with wireguard, I think I did everything correctly but despite my efforts I cant seem to get fast downloads, AND, I see some weird behavior :

When I restart the gluetun container, I get around 40MiB/s on qbittorrent which is very good imo, but after 10-20secondes it goes down again to 500Kbps or maximum 2-4MiB/s, it even goes down to 0B/s. Sometimes it spikes up to 8 but thats rare. I tried this on the ubuntu iso and cant figure out why it does that. I also tried to download the same torrent but on my windows PC with wireguard and the same config that I used under gluetun, and it worked flawlessly at around 40-50MiB/s without any spikes.

Here's a part of my config :

services:
  gluetun:
    image: qmcgaw/gluetun:latest
    container_name: gluetun

    cap_add:
      - NET_ADMIN

    devices:
      - /dev/net/tun:/dev/net/tun

    env_file:
      - .env

    environment:
      - VPN_SERVICE_PROVIDER=airvpn
      - VPN_TYPE=wireguard
      - WIREGUARD_PUBLIC_KEY=${WIREGUARD_PUBLIC_KEY}
      - WIREGUARD_PRIVATE_KEY=${WIREGUARD_PRIVATE_KEY}
      - WIREGUARD_PRESHARED_KEY=${WIREGUARD_PRESHARED_KEY}
      - WIREGUARD_ADDRESSES=${WIREGUARD_ADDRESSES}

      - SERVER_COUNTRIES=${SERVER_COUNTRIES}
      # - SERVER_REGIONS=${SERVER_REGIONS}
      # - SERVER_CITIES=${SERVER_CITIES}

      - FIREWALL_VPN_INPUT_PORTS=${AIRVPN_PORT_FORWARD}

      - TZ=${TZ}

    volumes:
      - ./config/gluetun:/gluetun

    ports:
      - ${WEBUI_PORT}:${WEBUI_PORT}
      - ${AIRVPN_PORT_FORWARD}:${AIRVPN_PORT_FORWARD}
      - ${AIRVPN_PORT_FORWARD}:${AIRVPN_PORT_FORWARD}/udp

    healthcheck:
      test: ping -c 1 1.1.1.1 || exit 1
      interval: 30s
      timeout: 10s
      retries: 5

    restart: unless-stopped

    networks:
      - media-net

  qbittorrent:
    image: lscr.io/linuxserver/qbittorrent:latest
    container_name: qbittorrent
    network_mode: "service:gluetun"
    depends_on:
      gluetun:
        condition: service_healthy

    env_file:
      - .env

    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - TZ=${TZ}

      - WEBUI_PORT=${WEBUI_PORT}
      - TORRENTING_PORT=${TORRENT_PORT}

    volumes:
      - ./config/qbittorrent:/config
      - /mnt/medias/torrents:/downloads
    restart: unless-stopped
I also opened the correct port on my client area and put the same port in the .env for the FIREWALL_VPN_INPUT_PORTS variable. When I test the port on the same client area it tells me that ipv4 is reachable and ipv6 not (thats normal because I deactivated it).

In SERVER_COUNTRIES I've set Switzerland, Nertherlands and Germany. The logs from Gluetun tells me its correctly connected and I get the connection status online on qbittorrent with the port being set up correctly too :

image.png.239a80d1e1718df6ca6c7e5c92782f5e.png

What am I missing ?

Thank you. Edited ... by Rootkittorrent

Share this post


Link to post
On 3/7/2026 at 1:02 PM, Rootkittorrent said:

I get around 40MiB/s on qbittorrent which is very good imo, but after 10-20secondes it goes down again to 500Kbps or maximum 2-4MiB/s, it even goes down to 0B/s.


Hello!

It might be an MTU related problem. Please test again with different WireGuard interface MTU, starting from 1280 bytes and going up to 1400 bytes. The environment variable controlling MTU is WIREGUARD_MTU. Add a line on the environment: section. Example:
- WIREGUARD_MTU = 1280

Remember to re-start the container each time you change configuration.

Kind regards
 

Share this post


Link to post
On 3/9/2026 at 10:17 AM, Staff said:

Hello!

It might be an MTU related problem. Please test again with different WireGuard interface MTU, starting from 1280 bytes and going up to 1400 bytes. The environment variable controlling MTU is WIREGUARD_MTU. Add a line on the environment: section. Example:

- WIREGUARD_MTU = 1280

Remember to re-start the container each time you change configuration.

Kind regards
 
Thank you, I've set it to 1280 as you said and tried 1300, but 1280 seems to be the most stable out of them, I'll try other values but for now Im pretty happy with the speed it has I finally reached 20-25MiB/s stable on small torrents.

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Security Check
    Play CAPTCHA Audio
    Refresh Image

×
×
  • Create New...