Man… it’s always some silly thing… Jesus! All this time. Well, but it’s not actually solved, original quality doesn’t work for me. My phone has only 64GB, lots of it dedicated to all the apps and OS.
I can confirm that the disabling “Enable DNS Rebind Protection” resolves this issue. For those with Verizon Fios routers you can add exception for your Plex server and that will at least protect your network.
Plex fix your ■■■■
for me the exception in my router don’t work…
05-04 07:02:29.378 e: Stacktrace: java.net.SocketTimeoutException: failed to connect to 123-97-5-123.532452452b81b45c93823508fd909d032.plex.direct/123.97.5.123 (port 32400) from /192.168.178.28 (port 49750) after 5000ms
this is the error on my mobile.
maybe dumb question, but why there is a “/” in front of the local IP?
and 32400 is not the external Port.
I’m among the many frustrated users who have this issue.
My DNS servers are BIND9 with rebind protection disabled. I’ve also tried using 8.8.8.8 on devices (which isn’t sustainable, there’s a reason I run my own DNS) - no joy.
It has been over a year since Downloads replaced Sync and this is unacceptable for those of us who had been on Plex since day one. How can the devs be so aware of this issue and not find a working solution?
I’m piling onto this.
Downloads fcking sucks. Sync fcking sucked before it. I’ve been a Plex user and customer for a bajillion years and the entire concept of “get my stuff onto my device” has barely ever worked.
Like it’s truly insane that this all has been so broken for so long. It’s fcking trash on LAN, when out of the house, over cell data, myriad DNS settings, a million variants of transcoder settings u pro and including “just give me the original”…
Why? Why is this so fcking hard? Why is it that for years and years this has been a constant, unending sore spot?
Plex team? Any ideas? WTF is going on?
Who ever from plex is reading this, tell your CEO that wasting time woth crap like “discover” and “tidal” os allowing the basis for the product your customers are here for, pointless. The apps themselves are going to crap in terms of perso al libearies and media for garbage most of your customers couldnt five a hoot about.
I disabled dns rebinding protection at the router (not thrilled about that), and problem was immediately resolved. No more download error.
Not sure what is happening internally, but would love if this could be resolved in another way.
Add an exception for your Plex Server IP to DNS rebind protection and it should work fine (it even works if using a Smart DNS setup).
E.g. on a Fritz box got to “Home Network” → “Network” → “Network Settings” then scroll down to " DNS Rebind Protection" and add in the IP of your Plex Media server under “host name exceptions”.
Just either make sure that you have also reserved that IP address in your router so that it is always the same or alternatively add in the actual hostname of the machine.
Unfortunately many ISP provided routers not only don’t allow that , on mine i can’t even disable DNS rebind protection , let alone start to customise it. And i don’t want to have to buy a new router just because of a strange Plex issue
Following the answer posted by @greglingman, I was able to resolve my problem.
I have a pfsense router and I was able to work around the issue. I had to look at information on the client side (e.g. Plex on Android). You need to go to:
Hamburger menu on top left > Gear icon > Help & Support > Debugging
Check the “Network logging” box.
Note down the Wi-Fi IP address and port.
Attempt the media file download to reproduce the error, then using the browser, go to the location of the logs as specified in the Plex app (e.g. “http://WiFi IP address:port/logging”, scroll all the way down, then slowly back up and check for the error/exception about unresolved host message or something similar in the log. You want to locate an address that looks like this:
[PMS IP Address].[32 character string].plex.direct
Example:
192-168-0-2.2f970eb5e3ae4326a3ca18e35940ab82.plex.direct
It might be easier to search for “plex.direct”.
Note down the IP address and the 32 character string.
In your pfsense router GUI page, go to:
Service > DNS Resolver > General Settings > Host Overrides
Add a new entry with the following fields:
Host = The IP address where your Plex Media Server is hosted, with dashes instead of dots (e.g. 192-168-0-2)
Parent domain of host = 2f970eb5e3ae4326a3ca18e35940ab82.plex.direct
IP to return for host = The same address as in the Host, but with the dots (e.g. 192.168.0.2 )
Description = Workaround for Plex download bug.
After setting this and saving in pfsense, the downloads started working. While there is no progress bar, the “Waiting for downloads” keeps showing for a while but eventually downloads the media file (it’s a movie in my case).
I hope this helps!
Thanks to @greglingman!!
After I added the random “…plex.direct” hostname from the log file as an exception for DNS rebind protection in my Fritz!Box router, the downloading feature immediately worked again.
Thank you very much for sharing your observations and ideas.
From my point of view this can only be a workaround.
I hope it will be changed in near future.
Disabling DNS Rebinding was the solution for me too. Not sure I want to keep this off. It appears to not work if I put an exception in too. I have a FIOS router, any one know of a permanent fix with this one?
I can confirm that the DNS rebind thing is the solution for Fritz! Boxes.
Without caring about logfiles or IP addresses, simpling putting “plex.direct” into the rebind exception field fixed the problem.
However I am not very comfortable with this kind of workaround. It should not be necessary for a costumer to fiddle around with network security to fix problems of paid software, especially if the software did work before and now gets more and more “improvements” with design and implementation flaws.
putting plex.direct as a exception from DNS-rebind-protection in the router worked for me as well.
In the past, I had to put a similar entry in those exceptions for my pi-hole to work properly.
Might be necessary to flush your android app cache after adding the exception.
This is exactly what I came here to say. I’m a developer and can not understand why they can’t seem to fix this issue. This is not a hard a problem to solve. The only reason I have mobile app is to listen to my albums in the car without worrying about a signal. This app is useless to me if this doesn’t work consistently.
I had the following setting enabled. Im not sure if i did this or if it is default.

Anyway, disabling this seems to have fixed all my downloading issues for both ios and android localy or remotely.
Having the same issue with the Android app. If I set my phone to use Google’s DNS (e.g. 8.8.8.8) then it’s fine.
But that’s not a solution for me because I rely on LAN hostname resolution quite a bit for other things networked at home and my router doesn’t allow a manual DNS entry so I can only set it from my device and that then screws up hostname-based LAN addressing as soon at the ARP cache clears on my router.
Anyway, something I don’t understand is this. I don’t have the issue on the Windows app. Same router, same ISP, same ISP based DNS. What’s particular to Android that’s causing this issue???
[ And seriously, this issue is nearly a year old (introduced since ‘sync’ became download???) WTHeck??? ]
Same here sigh… sync was far better than this garbage.
Server 1.27.0.5849
iOS latest version on ipad pro and iPhone 13
Basically giving up on local files and using VLC again instead.
For good measure I tried Plexamp to download music - worked 100% with no issues so it’s not a network/device issue
I am also getting 100% download failures, even though it was working before (both Download and the old Sync). I am also seeing the *plex.direct getaddrinfo errors in the server logs, but my router is a Ubiquiti EdgeRouter. This smells like bad engineering. There is no reason for such a feature to depend on networking tricks which then require you to either compromise your network security or to do expert router configuration. This implementation is borked.