uklans/cache-domains

Issue Downloading Overwatch

Closed this issue · 11 comments

First off, thanks for curating this list of domains. It's been awesome to use this in conjunction with the steamcache-dns/steamcache setup.

I hosted a LAN party this weekend and when I was setting it up and testing, I was unable to start the download for overwatch on a computer that did not have it installed until I removed the nydus.battle.net domain from blizzard.txt. I forked the repos to test the change and it worked as expected. The download speed was lower than it could have been (~72Mbps compared to the 100Mbps I get from my ISP), and then the second time around I got the 700Mbps I expected from the caching server.

Has anyone else experienced this, or knows of a better solution? Obviously you can start the download with a different DNS server to kick it off, but it's headache. I'll upload the image of the error show in the battle.net launcher when I get a chance.

Thanks!

Also, when I was troubleshooting it, I believe the nydus.battle.net was getting redirected to HTTPS which would obviously bork the caching capabilities. I don't recall this being an issue a few months back when I ran the same setup.

Hey,

Can I ask where you're located geographically?

We also ran a fairly large LAN this weekend in the UK, and Battle net was fine so I suspect this CDN alias is geographic, and should probably be excluded if it is redirecting to https.

Southern California, just north of Los Angeles (USA). I set up the DNS forwarder on steamcache-dns to my router, which should be pulling DNS from the ISP via DHCP (Spectrum/Time Warner Cable).

I wouldn't be surprised at all if it was a geo-dependent which means that there's not a clean/one size fits all solution. Fortunately I didn't waste too much time in finding which domain it was with tcpdump.

I'll upload the error message from battle.net tonight and it can at least be noted if it comes up in the future with a workaround.

Just to check, were you running SNIProxy or similar on all caches you were running?
This allows SSL to be transparently proxied. It does mean that those connections cannot be cached though, but at least downloads would work.
Potentially that domain has partially migrated to SSL for the US only?

I don't know whether or not I was running SNIProxy as I was using the steamcache docker containers, but I only had port 80 bound, so I assume that it wouldn't work for HTTPS anyways. Do you know if that's a supported feature of steamcache, or do you use something else that supports it?

I was running the steamcache-dns docker container with the following config:

docker run \
--name steamcache-dns \
-p 10.0.1.27:53:53/udp \
-e STEAMCACHE_IP=10.0.1.27 \
-e UPSTREAM_DNS=10.0.1.1 \
steamcache/steamcache-dns:latest

and the steamcache docker container with the following config:

docker run \
  --name steamcache \
  -v /cache/steam/data:/data/cache \
  -v /cache/steam/logs:/data/logs \
  -p 10.0.1.27:80:80 \
  steamcache/generic:latest

Might have answered my own question by RTFM.. Looks like steamcache does provide an sniproxy container:

docker run \
  --restart unless-stopped \
  --name sniproxy \
  -p 443:443 \
  steamcache/sniproxy:latest

I can give that a shot

Ah!
steamcache.net also maintain a container for sniproxy: https://github.com/steamcache/sniproxy
This container is mentioned on the readme for steamcache/generic, under "Origin / SSL"

So, it looks like if this CDN hostname is included in the cache, you'll need to run sniproxy to pass through https.

We'll validate the info from the logs from our last event, then decide how to handle it here.

Thanks!

I had the same issue yesterday with the overwatch, even tho I use the sniproxy container.

I had to forwarding the port of DNS, now it's working.

I was able to test this with the sniproxy running and it works as expected. It's strange that a few months ago it wasn't necessary, but i'm glad it's there and getting it done for me now.