Server LAN access showing as remote for bridge network mode

Server Version#: 1.41.7.9823
Player Version#: 1.109.0.329-ea562b95

Using docker image plexinc/pms-docker

Having spent a few hours reading on here, reddit, and trying with various AI’s, I’m managing resolve an issue I was having, and through I’d post the solution, incase it helps others.

In my docker compose, I used the default setting of

network_mode: bridge

As a result, I seemed to hit max speeds of ~80Mbps, and my ‘local’ traffic would be shown as remote.

Setting network_mode: host, resolved the issue (traffic showed local, got full speed), however not an ideal solution if you have a lot of docker containers.

Multiple recommendations to set the below (also noted in the docker docs GitHub - plexinc/pms-docker: Plex Media Server Docker repo, for all your PMS docker needs.)

ADVERTISE_IP=“http://(ip of the docker host, eg 192.168.1.100, not the docker ip):32400/”

This had no effect, traffic showed as remote, and limited to ~80Mbps.

The silliest of solutions…remove the quotes!

ADVERTISE_IP=192.168.1.100:32400/

After this change, full speed, local traffic showed as local. :man_facepalming:

Just to list the other network related settings I have.

Secure connections: Preferred
LAN Networks: 192.168.1.0/24,172.20.0.0/16 my local subnet, my docker subnet
Custom server access URLs: http://192.168.1.100:32400/ as per the ADVERTISE_IP, no quotes
Treat WAN IP As LAN Bandwidth - unticked
Enable Relay - unticked

Hopefully this helps somebody who doesn’t want to switch to host mode. :+1:

You need to use “Host network”.
“Bridge” is inserting an additional layer of NAT.

I agree, the easiest option is to set network_mode: host.

However, I personally don’t like using host mode, as it tends to circumvent the additional security you get from the bridge layer, and allows containers to have full host network access.

As stated in my post, ‘if you don’t want to use host’ (my use case and probably others), then removing he quotes around the host in the ADVERTISE_IP, as suggested in the documentation will allow Plex to run at full speed network, and allow the players to connect ‘locally’

There is none. Containerization doesn’t add security (at least not much). Its main strength is easy deployment.
And in this case, where the server has to be accessible not only from the WAN, but equally from the LAN there is just no sense in bridging.

Ok, thanks.

In my case, I have 2 Plex servers on 2 difference docker hosts. Simply using 32401:32400 was a lot simpler than messing around with local port mapping to get both servers to be connectable from the outside world.

Anyway, I feel we’re getting a little offtrack :slight_smile:

The docs suggest bridge mode is the default, so I suspect there will be others out there attempting to use this (there are numerous posts on this forum)

My initial post was simply to highlight, the documentation of ‘ADVERTISE_IP’ caused me issues, and potentially others.

For context.

ADVERTISE_IP=http://192.168.0.100:32400/ - Plex will run at ~full speed network, clients will show as ‘local’ traffic.

ADVERTISE_IP=“http://192.168.0.100:32400/” - Plex will run at ~80Mbps, clients will show as ‘remote’ traffic.

This is simply 'if (for whatever your reasons are) you don’t want to use host network mode, then removed the quotes, will allow clients to connect properly’.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.