Closed golyalpha closed 4 years ago
Have you configured your network to use the DNS? The logs say that you haven't, you probably want your DHCP server (Router) to point to the cache dns.
The router is using the 192.168.1.2 IP (this is the IP where it's hosted at) as the primary DNS server, how else would it receive queries to show in logs? If your issue is that the client is always 192.168.1.1, it's because the router sets itself as the primary DNS server over DHCP, and then queries 192.168.1.2 for any domains that don't end in .lan Until I set that, the container output contained only the init logs and that was it.
Please could you add the environment of UPSTREAM_DNS to your compose. Is there a reason why you're building the containers rather than pulling from Dockerhub?
It's running on an ARM64 CPU, that's why the containers are being built locally (image namespace is steamcache-arm64). If I understood correctly, you want me to add the UPSTREAM_DNS variable to the DNS container?
If yes, this is the log output after starting a game download:
dns_1 | 31-Aug-2018 17:34:37.504 client @0x55bd92a700 192.168.1.1#50347 (valve1201.steamcontent.com): query: valve1201.steamcontent.com IN A + (172.18.0.9)
dns_1 | 31-Aug-2018 17:34:38.366 client @0x55bd91baa0 192.168.1.1#27108 (valve1211.steamcontent.com): query: valve1211.steamcontent.com IN A + (172.18.0.9)
dns_1 | 31-Aug-2018 17:34:38.391 client @0x55bd91baa0 192.168.1.1#48585 (valve1208.steamcontent.com): query: valve1208.steamcontent.com IN A + (172.18.0.9)
Container log with non-steam DNS queries removed dns.log
Edit: I have also just made sure that the only DNS server set on the router is 192.168.1.2, and that my computer is in fact using either 192.168.1.1 or 192.168.1.2 as the DNS server. No change.
@golyalpha you should set the DNS server field in your dhcp server (on your router) not as the router's primary dns server (this should probably be your ISP's)
Once you have done that we should see queries in the container logs from your actual computer, not just from the router. (your computer shouldn't be querying 192.168.1.1 directly). I would probably then set upstream_dns to be 192.168.1.1 which will mean internal name resolution for your network will still work.
I'm going to close this issue in two weeks if there's no further issue/response
@VibroAxe could've used this bit of help a few months ago. No matter. I'll try to set up the box for Steam cache again, and will update if this worked. That being said, I can't seem to be able to set up DHCP on DD-WRT to set other server as the DNS, which is kind of a shame.
Well, I rebuilt the entire thing, ended up using Monolithic, and this is what came out: dnslogs.txt Also, I moved from the compose file to using a script to build and start the containers:
#!/bin/bash
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
cd ubuntu
docker build . -t steamcache/ubuntu:latest
cd ..
cd ubuntu-nginx
docker build . -t steamcache/ubuntu-nginx:latest
cd ..
cd generic
docker build . -t steamcache/generic:latest
cd ..
HOST_IP=`hostname -I | cut -d' ' -f1`
cd steamcache-dns
docker build . -t steamcache-dns:aarch64
docker run --restart unless-stopped --name steamcache-dns --detach -p 53:53/udp -e USE_GENERIC_CACHE=true -e LANCACHE_IP=$HOST_IP steamcache-dns:aarch64
cd ..
cd monolithic
docker build . -t monolithic:aarch64
docker run --restart unless-stopped --name lancache --detach -v /cache/data:/data/cache -v /cache/logs:/data/logs -p 80:80 monolithic:aarch64
cd ..
cd sniproxy
docker build . -t steamcache/sniproxy:latest
docker run --restart unless-stopped --name sniproxy --detach -p 443:443 steamcache/sniproxy:latest
cd ..
echo Please configure your dhcp server to serve dns as $HOST_IP
Had to modify the ubuntu image slightly by removing the forced mirrors in overlay. Since it being there breaks apt on the arch I'm trying to run it on.
Closing due to inactivity, feel free to reopen if there is still something you think we can help with.
Issue Description: I'm trying to get the steamcache image running, but I am currently unable to get the traffic there, and when looking at the logs from the steamcache-dns container, I don't see any LAN IPs in steam related queries.
Docker Run CommandDocker Compose file: docker-compose.yml Docker Container Output: