HELP SOS: Syncthing does/does not work with proxy/Tor

Please help :pleading_face: . New Syncthing user. Trying to setup Syncthing between two stock Android devices w/ Tor proxy.

Scenario #1

Downloaded latest Syncthing and Orbot on stock Pixel 4a & 6 from F-Droid. Connected Orbot Tor network successfully. Activated Tor support (settings > experimental > use tor) on both devices. Paired each device

Outcome: paired devices never connect

Scenario 2

Same as above except I manually configure each app proxy to connect to Tor via orbot socks5 proxy (settings > experimental > socks 5 proxy > socks5://

Outcome: paired devices never connect

Scenario 3

Setup one device to connect Syncthing via Tor/Orbot proxy. Configure second device with no Tor/Orbot proxy.

Outcome: devices see each other / connect

Scenario 4

Disable Orbot. Disable Tor. Switch both devices to its own WiFi network and each network transparently routes all data over Tor (blocks all non-tor traffic at network router level).

Outcome: success - devices connect

Scenario 5

Similar to scenario #4 except we configure at device level to transparently proxy all android data over Tor. We do this by enabling VPN in Orbot and in system settings blocking all non-vpn traffic. In Syncthing app we disable Tor/proxy support. Repeat on second device.

outcome: devices connect

Scenario 6

Retested all the above scenarios except with Syncthing-fork android app.

All outcome are the same.

I think proxy implementation in Syncthing app must be part broken. Scenario 4 & 5 show when both devices are in Tor network they can cooperate nicely. However, when this is configured using Syncthing app proxy/tor it is not possible.

Can anyone help me troubleshoot. I would like to setup Syncthing on multiple android devices and route just Syncthing network traffic over Tor.

We do not support “listening” via a socks proxy, as most socks libraries out there do not support it, it’s quite unusual to do that in general.

Also, I am not an expert in Tor, but with my vague imagination of how it works, “listening” on the tor network doesn’t have much meaning, as there isn’t an IP that you could advertise to the discovery server that would make sense and be stable. It’s all based on some sort of onion addresses which I assume is some sort of floating DNS that resolves to different addresses over time.

If all of this is handled by the operating system, and both devices show up like they are part of local network like they would with vpn or something it might work, but from what I understand that’s not how Tor works, so unless you actually implement the onion protocol you can’t really have a point to point connection based on IPs like you would on the normal internet. Also advertising some wonky tor address to discovery servers also makes no sense.

Simply put, I think what you want to do is not possible, one of the devices has to be on the normal internet in order to be sensibly discoverable/reachable.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.