WireGuard pada nakon mirovanja: prvo provjerite smjer
Isteklo NAT mapiranje, uspavani radio i zastarjela aplikacija izgledaju isto nakon tihog perioda. Provjerite dolazni i odlazni saobraćaj odvojeno prije dodavanja keepalive.
Četiri pitanja dolaze prije svake promjene postavke: radi li isti resurs dok je klijent aktivan, koliko je trajao period mirovanja, je li uređaj spavao ili promijenio mrežu, i pojavljuje li se kvar samo na saobraćaju koji pokreće suprotna strana. Odgovori razdvajaju isteklo NAT mapiranje od uspavanog radija i od zastarjele aplikacije. Oni takođe kažu da li je keepalive uopšte relevantan. Počnite sa smjerom, jer košta jednu komandu i uklanja pola mogućih uzroka.
Koji smjer pada?
Novi odlazni zahtjev klijenta i saobraćaj koji stiže prema njemu nakon tihog perioda različito opterećuju opremu sa stanjem. Odlazni paketi obnavljaju mapiranje dok izlaze, a dolazni paketi trebaju da je staro mapiranje preživjelo. Ta asimetrija je cijeli test. Ako klijent može izaći van, ali ništa ne ulazi, mapiranje je vjerovatno isteklo, a ako nijedno ne radi, tunel ili mrežni pristup klijenta je nestao.
Zabilježite koliko je tihi period trajao i je li uređaj spavao ili prešao na drugu mrežu u međuvremenu. Te dvije činjenice mijenjaju dijagnozu prije bilo koje postavke.
wg show wg0 latest-handshakes
wg show wg0 endpoints
wg show wg0 transfer
Pokrenite ta tri prije i poslije tihog perioda, jer svaki odgovara na drugi dio pitanja. Vremenska oznaka handshakea koja se nije pomjerila kaže da su strane prestale razgovarati, dok promijenjena krajnja točka kaže da se mapiranje pomjerilo, a ne umrlo. Brojači prijenosa pokazuju je li išta uopšte stiglo, a to je razlika između isteklog mapiranja i nijeme aplikacije. Zapišite brojeve u obje točke, jer poređenje je dokaz.
San, radio i stanje aplikacije
Na telefonu ili laptopu uspavani uređaj može potpuno izgubiti mrežni pristup, a keepalive ne može vratiti isključeni radio ni dovršiti captive portal koji nije zadovoljen. Mobilne platforme obustavljaju pozadinski rad po pravilu, pa to da li se periodični saobraćaj nastavlja zavisi od platforme i od onoga što je aplikacija s njom dogovorila. Keširana veza je treći slučaj i najviše zavarava, jer povratak tunela nije isto što i ponovno povezivanje aplikacije s njim.
Ponovo otvorite aplikaciju nakon perioda mirovanja umjesto da vjerujete kartici koja je ostala otvorena. Ako novi zahtjev uspije tamo gdje je stara sesija pala, tunel nikada nije bio problem.
Šta keepalive zapravo radi
PersistentKeepalive periodično šalje autentificirani prazan paket drugoj strani, što je dovoljno da NAT mapiranje ostane živo između strana i da krajnja točka druge strane ostane aktuelna, kao što opisuje WireGuard brzi početak. On ne popravlja uspavani radio, izgubljenu rutu ni aplikaciju koja nikad ne pokušava ponovo. Odaberite interval kroz podržane postavke klijenta i ne uključujte agresivnu vrijednost svuda samo zato što prikaz stanja utihne.
Većina perioda mirovanja nisu kvarovi. Tunel koji se ponovo poveže nakon pet minuta tišine ponaša se ispravno, a problem je samo slučaj u kojem je nešto trebalo stići sa suprotne strane.
Sačekajte interval koji je prije padao
Napravite jednu podržanu promjenu, pa pustite isti period mirovanja da prođe prije nego ponovo testirate taj resurs. Čekanje je dio testa, a ne formalnost. Trenutni uspjeh nakon ponovnog povezivanja ne govori ništa o simptomu dugog mirovanja, jer ponovno povezivanje je upravo događaj koji resetuje stanje. Ako se problem pojavljuje i tokom aktivne upotrebe, vratite se provjerama handshakea i puta podataka umjesto dodavanja još periodičnog saobraćaja.
Zadržite jednu promjenu po testu i zapišite korišteno trajanje mirovanja. Bez toga svako kasnije poređenje odstupa i niko ne može reći koja je promjena bila važna. Zapišite četiri činjenice zajedno: smjer, trajanje, stanje sna i ponašanje aplikacije.