lauantai 15. syyskuuta 2018

Lanit nopeammiksi

Lanit lähenevät ja jokaisella kerralla ongelmana on verkon nopeus ulkomaailmaan. Tämä johtunee siitä, että emme lanittele enää kunnon yhteyksien perässä vaan yhteys on se mitä 4G meille sua. Yhteyden nopeus on johtanut siihen, että kun peleihin tulee päivityksiä tai vastaavia se syö kaistan, tällöin päivitykset ja asennukset kestävät paljon pidempään.

Tänä vuonna on tarkoitus kokeilla Steam Cache -ohjelmistoa. Ideana tämä lähti LTT:n videosta. Ohjelmiston tarkoituksena on cachettaa itselleen eri pelien asennuspaketit/päivitykset ja näin ollen kun useampi kone lataa samoja tietoja, haetaan se paikalliselta palvelimelta. Ohjelmistoa on tarkoitus pyörittää Ubuntun päällä.

Palvelin rauta ei vielä ole kummoinenkaan. Tällä hetkellä i5-3470 prosessori, 4Gt keskusmuistia, 500Gt SSD ja ulospäin tarjolla 1+1Gt linkki.

Ensimmäisenä piti asentaa Ubuntu ja tähän valikoitui Ubuntu 18.04 LTS. Tämän jälkeen kun Ubuntu oli saatu asennettua ja päivitettyä oli aika alkaa asentamaan itse ohjelmistoa. Ohjelmistoa tultaisiin pyörittämään Dockerin päällä.

Ohjeita on monia mutta käytämme tässä pohjana LTT:n foorumilla olevaa ohjetta.

Aluksi asennetaan curlin viimeisin versio.
sudo apt install curl -y

Sitten asennetaan Dockerin viimeisin versio
sudo curl -sSL https://get.docker.com/ | sh

Asennuksen jälkeen on hyvä tarkistaa, että tämä toimii komennolla
sudo systemctl status docker

Jos halutaan ajaa monen eri pelitarjoajan cachea, niin tällöin palvelimelle tulee asettaa käyttöön virtuaalisia IP-osoitteita, joita voidaan varata käytettäväksi muille cacheille.

Kun tarvittavat alkuvalmistelut on tehty, voidaan ensimmäisenä käynnistää Steam Cache
IP-osoitteeksi sinun tulee asettaa palvelimen IP-osoite
Voit halutessasi muuttaa myös cachen sijainteja

sudo docker run \
  --restart unless-stopped -d \
  --name steam-cache \
  -v /home/USERNAME/cache/steam/data:/data/cache \
  -v /home/USERNAME/cache/steam/logs:/data/logs \
  -p 192.168.1.50:80:80 \
  steamcache/generic:latest

LTT:n foorumin ohjeesta löytyy muiden pelitarjojien komennot, joita voit hyödyntää tarvittaessa.
Jos haluat tyhjentää cachea tietyn väliajoin voit laittaa sen vanhentumaan lisäämällä komentoon seuraavaan muuttujan -e CACHE_MAX_AGE=365d.

Näiden jälkeen on aika laittaa DNS-palvelimen pyörimään, seuraavalla komennolla
sudo docker run \
  --restart unless-stopped -d \
  --name steamcache-dns \
  -p 192.168.1.50:53:53/udp \
  -e UPSTREAM_DNS=8.8.8.8 \
  -e STEAMCACHE_IP=192.168.1.50 \
  steamcache/steamcache-dns:latest

Kun olet saanut laitettua halutut palvelut pyörimään on aika tarkistaa, että nämä toimivat komennolla
sudo docker container ls

Seuraavaksi on aika suunnata käytettävän koneen kimppuun ja muuttaa tämän ensisijainen DNS-osoittamaan Steam Cache -palvelinta ja toissijaiseksi voi halutessaan laittaa oman haluamansa. Jos kyseessä on Windows-kone on hyvä tyhjentää sen DNS-tiedot seuraavalla komennolla
ipconfig /flushdns

Tämän jälkeen voit tarkistaa toiminnan seuraavalla PowerShell komennolla
Resolve-DnsName steamcache.cs.steampowered.com -server 192.168.1.50

Tai Linuxissa
dig @192.168.1.50 +short steamcache.cs.steampowered.com

Voit seurata järjestelmän toimintoa asentamalla nload-ohjelmiston
sudo apt-get install nload
Ja käynnistämällä ohjelman komennolla
nload

Lähteet