Coder Social home page Coder Social logo

Comments (8)

Ornias1993 avatar Ornias1993 commented on August 28, 2024 1

If you look carefully, you notice both 443 (default and only-supported ingress port) AND 32400 are listed.
We're also always clear to always also forward port 32400.

But even if you do not forward 32400, it would still try to access via 443
But if your domain is directed to the IP of the Plex host (which is required for ingress) and 32400 is forwarded as well, as we require, then there is absolutely zero issue with using the domain to reach 32400.

But even if that won't work, there is also zero harm listing it.

It's a lost of potentially reachable locations of the plex server.
The design we made for it is hence solid.

This may not work for people who use external reverse proxy configurations

Which we... do not support in any way, shape or form.
But even so, plex has many ways of finding the service. The primary one bing forwarding port 32400.

Custom Server Access URL ... does not respect being overriden

Working as expected, it was never intended to be overridable.


Closed as this is not a bug but either:
a. not a supported setup (when there is another proxy in front and user is not using ingress)
or
b. user not fully understanding the effect of the settings involved

from charts.

Ornias1993 avatar Ornias1993 commented on August 28, 2024 1

I might also have been confused by your issue, because it's not clear and concise and the title does not match your issue content (anymore?).

I've added a explicit ingress reference using port :443 as well now, but its still best-effort.

from charts.

bpbradley avatar bpbradley commented on August 28, 2024

Sigh.... After all that I noticed the option for Additional advertise URLs. I set this to https://ingress:443 and it works. Still, the automatic setting of the correct ingress port is likely a bug. But this is a workaround.

Note that for plex, the :443 is indeed necessary. If you do not specify a port, even if it is the default https port, plex will default to whatever is set in the remote access configuration, not 443.

from charts.

bpbradley avatar bpbradley commented on August 28, 2024

If you look carefully, you notice both 443 (default and only-supported ingress port) AND 32400 are listed.

It is not. As I mentioned, Plex does not default to port 443 if a port is not specified. Plex defaults to the remote access port.

image-2.png

And again, I don't know what adding 32400 will do exactly. This may accidentally work on a local network if using split DNS and your Plex IP is the same as your Traefik IP. But it's redundant since IP:32400 is already included.

This means that none of the supplied custom access URLs will work externally. The only one having an effect internally is the IP:PORT. There is a reason mine breaks external access every time I restart the app. I rely on the custom server access URL being correct for my remote access to work.

You can confirm for yourself that this does not work with the steps below.

Note: You may need to first have remote access enabled at some point to trigger the bug, I am not sure on that but I think so. For full info, I previously had remote access enabled via a random specified port (not using UPnP). Again, this may be irrelevant but I don't know EXACTLY how plex handles this in all cases so just noting for full disclosure.

  1. Now, remove your local IP from the custom server access URL so that you must rely on provided ingress based routes. Note that the :32400 route may work if your traefik IP is the same as your plex IP, but probably still not since https would not work in this case. I cannot confirm this part since my Traefik IP is different than my plex IP (which is a supported setup via MetalLB)
  2. Wait a minute, Open plex.tv/web in incognito tab and sign in. You may also need to refresh.
  3. Plex will be unable to locate your server even though remote access is disabled and the ingress urls are set according to your intended behavior:
    image
    image
    image
  4. Add :443 to your url
    image
  5. Refresh
  6. Plex will find your server immediately.
    image

A workaround is to set your remote access port to 443 so that Plex defaults to it.

b. user not fully understanding the effect of the settings involved

Can you clarify what I'm not understanding? As I said, this is very reproducible and is in clear conflict with Plex's documentation.

from charts.

Ornias1993 avatar Ornias1993 commented on August 28, 2024

The list of IPs, domain names and their ports, are a best effort guess on where the sever might be.
Users are free to customise them to their liking.

For external access we advice to expose 32400 as well as any ingress used.

from charts.

bpbradley avatar bpbradley commented on August 28, 2024

I might also have been confused by your issue, because it's not clear and concise and the title does not match your issue content (anymore?).

I've added a explicit :443 port reference as well.

Yes, that was my intention of the follow up comment. My main issue is relevant, but there is a workaround available. And the root cause I should have been more direct about in the issue, but I did try to specify it directly in my follow up comment. I considered creating a new issue but figured that would be annoying. Sorry for the confusion.

The list of IPs, domain names and their ports, are a best effort guess on where the sever might be. Users are free to customise them to their liking.

For external access we advice to expose 32400 as well as any ingress used.

But again, the two provided ingress urls do in fact do nothing due to how plex handles these. The only one with any effect is the IP:PORT, which does not work when proxying remote traffic. A common plex setup is to port forward 443 to your reverse proxy, and then use custom server access url for server discovery remotely. This is a more secure (and more broadly compatible for numerous reasons I could get into) remote access setup.

Because https is not defaulted to 443 by Plex (for god knows what reason), the intended behavior of adding the ingress routes do not work.

Byt yes, adding :443 will fix this. I still am of the opinion that the third url doesn't do anything that the IP:PORT doesn't already do though (the :32400). Of course it doesn't cause issues, but you may as well add dfsdfsdfwefwef.asdasd.com:12345 for that matter lol.

from charts.

Ornias1993 avatar Ornias1993 commented on August 28, 2024

I considered creating a new issue but figured that would be annoying.

Please next time feel free to file seperate issues for seperate, well, issues

from charts.

Ornias1993 avatar Ornias1993 commented on August 28, 2024

But again, the two provided ingress urls do in fact do nothing due to how plex handles these

All urls are validated by us to have a usecase

to your reverse proxy, and then use custom server access url for server discovery remotely.

We do not support any other reverse proxies put in front of our charts other than Ingress and Traefik.
So for us this is not relevant.

Even so you can just add it using the option we give to append your own url.

This is a more secure (and more broadly compatible for numerous reasons I could get into) remote access setup.

This is not more-secure than just using ingress

I still am of the opinion that the third url doesn't do anything that the IP:PORT doesn't already do though (the :32400)

You can have all sorts of opinions, we've validated that this has a usecase on klipperLB

from charts.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.