Syncing using a standard client as relay

Is it possible?

I mean I have the current setup:

Client A at home, firewalled, no incoming connections Client B at work, firewalled, no incoming connections Client C on my VPS visible from both A and B

If I share a folder with all 3 it works (of course) But if I share a folder between A and B, but not C it doesn’t work.

I take it client C doesn’t relay between A and B and I’d need a dedicated relayserver for that?

For that matter, I have relaying turned on on A,B and C, but as I said, syncing from A to B (via C or any other relay) doesn’t work. Though there is some connection, because if I setup B to autoaccept folders from A, and I share a folder from A it does get created on B, but the contents are not synced, and the status is always ‘disconnected’

Is this a bug? Or is only metadata synced via relays? or is there some setting I missed?

On a side note, I think it’s very confusing that a folder which is idle because there’s nothing to sync displays as ‘disconneced’ instead of something like ‘idle’.

Folders are never disconnected, devices are.

From what you are describing they should be able to connect via a relay, and from the fact that folders did get created means they did at some point, but not at the moment.

Syncthing doesn’t relay traffic via other devices, only via relays.

Ok that’s good to know. I’ll start looking into running my own relay server to maybe get a bit more reliability in the connection.

Woops, I meant devices. I think it’s very confusing that a device shows up as ‘disconnected’ just because it’s idle. You can look at the small print and see the ‘last seen’ field to see if can connect, but it took me way longer than needed to find out ‘disconnected’ didn’t necessarily mean there was something wrong with the connection.

That’s not the case though: Disconnected means disconnected. My idle devices happily sit around with status “Idle”.

Not when you haven’t shared any folders yet.

Connection status is entirely unrelated to shared folders or in sync status. Any configured non-paused device will be connected if it’s possible to establish a connection.

1 Like

Oh, that means it’s probably bug then.

I have experienced multiple times when setting up syncthing on new computers that all devices show up as Disconnected until I share a folder.

I’ll see if I can reproduce the confusing behaviour on the latest version of Syncthing and file a proper bugreport if it’s still there.

By the way, I succeeded in setting up my own relay server and it works very nicely now. I now have my relay server running on on a work-related vps without any rate limiting to make sure my syncing from machin A to B goes as fast as possible. Because this is a work machine and I’m not at liberty to just use up it’s bandwidth I used the -pools="" option to make it not advertize itself on the relay list. I’m a bit nervous that this means it will still happily relay for everyone who knows it’s ip-address. I don’t think there’s an option to whitelist only certain ids on the relay server?

On a related note I could probably convince the powers that be to also run a rate-limited relay server for the benefit of others. It would be nice if you could specify a default bandwidth rate and also a per connected id rate. That way I could set up a single relay server which is rate-limited for most people and as fast as possible for certain whitelisted ids. But I can probably make do with just running 2 instances of the server.