I bet there are a lot of German users in this forum where the Fritzbox is very popular, right? Or is the Fritzbox popular somewhere else?
Maybe somebody can tell me how to do the following:
I just want to use Syncthing in my local network. Never outside!
I don’t want to turn on UPnP.
Disclaimer: It works great with UPnP turned on in the Fritzbox but I cannot turn it on “globally” for security reasons. If it were only me connected to the Fritzbox it would be no problem turning UPnP on.
It actually works without turning on UPnP. But it gives this annoying Notice: “Failed to create UPnP port mapping”. Should I worry about this?
I also tried to set up the port forwards manually (identical to the automatic port forwards set up by UPnP) and then entering the IP:port into SyncThing settings. But this did not work.
What are the best settings for somebody who wants to use SyncThing only locally without UPnP turned on?
So if you don’t want UPnP, don’t use it.
There is a checkbox in the options not to use it.
If you set up port forwarding manually, it should work just as well, but you might need to map the same external port as the internal port (separate ports on separate devices I guess).
If you want to use it only within LAN, disable global discovery, and local discovery should do the job.
You can even set up specific lan addresses if you wish.
“Doesn’t work” can only be fixed when there are some logs to look at
Perhaps try running with STTRACE=discovery to see if the devices are finding each other.
I just want the best sync data rate possible just inside my home network. If this works without using UPnP or manual port forwards: even better!
What are the best settings for the Fritzbox to achieve this?
I currently deactivated UPnP and Global Discovery. For “Addresses” I use “dynamic” again instead of IP:port I used earlier. Somehow it isn’t really clear to me what the best settings are for what I want to achieve (both for my Fritzbox router and SyncThing). Basically I tried all combinations of settings I could think of and tested it. What made things worse is, that there is a bug with a Windows 8.1 tablet I use, where the connection gets problems when the screen goes dark (standby). After lots of research I found out that a workaround is to switch from the 2.4GHZ to 5GHZ wifi network (I know it sounds crazy but it works).
Anyway. Doing those experiments was hard enough but got crazy because of this stupid bug. I always thought it is due to my settings when I had connection problems.
So, yes, I still hope other Fritzbox users would share their settings (Fritzbox and SyncThing) when using only local sync without UPnP.
Right! In your case you can enter the LAN IP of each PC with SyncThing installed.
Yes, it speeds up the node connection a little bit. The client can connect directly to the given IP and don’t have to ‘search’ in your LAN over mulicast (UDP).
Yes, if your clients have the standard port settings (TCP 22000).
Sadly the documentation doesn’t state what the best “Addresses config” is in case you do only local sync (global discovery and UPnP turned of). It would be nice to undestand how nodes contact each other at startup and what the ‘best’ setting is:
dynamic
192.168.172.22:22000
LAPTOP:22000
I still have ‘dynamic’ at the moment but I am afraid that the connection between nodes could be more stable or the data rate higher with other settings.
You are looking for problems where they don’t exist. Dynamic will use local discovery which will introduce a delay in establishing a connection, laptop:x vs ip:x has no difference as long as other device know hows to resolve the laptop hostname. And none of this affects the transfer speeds.
I’d stick which static ip’s if your router supports that and you know how to set it up, alternatively, use local discovery.
I wonder if it makes sense to use the same port for all nodes? When I look in the console it prints that all but one node will actually use other ports then 22000. They are assigned other ports.
Why do I have to specify a port at all if it is anyway negotiated at startup and set dynamically? At least that’s how it looks to me. Maybe it would help if I knew how Syncthing works when it comes to startup, initial connection, etc.
The code is there. Go read it if you want to learn more.
There is no negotiations happening.
Outbound connections always get a random port assigned by the OS, as they are not listening (inbound) connections and nobody is supposed to connect to them.
So its just a question who will establish the connection first.