A week ago I reinstalled the Syncthing Plugin on my TrueNAS and configured my previous setup.
I got a TrueNAS, Android phone, Windows and Linux machine. They all are able to discover each other, except TrueNAS and Android. Before the reinstallation they could see each other without a problem.
I tried to remove the Android Device from TrueNAS and TrueNAS from Android and readd them. The logs do not show any information about them.
This is the log of the TrueNAS after I did restart it and added the Android device (cut up links, because of new-user-restrictions):
2021-06-20 03:32:07 My ID: XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX
2021-06-20 03:32:08 Single thread SHA256 performance is 528 MB/s using minio/sha256-simd (458 MB/s using crypto/sha256).
2021-06-20 03:32:08 Hashing performance is 439.81 MB/s
2021-06-20 03:32:08 Overall send rate is unlimited, receive rate is unlimited
2021-06-20 03:32:08 Relay listener (dynamic+https ://relays. syncthing. net/endpoint) starting
2021-06-20 03:32:08 Using discovery mechanism: global discovery server https://discovery. syncthing. net/v2/?noannounce&id=AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA
2021-06-20 03:32:08 QUIC listener ([::]:22000) starting
2021-06-20 03:32:08 Using discovery mechanism: global discovery server https: //discovery. syncthing. net/v2/?nolookup&id=AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA
2021-06-20 03:32:08 Using discovery mechanism: global discovery server https: //discovery. syncthing. net/v2/?nolookup&id=AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA-AAAAAAA
2021-06-20 03:32:08 TCP listener ([::]:22000) starting
2021-06-20 03:32:08 ...
2021-06-20 03:32:08 Using discovery mechanism: IPv4 local broadcast discovery on port 21027
2021-06-20 03:32:08 Using discovery mechanism: IPv6 local multicast discovery on address [XXXX::XXXX]:21027
2021-06-20 03:32:08 Ready to synchronize "SHARED-DIR-ONE" (aaaaa-aaaaa) (sendreceive)
2021-06-20 03:32:08 Ready to synchronize "SHARED-DIR-TWO" (bbbbb-bbbbb) (sendreceive)
2021-06-20 03:32:08 GUI and API listening on 127.0.0.1:8384
2021-06-20 03:32:08 Access the GUI via the following URL: http: //127 .0 .0. 1:8384/
2021-06-20 03:32:08 My name is "HOSTNAME"
2021-06-20 03:32:08 Device YYYYYYY-YYYYYYY-YYYYYYY-YYYYYYY-YYYYYYY-YYYYYYY-YYYYYYY-YYYYYYY is "HOSTNAME-LINUX" at [dynamic]
2021-06-20 03:32:08 Device ZZZZZZZ-ZZZZZZZ-ZZZZZZZ-ZZZZZZZ-ZZZZZZZ-ZZZZZZZ-ZZZZZZZ-ZZZZZZZ is "HOSTNAME-WINDOWS" at [dynamic]
2021-06-20 03:32:08 Completed initial scan of sendreceive folder "SHARED-DIR-ONE" (aaaaa-aaaaa)
2021-06-20 03:32:08 Completed initial scan of sendreceive folder "SHARED-DIR-TWO" (bbbbb-bbbbb)
2021-06-20 03:32:08 Established secure connection to ZZZZZZZ-ZZZZZZZ-ZZZZZZZ-ZZZZZZZ-ZZZZZZZ-ZZZZZZZ-ZZZZZZZ-ZZZZZZZ at 172. 16. 0. 2:22000-ZZZ. ZZZ. ZZZ. ZZZ: 22000/tcp-client/TLS1.3-TLS_AES_128_GCM_SHA256
2021-06-20 03:32:08 Device YYYYYYY-YYYYYYY-YYYYYYY-YYYYYYY-YYYYYYY-YYYYYYY-YYYYYYY-YYYYYYY client is "syncthing v1.17.0" named "HOSTNAME-WINDOWS" at 172. 16. 0 .2 :22000-ZZZ.ZZZ.ZZZ.ZZZ:22000/tcp-client/TLS1.3-TLS_AES_128_GCM_SHA256
2021-06-20 03:32:18 quic://0 . 0. 0. 0:22000 detected NAT type: Symmetric NAT
2021-06-20 03:32:18 Detected 1 NAT service
2021-06-20 03:32:43 Joined relay relay: //BBB .BBB .BBB .BBB:22067
Syncthing Versions:
Android v1.17.0(-dirty)
TrueNAS v1.15.1
A screenshot from the GUI (does look the same on both devices):
Do you have discovery disabled? Or you might have logs with errors trying to reach discovery servers, as it hasn’t found any addresses for the other device.
Discovery shouldn’t be the problem, as all devices are discoverable by some other.
I disabled ‘Global Discovery’ on all devices and they behave as before.
Windows <—> Android
Windows <—> TrueNAS
Android <-/-> TrueNAS
Is there any way to get more debugging information that might narrow down to the cause?
And the funky NAS just creates a FreeBSD jail configured with VNET, NAT and ‘NAT Port forwarding’, if that information helps.
This just means that your systems does not have IPv6 connectivity, no problem as long as IPv4 is working.
Your Android can’t reach any discovery server. This is a problem. This only leaves local discovery as an option, but that is known to be problematic on Android (due to system restrictions).
@Nummer378 thanks a lot for those informations.
I reinstalled Syncthing on my Android phone (maybe a restart of the phone would have done the same). Now there is a 5/5 at ‘Discovery’ and it does connect to TrueNAS! Weirdly it seems like it’s enough when ‘Global Discovery’ is enabled only on the TrueNAS. But maybe that makes more sense to someone with knowledge about the backend.
Is there any current discussion about how the discovery status is displayed? It’s a bit confusing for me, if 4/5 means e.g. four out of five steps to a ‘perfect’ connection. For someone who has zero knowledge of the discovery process, 3/5 may seem like ‘good enough’.
Perhabs it would be helpfull if 3/5 is colored red and 4/5 is also colored green. If 3/5 means that discovery is not functional and 4/5 is functional for ipv4, which is sufficient.
EDIT: I know a failed ipv6 connection can have a lot of causes and maybe desired, in which case green is also misleading.
I think that’s not particularly complex: Those are links, but not styled as links (except on hover) - that’s bad and should be changed (like e.g. the device ID).
Yes, that could be a solution. But only a different style doesn’t necessarily show that it links to an error or does fit with sourrounding layout. My second thought was to show an error icon (e.g. red triangle with exclamation mark in it) next to the x/5, which can be clicked.
Also the discovery status could be split up somehow (different icons/descriptions for different connection methods). Which may help or may confuse more. Maybe categorizing the (now) hidden errors helps new user better.
That’s why I said it seems more complex and could benefit from more input of different users, to find a long lasting solution.