Server Version#: 1.16.4.1469
Server setup: host is 10.0.0.43, freebsd-12, plex is 10.0.0.49 (not in my DHCP range) on lo2 in an iocage jail:
% ifconfig
igb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=e527bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
ether 70:85:xx:xx:xx:xx
inet 10.0.0.43 netmask 0xffffff00 broadcast 10.0.0.255
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2
inet 127.0.0.1 netmask 0xff000000
groups: lo
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
.....
lo2: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
inet 10.0.0.48 netmask 0xffffff00
inet 10.0.0.49 netmask 0xffffffff
groups: lo
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
% sudo iocage console plex
# ifconfig
igb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=e527bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
ether 70:85:xx:xx:xx:xx
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
groups: lo
lo1: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
groups: lo
lo2: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
inet 10.0.0.49 netmask 0xffffffff
groups: lo
I’ve been trying to figure out why my server always shows up as remote when accessed via plex.tv, even on my LAN, and I think I’ve narrowed it down to a specific possible cause. I’ve taken care of DNS rebinding, and normal remote access works fine, and accessing directly via 10.0.0.43:32400 works fine.
When I check https://plex.tv/api/resources?X-Plex-Token=xxxxxxxxxxxx, there’s no plex.direct uris at all:
<MediaContainer size="1">
<Device name="xxxxxxx" product="Plex Media Server" productVersion="1.16.4.1469-6d5612c2f" platform="FreeBSD" platformVersion="12.0-RELEASE-p10" device="PC" clientIdentifier="xxxxxxxxxxxxxxxx" createdAt="1566528654" lastSeenAt="1566528657" provides="server" owned="1" accessToken="xxxxxxxxxxxxx" publicAddress="67.xxx.xxx.xxx" httpsRequired="0" synced="0" relay="1" dnsRebindingProtection="0" natLoopbackSupported="1" publicAddressMatches="1" presence="1">
<Connection protocol="http" address="67.xxx.xxx.xxx" port="32400" uri="http://67.xxx.xxx.xxx:32400" local="0"/>
</Device>
</MediaContainer>
The plex remote access page shows Private 0.0.0.0 : 32400 Public 67.xxx.xxx.xxx : 32400, and I assume this is the culprit (no known local IP -> can’t set up DNS rebinding) but I can’t figure out how to get it to pick up its ip in the jail. I tried renaming lo2 to eth0 because I know plex can be picky about interface names, but no dice there either.
Though strangely it still don’t seem to publish plex.direct URIs, which I would like to fix since this breaks secure remote play.
It wasn’t working in Firefox because privacybadger was overeager and nuked all the plex.direct connections and the my.domain connection. Thanks for taking a look