Prije nego što ponovo instalirate klijenta, zapišite tri stvari: koliko dugo je tunel bio aktivan, šta je klijent rekao kada se prekinuo i da li je mašina u međuvremenu spavala ili promijenila mrežu. Ta zabilješka je jedini dokaz koji ćete kasnije imati, a ponovna instalacija je obično briše. Prekid u ponavljajućem intervalu je tajmer ili istek stanja; prekid u slučajnom trenutku je problem puta. Redoslijed ispod vas čuva da ne promijenite tri stvari odjednom i ne naučite ništa.

Prvi korak: zabilježite interval i tekst greške

Počnite s vlastitim dnevnikom klijenta, a ne s nadzornom pločom dobavljača. Na Linux klijentu dnevnik usluge plus živo stanje tunela pokriva većinu toga:

journalctl -u openvpn-client@client --since '3 hours ago' | tail -60
journalctl -u wg-quick@wg0 --since '3 hours ago' | tail -40
wg show
ip -s link show wg0

Zabilježite vremenske oznake posljednjeg uspješnog rukovanja i trenutak kada je saobraćaj stao, a ne samo trenutak kada je ikona promijenila boju. GUI klijent koji nakon činjenice kaže da je prekinut možda prijavljuje stanje do kojeg je kernel došao nekoliko sekundi ranije.

Sačuvajte formulaciju greške. Istek vremena, odbijanje autentifikacije i greška adaptera ili drajvera upućuju na tri različita sloja, a većina izgubljenog truda u ovom problemu dolazi iz toga što ih tretirate kao jedno. Kopirajte red doslovno u svoju zabilješku.

Drugi korak: promijenite jednu promjenljivu, ne profil

Držite uređaj i profil fiksnim i premjestite mašinu na drugu pristupnu mrežu, poput mobilnog hotspot-a. Ovo je najjeftiniji test koji odvaja klijenta od puta. Pokrenite ga dovoljno dugo da pokrije prvobitni interval kvara; dvije stabilne minute ne dokazuju ništa o prekidu koji se dogodi u tridesetoj minuti.

Laptop s Ethernet portom daje vam drugo poređenje koje u potpunosti uklanja Wi-Fi iz slike. Ako se tunel održi na obje alternative, prvobitna pristupna mreža zaslužuje pažnju: roaming između pristupnih tačaka, kućni ruter kojem ističe tabela prevođenja ili nadređena veza koja resetuje dugotrajne tokove.

Zapišite koju ste promjenljivu promijenili. Poređenje se računa samo kada je sve ostalo isto, a to uključuje serversku krajnju tačku i doba dana.

Treći korak: povežite interval sa slojem

Dužina dobre sesije je najinformativniji pojedinačni broj koji imate. Pročitajte je uz ovaj spisak prije nego što dirnete tajmere:

  • Prekid nakon spavanja ili buđenja: stanje tunela je preživjelo obustavu, ali interfejs nije. Provjerite ponašanje klijenta pri ponovnom povezivanju nakon buđenja i da li usluga ponovo pokreće tunel ili čeka saobraćaj.
  • Prekid samo kada miruje: nešto u sredini je pustilo da tok istekne. Upravo za taj slučaj postoje keepalive poruke.
  • Prekid u fiksnoj starosti sesije: događaj ponovne autentifikacije ili obnove ključa, a ne kvar puta. Javno odbijanje u dnevniku tačno na tom intervalu je znak.
  • Prekid tokom velikih prenosa ili velikih stranica: sumnjajte na MTU i fragmentaciju, a ne na tajmer mirovanja.

Za slučaj mirovanja postavke zavise od protokola i oba kraja su važna. OpenVPN-ov keepalive 10 60 na serveru šalje ping svakih 10 sekundi i ponovo pokreće vezu nakon 60 sekundi bez njega; WireGuard klijenti iza NAT-a koriste PersistentKeepalive = 25 u bloku partnera. OpenVPN takođe ponovo pregovara kanal podataka po tajmeru, reneg-sec, koji je po defaultu 3600 sekundi u 2.x.

Ne kopirajte agresivne vrijednosti iz uputstva drugog provajdera. Kratak tajmaut na mobilnoj vezi s gubicima proizvodi upravo prekide koje je trebalo spriječiti, a vrijednosti koje pošalje server nadjačavaju ono što postavite u profilu klijenta.

Četvrti korak: uporedite jednu podržanu alternativu

Ako operater objavljuje i UDP i TCP profil, pokrenite isti uređaj i mrežu protiv onog drugog. Koristite stvarnu odgovarajuću datoteku umjesto da mijenjate transport u kopiranom profilu. Stabilan TCP profil na putu na kojem se UDP resetuje sužava problem na taj put; to ne dokazuje da je TCP bolji transport svuda.

Ista logika vrijedi i za krajnje tačke. Isprobajte drugi server i držite prvobitni rezultat pored njega. Ako samo jedan izlaz resetuje sesije, to je dokaz o toj krajnjoj tački, a ne razlog da ponovo gradite svaki adapter na laptopu.

Nakon svake promjene ponovite prvobitni okidač i potvrdite kuda saobraćaj zaista ide. Povraćen pristup internetu nije isti rezultat kao saobraćaj unutar tunela, a klijent koji je tiho pao na direktnu rutu izgleda zdravo iz preglednika.

Provjerite popravku i sačuvajte mogućnost vraćanja

Popravka se provjerava reprodukcijom prvobitnog okidača, a ne uspješnim povezivanjem. Ostavite tunel da miruje duže od starog intervala kvara, jednom ga obustavite i probudite, pa provjerite starost rukovanja i izlaznu adresu:

wg show wg0 latest-handshakes
curl -m 5 -sS https://ifconfig.me
cp client.ovpn client.ovpn.bak   # before editing timers

Držite prethodni profil i prethodne vrijednosti tajmera dok novo ponašanje ne preživi cijeli radni dan. Ako se prekidi vrate, vratite sigurnosnu kopiju, pa zatim ponovo primijenite jednu po jednu promjenu kako bi drugi pokušaj počeo iz poznatog stanja.

Ako dnevnik ostane čist, a tunel se i dalje prekida u ponavljajućem intervalu, sljedeća stanica je serverska strana za tu sesiju. Ponesite sa sobom identifikator sesije klijenta i tačno vrijeme prekida, jer taj par čini serverski dnevnik pretraživim. Opcije veze protokola dokumentovane su u OpenVPN 2.6 priručniku kada vam treba tačno značenje neke vrijednosti.

Povezani članci