Dikush ekzekuton një kontroll porte, sheh fjalën e hapur dhe e konsideron serverin të zgjidhur. Ajo që ky rezultat do të thotë në të vërtetë është e ngushtë: nga vendndodhja e kontrolluesit, në atë moment, një lidhje TCP drejt atij adresi dhe asaj porte u pranua. Nuk thotë asgjë për shtrëngimin e duarve të protokollit Minecraft, vërtetimin e llogarisë apo nëse serveri e lejoi lojtarin të hyjë në një botë.

Këto janë katër shtresa të ndryshme, dhe një dështim në cilën do prej tyre prodhon të njëjtën fjali nga lojtari: nuk funksionoi.

Një sondë teston vetëm atë që mund të shohë

Një lidhje TCP përfundon kur të dyja palët mbarojnë shtrëngimin e duarve në tre drejtime, i cili qëndron nën gjithçka që loja di. Sonda raporton se ekzistonte një dëgjues dhe se ai u përgjigj nga vendndodhja e tij e rrjetit. Nuk mund të të thotë se dëgjuesi është loja, sepse çdo proces mund të zërë një port dhe të pranojë lidhje.

Vendndodhja ka rëndësi po aq sa rezultati. Një kontrollues në internetin publik teston një rrugë nga një rrjet. Një kontrollues që operatori ekzekuton nga brenda të njëjtit rrjet teston një rrugë krejt tjetër, dhe një rezultat pozitiv atje nuk thotë pothuajse asgjë për atë që përjeton një lojtar i largët. Dy kontrollues të ndryshëm në dy ofrues të ndryshëm mund edhe të mos bien dakord për arsye që nuk kanë asnjë lidhje me serverin tënd.

Edhe koha ka rëndësi. Rezultati i sondës përshkruan momentin kur u ekzekutua, dhe një lidhje shtëpiake me adresë dinamike ose rregull të ndryshuar të përcjelljes mund ta zhvendosë përgjigjen e vërtetë disa minuta më vonë. Shkruaj adresën publike, portën, familjen e adresave dhe kohën bashkë me verdiktin, përndryshe vëzhgimi nuk mund të përsëritet. Përsërit kontrollin nga një rrjet vërtet tjetër, jo nga një telefon në të njëjtën lidhje.

Katër shtresa midis një socket dhe një lojtari

Imagjino sekuencën që një klient që bashkohet kryen në të vërtetë. Së pari zgjidh adresën, pastaj hap një lidhje TCP drejt portës së publikuar, pastaj flet protokollin e vetë lojës për të negocjuar dhe vërtetuar, dhe së fundi serveri vendos nëse ajo identitet lejohet të hyjë në botë. Secila shtresë ka nënshkrimin e vet të dështimit, dhe vetëm e para është e dukshme për një kontrollues porte.

Porta e paracaktuar për Java Edition është 25565, por operatori mund të publikojë një portë tjetër të jashtme dhe ta përcjellë nga brenda, kështu që numri që shkruan një lojtar nuk është domosdoshmërisht numri që sheh serveri. Një kontrollues i drejtuar drejt portës së gabuar të jashtme raporton e mbyllur ndërsa serveri është plotësisht i shëndetshëm, dhe ky është alarmi i rremë më i zakonshëm në të gjithë këtë fushë.

Emrat shtojnë një hap më shumë mbi portën. Nëse një lojtar shkruan një emër hosti, zgjidhja duhet të kthejë adresën e publikuar, dhe në një makinë brenda rrjetit mund të kthejë një adresë private në vend të saj. Ky nuk është dështim i firewall-it dhe asnjë sasi e përcjelljes së portave nuk do ta ndryshojë.

Pse lojtari brenda zgjedh një rrugë tjetër

Një lojtar në të njëjtën LAN, ose në një VPN që arrin atë LAN, përpiqet të arrijë adresën publike nga brenda. Kërkesa shkon drejt adresës së jashtme të routerit dhe routeri duhet ta përkthejë përsëri nga brenda, që është rregullimi që zakonisht quhet hairpinning ose reflektim NAT. Si përkthimi përpara ashtu edhe rruga e kthimit duhet të përputhen që kjo të funksionojë, dhe shumë routera shtëpiak nuk e zbatojnë fare.

Kjo është arsyeja pse mysafiri nga jashtë bashkohet ndërsa personi që rri pranë serverit nuk mundet. Rruga e jashtme është vërtet në rregull; ajo që dështon është devijimi i brendshëm, dhe dështon në një mënyrë që nga ekrani i lojtarit duket si problem i serverit. Regjistri i vetë serverit vendos se cila ndodhi, sepse një lidhje që nuk u përkthye kurrë nuk arrin kurrë tek ai.

Ka dy rregullime të ndershme dhe një zakon të keq. Opsionet e mira janë t’i lësh lojtarët e brendshëm të përdorin adresën private ose një emër split-DNS që zgjidhet brenda në adresën private, ose të aktivizosh reflektimin në router nëse funksioni ekziston dhe sillet si duhet. Zakoni i keq është të hapësh më shumë porta ose të çaktivizosh firewall-in e hostit, gjë që nuk mund të ndikojë në një përkthim që routeri nuk e ka kryer kurrë.

Dokumentacioni i Netgate për reflektimin NAT përshkruan më në detaje dallimin midis jashtë dhe brenda dhe alternativën split-DNS. Lexoje si përshkrim të mekanizmit dhe jo si premtim se ndonjë ofrues VPN ose router i caktuar mbështet çdo variant loopback.

Mblidh prova nga çdo këndvështrim

Për çdo test, shkruaj kush e ekzekutoi, nga ku, në çfarë ore, kundër cilit adresë dhe portë, dhe çfarë regjistroi serveri. Refuzimi i lojës me një arsye të qartë në konsolën e serverit është një gjetje tjetër nga një lidhje që nuk mbërriti kurrë, dhe të dyja çojnë në drejtime të kundërta.

Nëse lojtarët e largët e lejuar bashkohen dhe një lojtar lokal nuk mundet, rruga lokale është pyetja e mbetur dhe meriton hetimin e vet: çfarë adrese përdori klienti, çfarë bëri routeri me përkthimin dhe a regjistroi serveri ndonjë përpjekje lidhjeje. Dorëzoji këto tre fakte atij që zotëron rrjetin, në vend që të rihapësh porta në mënyrë të rastësishme.

Artikuj të ngjashëm