Hello everybody,
i’ve experienced slow transferrates in my LAN. It is even worse when trying to access the devices via the external internet. I think it is because my setup falls back to general relay-servers, but i am not sure how to configure it correctly. Any help?
My current setup is like this:
-
Desktop PC Windows 10. The client. Syncthing 16.1 Stable channel.
-
Desktop PC Fedora Server 34 (accessed via commandline, LAN Web GUI and SSH if necessary), Syncthing 15.1 Fedora Package.
-
And a few others that were not running/important for this test.
Both computer have a SSD harddrive. The windows pc is connected via wifi (ca. 144 MBit/s) to the router, the Fedora Server is connected to the router via cable (100 Mbit/s).
I try to work with this guide: Firewall Setup — Syncthing v1 documentation
Ports have been opened in my 7490 fritzbox router via the function: “selbsständige Portfreigabe”, which roughly translates to “autonomious enabled port”. My firewall on the Fedora Server has been configured according to the firewall guide.
My firewall on my windows pc has not been changed from standard settings. In addition to windows firewall there is Comodo firewall in standard settings as well.
Following picture shows how the connection gets established:
As you can see it detects a port restricted NAT. I am afraid of opening too many Ports to the internet.This one shows the speed:
The file i was transfering was a 400 megabyte 7zip file. Upload speed was roughly 4 MBit/sI would expect to have a transferspeed of roughly 100+x MBit/s within my LAN. It was working with pretty fast speeds once before, but that was weeks ago and i don’t remember under which configurations. Back then i was fiddling with other things, so did not focus on that.
I am particularly intrigued why it would try to connect to relay servers even though i am in the LAN, or to say it differently: I don’t know how to properly establish a “direct connection” between the devices. I suppose a direct connection is supposed to be a port forward? The following paragraph in the guide doesn’t give me enough information on how to do that exactly. I also don’t know how to do this if i want to connect to a computer that is not in my local network. Is it only possible if i configure it with the IP-Adress given by my internetprovider? But that one changes every now and then when my router resets…
Port Forwards*
If you have a NAT router which supports UPnP, the easiest way to get a working port forward is to make sure UPnP setting is enabled on both Syncthing and the router – Syncthing will try to handle the rest. If it succeeds you will see a message in the console saying:
Created UPnP port mapping for external port XXXXX on UPnP device YYYYY.
If this is not possible or desirable, you should set up a port forwarding for ports 22000/TCP and 22000/UDP (or whichever port is set in the Sync Protocol Listen Address setting). The external forwarded ports and the internal destination ports have to be the same (e.g. 22000/TCP).
Communication in Syncthing works both ways. Therefore if you set up port forwards for one device, other devices will be able to connect to it even when they are behind a NAT network or firewall.
*In the absence of port forwarding, Relaying may work well enough to get devices connected and synced, but will perform poorly in comparison to a direct connection."