-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Description
⚠️ Before posting ⚠️
- This is a bug, not a question or an enhancement.
- I've searched for similar issues and didn't find a duplicate.
- I've written a clear and descriptive title for this issue, not just "Bug" or "Crash".
- I agree to follow Nextcloud's Code of Conduct.
Steps to reproduce
-
All devices are connected in the same Tailscale net.
-
Create a standard Nextcloud instance with docker.
-
Reverse-proxy this instance through a second docker Nginx container.
-
Generate a Tailscale HTTPS certificate, and apply to nginx proxy config.
-
Run the instance!
-
Connect to Nextcloud with another device on the tailscale network, ie: cloud.tailxxxxx.ts.net. Complete setup.
-
Connect Android device to Tailscale.
-
Try to connect with Android client through a Tailnet address (like cloud.tailxxxxx.ts.net). FAILS with "Server not found"
Expected behaviour
Android client should connect.
Actual behaviour
Client fails with "Server not found".
Note that this is very much an Android-client only issue! ON the exact same Android phone, without changing any connection, I can load the nextcloud page through firefox without any trouble. I also have tested this on a Macbook and the ipad app from the app store, all of which also work fine.
Android version
13
Device brand and model
Samsung S21+
Stock or custom OS?
Stock
Nextcloud android app version
Nextcloud-android/20221227 (dev)
Nextcloud server version
25.0.2
Using a reverse proxy?
Yes
Android logs
Abbreviated log; my tailnet info, etc. changed.
12-31 00:31:48.980 14616 14616 D InputMethodManager: startInputInner - Id : 0
12-31 00:31:48.980 14616 14616 I InputMethodManager: startInputInner - mService.startInputOrWindowGainedFocus
12-31 00:31:48.982 14616 14616 D OperationsService: Starting command with id 22
12-31 00:31:48.983 14616 14665 D OwnCloudClient #0: REQUEST GET /status.php
12-31 00:31:48.986 14616 14665 D AdvancedSslSocketFactory: Creating SSL Socket with remote <MY.TAILNET>.ts.net:443, local null:0, params: org.apache.commons.httpclient.params.HttpConnectionParams@e05850a
12-31 00:31:48.986 14616 14665 D AdvancedSslSocketFactory: ... with connection timeout 50000 and socket timeout 50000
12-31 00:31:48.991 14616 14665 D TrafficStats: tagSocket(153) with statsTag=0xffffffff, statsUid=-1
12-31 00:31:48.991 14616 14665 I ServerNameIndicator: SSLSocket implementation: org.conscrypt.Java8EngineSocket
12-31 00:31:48.991 14616 14665 I ServerNameIndicator: SNI done, hostname: <MY.TAILNET>.ts.net
12-31 00:31:49.092 14616 14665 W HttpMethodBase: Going to buffer response body of large or unknown size. Using getResponseBodyAsStream instead is recommended.
12-31 00:31:49.092 14616 14665 E GetStatusRemoteOperation: Connection check at https://<MY.TAILNET>.ts.net: The Nextcloud server is not configured!
12-31 00:31:49.092 14616 14665 D GetStatusRemoteOperation: establishing secure connection failed, trying non secure connection
12-31 00:31:49.092 14616 14665 D OwnCloudClient #0: REQUEST GET /status.php
12-31 00:31:49.092 14616 14665 D TrafficStats: tagSocket(81) with statsTag=0xffffffff, statsUid=-1
12-31 00:31:49.106 14616 14665 E GetStatusRemoteOperation: Connection check at http://<MY.TAILNET>.ts.net: Local file does not exist
12-31 00:31:49.106 14616 14665 D OperationsService: Called 1 listeners
12-31 00:31:49.106 14616 14665 D OperationsService: Stopping after command with id 22
12-31 00:33:25.547 14616 14616 I ViewRootImpl@b620148[AuthenticatorActivity]: ViewPostIme pointer 0
12-31 00:33:25.592 14616 14616 I ViewRootImpl@b620148[AuthenticatorActivity]: ViewPostIme pointer 1
Server error logs
<SERVER IP> - - [31/Dec/2022:00:39:55 +1100] "GET /status.php HTTP/1.1" 200 151 "-" "Mozilla/5.0 (Android) Nextcloud-android/20221227"Additional information
The server is definitely seeing the Android request status.php, though I'm unsure why it's insisting the server isn't configured.
I can get the Android client to work IF I point it directly at the internal (not tailscale) dns name.