Assistance needed - syncing Linux laptop and phone fail

I am attempting to make a simple Syncthing setup - syncing Archlinux laptop and Android 10 phone. Just installing, out of box doesn’t work for me. Both local or global discovery doesnt work. What I am doing wrong ?

Thank you !

Remote device settings on both side:

Auto Accept - checked
Introducer  - checked
All synced Folders - checked. 
Address - dynamic.

Folder settings on both side:

Sharing to "remote device" - checked
Watch for Changes - checked
Full Rescan Interval (s) - 60
Folder Type - send & receive
File Pull Order - random
Minimum Free Disk Space - 1%
Ignore Permissions - unchecked

On Syncthing settings:

Sync Protocol Listen Addresses - default
Enable NAT traversal - checked
Local Discovery - checked
Global Discovery - checked or unchecked doesn't give any effect

Situation on laptop side (ID’s are stripped):

# systemctl status syncthing@user
● syncthing@user.service - Syncthing - Open Source Continuous File Synchronization for user
     Loaded: loaded (/usr/lib/systemd/system/syncthing@.service; enabled; vendor preset: disabled)
     Active: active (running) since Wed 2022-04-20 14:00:51 EEST; 1 day 6h ago
       Docs: man:syncthing(1)
   Main PID: 3489 (syncthing)
      Tasks: 14 (limit: 4689)
     Memory: 26.6M
        CPU: 1min 53.780s
     CGroup: /system.slice/system-syncthing.slice/syncthing@user.service
             ├─3489 /usr/bin/syncthing serve --no-browser --no-restart --logflags=0
             └─3494 /usr/bin/syncthing serve --no-browser --no-restart --logflags=0

apr   20 14:44:01 archlinux syncthing[3489]: [3Q537] INFO: Stopped using discovery mechanism:  global discovery server https://discovery-v4.syncthing.net/v2/?nolookup&id=...>
apr   20 14:44:01 archlinux syncthing[3489]: [3Q537] INFO: Stopped using discovery mechanism:  global discovery server https://discovery-v6.syncthing.net/v2/?nolookup&id=...>
apr   20 14:44:15 archlinux syncthing[3489]: [3Q537] INFO: Pausing ...
apr   20 14:44:19 archlinux syncthing[3489]: [3Q537] INFO: Resuming ...
apr   20 15:08:00 archlinux syncthing[3489]: [3Q537] INFO: Using discovery mechanism: global discovery server https://discovery.syncthing.net/v2/?noannounce&id=...>
apr   20 15:08:00 archlinux syncthing[3489]: [3Q537] INFO: Using discovery mechanism: global discovery server https://discovery-v4.syncthing.net/v2/?nolookup&id=...->
apr   20 15:08:00 archlinux syncthing[3489]: [3Q537] INFO: Using discovery mechanism: global discovery server https://discovery-v6.syncthing.net/v2/?nolookup&id=...->
apr   20 22:38:50 archlinux syncthing[3489]: [3Q537] INFO: quic://0.0.0.0:22000 resolved external address quic://8.40.140.162:22000 (via stun.syncthing.net:3478)
apr   21 15:29:10 archlinux syncthing[3489]: [3Q537] INFO: quic://0.0.0.0:22000 resolved external address quic://8.40.140.193:22000 (via stun.syncthing.net:3478)
apr   21 17:55:24 archlinux syncthing[3489]: [3Q537] INFO: quic://0.0.0.0:22000 resolved external address quic://8.40.140.163:22000 (via stun.syncthing.net:3478)

Now I start Syncthing app on Android phone and nothing happens. Folders on laptop are UP TO DATE, Folders on phone are IDLE.

Web interface on laptop about remote device shows me DISCONNECTED:

|Last seen|2022-03-01 18:46:58|
| --- | --- |
|Address|dynamic
quic://10.24.201.51:22000
<small>no recent network activity (20:48:31)
</small> quic://172.16.0.2:22000
<small>connected to self (20:48:52)
</small> quic://192.168.43.1:22000
<small>no recent network activity (20:48:56)
</small> quic://8.40.140.153:22000
<small>no recent network activity (20:48:31)
</small> quic://[2a09:bac0:128::828:8c99]:22000
<small>no recent network activity (20:48:31)
</small> tcp://10.24.201.51:22000
<small>i/o timeout (20:48:21)
</small> tcp://172.16.0.2:22000
<small>received unexpected handshake message of type *tls.clientHelloMsg when waiting for *tls.serverHelloMsg (20:48:01)
</small> tcp://192.168.43.1:22000
<small>i/o timeout (20:48:11)
</small> tcp://8.40.140.153:22000
<small>i/o timeout (20:48:21)
</small> tcp://[2a09:bac0:128::828:8c99]:22000
<small>i/o timeout (20:48:21)
</small>|
|Introducer|Yes|

Web interface on phone about remote device tells me:

 Last seen 2022-03-01 18:47:33
 Address dynamic
quic://172.16.0.2:22000
connected to self (20:51:31)
quic://192.168.43.151:22000
no recent network activity (20:51:36)
quic://8.40.140.163:22000
no recent network activity (20:51:41)
quic://[2a09:bac0:128::828:8ca3]:22000
no recent network activity (20:51:41)
tcp://172.16.0.2:22000
received unexpected handshake message of type *tls.clientHelloMsg when
waiting for *tls.serverHelloMsg (20:51:57)
tcp://192.168.43.151:22000
i/o timeout (20:52:07)
tcp://8.40.140.163:22000
i/o timeout (20:51:31)
tcp://[2a09:bac0:128::828:8ca3]:22000
i/o timeout (20:51:31)
 Introducer Yes

Just to confirm, you’re using the newest versions of Syncthing on both sides, right? The current version is v1.19.2.

You may also want to check the Web GUI on Android (available through the left slide-out menu) to check whether there’s anything suspicious there. Also, in general, screenshots of the Web GUI from all affected devices are always welcome.

The problem is almost solved. Both - laptop and phone were connected to Cloudflare WARP and Syncthing works well when turning both VPN’s OFF. And now I seem to have to rephrase my question:

Is it possible to sync locally by keeping vpn (e.g. Cloudflare WARP) open at both ends? The phone is a personal hotspot for laptop. Both devices connect to internet via Wireguard w/Cloudflare warp profiles.

Syncthing is 1.19.2

Can you mention how you have solved this problem?

Hi !

For local discovery you have to allow some changes to your firewall setup.

https://docs.syncthing.net/users/firewall.html