Käivita Steam, logi sisse ja kõik näib terve, kuni mäng ei leia sessiooni. Käsitle seda kolme eraldi võrgu küsimusena, mitte ühena. Pood ja konto vaated, sisu allalaadimine ja mängusessioon võivad igaüks jõuda eri lõpp-punktidesse eri transportide kaudu. Tee need kontrollid järjekorras ja peatu esimesel, mis ebaõnnestub, sest kõik pärast seda on oletus.

Samm 1: kinnita, et sisselogimine oli ainus, mis töötas

Sisselogimine tõestab, et konto jõudis identiteediteenusesse volituste ja kõigi teise teguriga, mida konto nõuab. See ei ütle midagi sisu kohaletoimetamise kohta ega ütle midagi mängu enda hostimiskorralduse kohta. Pane kirja, millist kolmest toimingust sa tegelikult testisid, sest inimesed teatavad tavaliselt ebaõnnestunud mängust pärast ainult käivitaja testimist.

Loe veateksti enne võrku. Mäng, mis teatab, et serverid pole saadaval, ütleb sulle midagi muud kui käivitaja, mis ei jõua poodi. Need kaks viga tulevad eri kihtidest ja tähendavad harva sama. See erinevus otsustab, kas järgmine kontroll puudutab nimelahendust, UDP-d või piirkonna seadet.

Pane kirja konto, piirkond, mäng ja aeg. Ilma nende nelja väärtuseta on hilisem võrdlus kahe erineva testi vahel, mis juhtumisi jagavad sama nime.

Samm 2: nimeta iga toimingu transport

Sisu kohaletoimetamine käitub nagu suur HTTP ülekanne ja talub latentsust palju paremini kui kadu. Mänguotsing ja mängusisesed sessioonid kasutavad sageli UDP-d, kus pakette kaotav tee näeb välja nagu katkine mäng, mitte aeglane allalaadimine. Need kaks profiili ebaõnnestuvad samas tunnelis erinevalt, seepärast ei ennusta kiire allalaadimine töötavat sessiooni.

Kontrolli sihtkohti ja aktiivseid sokleid, mitte esmalt tarnija pordiloendit. Loend ütleb, mida platvorm võib kasutada, soklid aga ütlevad, mida see klient praegu teeb.

nslookup api.steampowered.com
ss -uanp | head -20
curl -sS -o /dev/null -w '%{http_code} %{time_total}\n' https://store.steampowered.com/

Kui mänguprotsess hoiab liiklusega UDP-soklit, samal ajal kui ülekandetee on korras, on viga UDP osas. See kitsendab probleemi tunnelile UDP käsitlemisele, mitte kontole ega poele.

Samm 3: kontrolli kaasamispoliitikat enne pordiloendit

Paljud VPN-kliendid rakendavad poliitikat rakenduse, aadressivahemiku või aadressiperekonna kaupa, mitte kogu masinale. Käivitaja võib olla tunnelis, samal ajal kui eraldi käivitatud mängu binaar on sellest väljas, ja siis ei ole need kaks maailma osas ühel meelel. Rakendustasandi kaasamine on tavaline süüdlane mängusülearvutitel, kuhu on paigaldatud tarnija klient. Loe poliitikat, mis tegelikult kehtib, mitte profiili, mille eelmisel kuul salvestasid.

Vaata marsruutimistabelit ja liidest, millele kuulub vaikemarsruut. Sihtkohtade prefiksitele tuginev jaotatud tunneli reegel ilmub sinna, rakendustasandi erand aga mitte. See erinevus tasub teada enne, kui muudad kumbagi.

ip route show default
ip -brief addr
Get-NetAdapter | Select-Object Name, Status, InterfaceDescription

Kui mängu liiklus väljub füüsilise adapteri kaudu, samal ajal kui pood läheb tunnelist, on kaasamispoliitika leid. Ükski pordierand ei paranda marsruutimisotsust ja selle lisamine ainult laiendab pinda.

Samm 4: välista SOCKS tee, mis ei suuda UDP-d kanda

Tor pakub SOCKS-proksit ja SOCKS-tugi ökosüsteemis on UDP osas ebajärjekindel. Tori dokumenteeritud käitumine ei rakenda UDP ASSOCIATE'i, seega mäng, mille sessiooniliiklus on UDP, ei saa seda teed kasutada, ükskõik kuidas klient sellele suunatakse. Brauser, mis proksi kaudu töötab, tõestab ainult, et brauseri TCP-vood töötavad.

Testi väidet, mitte kavatsust. Kui mäng teatab endiselt kättesaamatust sessioonist, samal ajal kui ainult TCP test sama proksi kaudu õnnestub, ei kanna proksi tee liiklust, mida mäng vajab.

Käsitle marsruuditud VPN-i ja SOCKS-proksit erinevate tööriistadena, millel on erinevad võimalused. Ühe teisega asendamine on disainimuudatus, mitte konfiguratsiooni eelistus.

Võrdle kirjet lepinguga

Võrgu kättesaadavus ja konto luba on eraldi küsimused ning ainult esimesele vastab töötav tunnel. Piirang puudutab proksimise taga olevat kavatsust, mitte sinu valitud protokolli. Kehtiv leping piirab IP proksimist, mille eesmärk on varjata, kus konto omanik elab, seega võib töötav tee ikkagi jääda väljapoole tingimusi, millega nõustusid. Loe lepingut, mitte ära käsitle ühenduvust heakskiiduna.

Ausaks võrdluseks muuda korraga ühte muutujat ja hoia sama mäng, serveripiirkond, konto ja toiming. Seejärel kontrolli tulemust samadel neljal toimingul, mille alguses kirja panid.

tracert -h 12 store.steampowered.com
ss -uanp | grep -i -E 'game|steam'
curl -sS -o /dev/null -w '%{remote_ip} %{time_connect}\n' https://store.steampowered.com/

Kui kirje näitab, et sisselogimine töötab, allalaadimine töötab ja sessioon ebaõnnestub, puudutab järelejäänud küsimus UDP-d teel. Kui kõik kolm töötavad, oli algne kaebus millegi muu kohta ja järgmine kasulik samm on mängu enda logi, mitte tunnel. Igal juhul on kontrollnimekiri asendanud vaidluse konkreetse tähelepanekuga.

Seotud artiklid