mattttvaughn / chronicle

GNU General Public License v3.0
217 stars 60 forks source link

Remote Access Only Working If Login is Done Remotely #9

Open mattttvaughn opened 2 years ago

mattttvaughn commented 2 years ago

A user has reported behavior where they can only reach their server remotely (e.g. not over local network) if they login over a remote connection (not over local network)

Steps to reproduce:

Workaround

I have not confirmed this behavior on my end, so I can't confirm whether this behavior generalizes to all servers. I'll update the issue if that is figured out

brianmiller commented 2 years ago

Thanks for creating the tracker.

I'm going through more testing and discovered Chronicle eventually fails with the same message once switching back to an external network.

I.e.:

The error message: k.c.a.a.l.1.v.: Unable to connect to https://my-ip-address-as-a-string.<somesortofuuid>.plex.direct:32400/library/parts/180850/1634953121/file.m4b

I can see the TLS cert offered by this URL is valid but signed by Let's Encrypt with a SAN of: `DNSName=*.<somesortofuuid>.plex.direct.

Let's Encrypt recently had a globally severe outage due to a X3 renewal/replacement. I don't suspect this is an issue because Chronicle works fine when connected internally.

Do any detailed logs exist in Android?

brianmiller commented 2 years ago

Well...

It must be related to the m4b bug(s) with Plex.

In Plex, Settings > Remote Access > "Limit remote stream bitrate" switching from my desired setting of "8Mbps (1080p)" to "Original (No limit)" completely solved my issue and Chronicle appears to be working great, both inside and outside of my network.

I unfortunately can't keep it like this...I don't have that fancy fiber internet :/. I'm on 1Gbps/40Mbps and I don't really want to convert my entire library to something other than M4B.

The Plex bugs indicate a "fix" is going to be added to Plex, but I haven't been able to verify this.

I'm on Plex 1.24.5.5173.

ggrensteiner commented 2 years ago

This is a plex server issue. You can fix it by remapping *.plex.direct to your internal address in your firewall's DNS.

To verify that this is the same issue you can try to use the plex app in android to download a show (feature used to be called sync). It will fail on internal network and work on external, just like the chronicle app does.