Bandwidth or latency issues

Last change on 2025-05-21 • Created on 2025-05-20 • ID: ST-B9C0B

To investigate the cause of your bandwidth or latency issue, check the following information:

If the commands below do not help you resolve your issue and you plan to open a support ticket, please include every output from the commands mentioned below in your support ticket along with any other relevant information. For more information about what your support ticket should include, see this FAQ entry.

Visualize the routes that IP traffic takes to the Object Storage

  • Linux

    The command below traces the network path from your device on which the S3 client is running, to our S3 endpoint.

    mtr -4 --tcp --port 443 -brw fsn1.your-objectstorage.com
    mtr -6 --tcp --port 443 -brw fsn1.your-objectstorage.com

    The option -b is important because it provides helpful additional information — DNS names and IP addresses of all hops.

    The first command tests IPv4. The second command tests IPv6.


  • Windows (WSL)

    With the Windows Subsystem for Linux (WSL), you need WSL 2 because WSL 1 does not support raw sockets (see Comparing WSL Versions). In PowerShell, you can check and change the WSL version via these commands:

    PS C:\Users\holu> wsl --list --verbose
      NAME      STATE           VERSION
    * Ubuntu    Running         1
    
    PS C:\Users\holu> wsl --set-version Ubuntu 2

    Once the WSL version is set, you can run mtr:

    mtr -4 --tcp --port 443 -brw fsn1.your-objectstorage.com
    mtr -6 --tcp --port 443 -brw fsn1.your-objectstorage.com

Measure download speeds

We host test files at fsn1-speed.hetzner.com. Use curl or wget, for example, to download one of the test files to the device on which the S3 client is running, and measure the download speed. The examples below download the file 100MB.bin from fsn1-speed.hetzner.com. With further tests, change the file names accordingly.

  • Linux / Windows (WSL)

    curl -4 -w "\nIP: %{local_ip}\nTime: %{time_total}\n\n" https://fsn1-speed.hetzner.com/100MB.bin -o 100MB.bin
    curl -6 -w "\nIP: %{local_ip}\nTime: %{time_total}\n\n" https://fsn1-speed.hetzner.com/100MB.bin -o 100MB.bin

    The command will output the download time and your IP. In most cases, this will be a local IP. To get the actual external IP, run:

    curl -4 https://ip.hetzner.com
    curl -6 https://ip.hetzner.com

  • Windows (PowerShell)

    curl.exe -4 -w "\nIP: %{local_ip}\nTime: %{time_total}\n\n" https://fsn1-speed.hetzner.com/100MB.bin -o 100MB.bin
    curl.exe -6 -w "\nIP: %{local_ip}\nTime: %{time_total}\n\n" https://fsn1-speed.hetzner.com/100MB.bin -o 100MB.bin

    The command will output the download time and your IP. In most cases, this will be a local IP. To get the actual external IP, run:

    curl.exe -4 https://ip.hetzner.com
    curl.exe -6 https://ip.hetzner.com