uklans / cache-domains

Domain Names required for LAN Content Cache DNS spoofing
MIT License
566 stars 525 forks source link

Steam donwloads #213

Closed RobertJamesMichael closed 1 year ago

RobertJamesMichael commented 2 years ago

Describe the issue you are having

When I download games from Steam, I notice that only a portion of the game is downloaded from the Lancache server, after a while the game starts downloading directly from Steam servers (it does not go through the LanCache server). Since then Steam downloads (obviously) are slow.

Describe your setup?

I am using steamcache/dns

Are you running sniproxy

No

DNS Configuration

I just configured .env file, no changes to the default DNS configurations

zpatten commented 2 years ago

This seems to be a problem with steam or the base lancache system. This happens to me every now and then on setups not using this and only using lancache-dns and lancache-monolithic.

C9Glax commented 1 year ago

Okay I have run into the same issue, and also opened an issue on the monolithic repo. What I have observed, is that Steam is also opening connections via https to these now removed addresses and thus slowing downloads. What has helped in my case was to revert this PR and forcing the connections to Lancache. Can you test if my fork (which has the old list) is helping in your case?

tehlers320 commented 1 year ago

Yeah i can confirm this too. This is not working as intended. https://lancache.net/news/2020/01/14/steam-client-now-supports-lancache/

I suspect perhaps valve changed something.

C9Glax commented 1 year ago

I think the Steam-Client is using as many different CDNs as possible to distribute the load, but we don't want that. So in the past it was not an issue, because the list included all CDNs - pointing to the cache (+the lancache.steamcontent.com-address). So there is two ways I see right now:

  1. Using the old list with all Steam-CDNs (which is more a workaround)
  2. Getting into contact with Valve and asking them to implement a check if a lancache-instance is running (lancache.steamcontent.com is a local address), and then disabling the load-balancing feature.
mintopia commented 1 year ago

Reverting that PR and using the old cache domains won't help with caching. If Steam detects an error using a lancache - a 404 or other error, possibly from the upstream CDN, it will switch back to going directly to the content servers for a few minutes, bypassing the lancache, and may upgrade the connection back to HTTPS.

If this happens - even if you had the full list of hostnames, all that is happening is the HTTPS traffic is now being passed through your LAN Cache and will not be cached.

To see if this is the problem here, check the content_log.txt file in your Steam directory. If you have lines saying Forgetting cache type 'LANCache'... with a reason, then it means Steam has stopped using the LanCache and is going direct to the CDN and maybe using HTTPS.

We have no control over this behaviour of the Steam client and it is intended behaviour by Valve.

Check the logfile and let me know if you are seeing messages like that in it.

tehlers320 commented 1 year ago

Yeah reverting the PR just makes my store pages unable to render randomly. But i'd rather have it do that than trash my Comcast download limit.

Valve should just give us a proper "CDN client" manual override option.

NBSOD commented 1 year ago

Recently found Steam request add a "authkey" part,i think maybe this is the reason.

mintopia commented 1 year ago

We've contacted Valve and they've released an update to Steam to fix this issue.