Server Version#: 1.32.3.7162-b0a36929b
Player Version#: N/A
Installed a new QEMU KVM guest VM running Ubuntu 22.04. I then installed Plex Media Server and installation completed without any errors.
The issue I’m having is when I connect to PMS running at http://:32400/web and try to click the “Claim Server” button. It spins and spins for a while and eventually I get the “Claim Server” button back.
The host has a bridge interface (br0) and the VM network source is this bridge interface. The VM is on the network, able to resolve hostnames and is able to ping different public ip addresses.
Ubuntu firewall is not turned on and there is no VPN in the configuration.
I do see the following messages in the Plex Media Server log file, when trying to do a claim:
WARN - NetworkServiceBrowser: Error sending out discover packet from 192.X.Y.Z to 239.255.255.250: Operation not permitted
un 13, 2023 15:21:09.324 [140349064768312] DEBUG - Request: [192.X.Y.Z:38552 (Subnet)] POST /myplex/claim?token=xxxxxxxxxxxxxxxxxxxxx5ED65 (3 live) #a9 GZIP
DEBUG - [Req#a9/HCl#1f] HTTP requesting POST https://plex.tv/api/claim/exchange?token=xxxxxxxxxxxxxxxxxxxxx5ED65
DEBUG - [HttpClient/HCl#1f] HTTP simulating 408 after curl timeout
DEBUG - [Req#a9] MyPlex: Did token exchange for claim (returnCode: 408)
DEBUG - [Req#a9] MyPlex: Got a token poked, let’s act on it.
DEBUG - [Req#a9/HCl#20] HTTP requesting GET https://plex.tv/api/v2/user/privacy?X-Plex-Token=
DEBUG - [HttpClient/HCl#1a] HTTP simulating 408 after curl timeout
DEBUG - [Req#ae] MyPlex: Did token exchange for claim (returnCode: 408)
DEBUG - [Req#ae] MyPlex: Got a token poked, let’s act on it.
DEBUG - [Req#ae/HCl#1c] HTTP requesting GET https://plex.tv/api/v2/user/privacy?X-Plex-Token=
Also, running “curl -L plex.tv” works on the KVM host but it hangs when I run it in the VM.
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 <IP_of_my_modem/router> 0.0.0.0 UG 0 0 0 enp1s0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 enp1s0
And the output from ‘resolvectl’:
Global
Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
resolv.conf mode: foreign
Current DNS Server: <IP_of_my_modem/router>
DNS Servers: <IP_of_my_modem/router>
DNS Domain: ISP_domain
Link 2 (enp1s0)
Current Scopes: DNS
Protocols: +DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
Current DNS Server: <IP_of_my_modem/router>
DNS Servers: <IP_of_my_modem/router>
DNS Domain: ISP_domain
Do you receive curl results for the following IP addresses (dig results for plex.tv in the US Southeast)?
;; ANSWER SECTION:
plex.tv. 49 IN A 52.18.248.32
plex.tv. 49 IN A 54.77.103.183
Or, you could run a dig on the host for plex.tv and see if you can curl those in the VM. The inability of curl to reach plex.tv is probably contributing to your issue. I’m curious to see if the bare IP addresses can be reached. If not, it could imply a routing issue.
On the host:
curl -L plex.tv works but not “curl -L 52.18.248.32” or “curl -L 54.77.103.183”. It fails with the error:
“curl: (35) error:0A000458:SSL routines::tlsv1 unrecognized name”
On the guest:
curl -L plex.tv doesn’t work and neither does the curl with IP addresses.
For bare IP addresses, leave off the “-L” from the command. You should see “Moved permanently” on both the host and the guest with the IP addresses. This is more a test of whether curl can reach the IP addresses.
In troubleshooting this issue, i accidentally deleted the network config in NetworkManager and now I need to fix that before I can get back to this.
The issue is Im able to ping my ISP router but nothing else beyond that.
Im using the virt-manager GUI to create the vm. Also, im running the browser on the host when i connect to the vm at http://<guest_ip>:32400/web and then clicking the Claim Server button after logging in to plex.tv.
If the VM is on the same LAN subnet,
You and it are in on a RFC-1918 subnet (192.168.x.x is RFC-1918 compliant)
AND
you’re using the IP address (no Host or Domain name) to claim it.
AND
the DNS and gateway in the VM matches your host config
THEN
it should be working provided there are no firewalls active in the VM.
If you do have a firewall active, you’ll need to open the following ports.
Yes, that worked. Turns out, the issue was using hostname when doing the claim rather than the ip address. When I used the ip address, I didnt even have to click the claim button, it already was claimed when I logged in.
I guess Plex doesn’t use entries in /etc/hosts file? I had the ip hostname defined in that file but it didn’t matter.