VPN se nenehno prekinja? Pojdite skozi to v tem vrstnem redu
Zapišite interval, napako odjemalca in stanje omrežja, preden karkoli spremenite. Razmak med prekinitvami vam pove, katero od štirih plasti preveriti.
Preden znova namestite odjemalca, zapišite tri stvari: kako dolgo je bil tunel aktiven, kaj je odjemalec rekel ob prekinitvi in ali je stroj vmes spal ali zamenjal omrežje. Ta zapisek je edini dokaz, ki ga boste pozneje imeli, in ponovna namestitev ga običajno izbriše. Prekinitev v ponavljajočem se intervalu je časovnik ali potek stanja; prekinitev v naključnem trenutku je težava poti. Spodnji vrstni red vam preprečuje, da bi spremenili tri stvari hkrati in se ne bi ničesar naučili.
Prvi korak: zabeležite interval in besedilo napake
Začnite z lastnim dnevnikom odjemalca, ne z nadzorno ploščo ponudnika. Pri odjemalcu Linux dnevnik storitve in živo stanje tunela pokrijeta večino tega:
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
Zabeležite časovne žige zadnjega uspešnega rokovanja in trenutek, ko se je promet ustavil, ne le trenutka, ko je ikona spremenila barvo. GUI odjemalec, ki prekinitev sporoči za nazaj, morda poroča o stanju, do katerega je jedro prišlo nekaj sekund prej.
Ohranite besedilo napake. Pretek časa, zavrnitev preverjanja pristnosti in napaka vmesnika ali gonilnika kažejo na tri različne plasti, in večina izgubljenega truda pri tej težavi izhaja iz tega, da jih obravnavate kot eno. Kopirajte vrstico dobesedno v svoj zapisek.
Drugi korak: spremenite eno spremenljivko, ne profila
Držite napravo in profil nespremenjena ter premaknite stroj v drugo dostopno omrežje, na primer na telefonovo dostopno točko. To je najcenejši preizkus, ki loči odjemalca od poti. Zaženite ga dovolj dolgo, da pokrije prvotni interval okvare; dve stabilni minuti ne dokažeta ničesar o prekinitvi, ki se zgodi v trideseti minuti.
Prenosnik z vrati Ethernet vam da drugo primerjavo, ki Wi-Fi povsem odstrani s slike. Če tunel zdrži na obeh možnostih, si prvotno dostopno omrežje zasluži pozornost: gostovanje med dostopnimi točkami, domači usmerjevalnik s potekom prevajalske tabele ali nadrejena povezava, ki ponastavi dolge tokove.
Zapišite, katero spremenljivko ste spremenili. Primerjava šteje le, ko vse ostalo ostane enako, in to vključuje končno točko strežnika ter čas dneva.
Tretji korak: povežite interval s plastjo
Dolžina dobre seje je najbolj informativno posamezno število, ki ga imate. Preberite ga ob tem seznamu, preden se dotaknete časovnikov:
- Prekinitev po mirovanju ali obnovitvi: stanje tunela je preživelo zaustavitev, vmesnik pa ne. Preverite vedenje odjemalca pri ponovnem povezovanju ob obnovitvi in ali storitev tunel znova zažene ali čaka na promet.
- Prekinitev le med nedejavnostjo: je nekaj v sredini pustilo toku, da je potekel. Prav za ta primer obstajajo keepalive.
- Prekinitev pri stalni starosti seje: dogodek ponovnega preverjanja pristnosti ali obnove ključa, ne okvara poti. Izrecna zavrnitev v dnevniku točno v tem intervalu je znak.
- Prekinitev med velikimi prenosi ali velikimi stranmi: sumite na MTU in razdrobljenost, ne na časovnik nedejavnosti.
Pri nedejavnosti so nastavitve odvisne od protokola in oba konca štejeta. keepalive 10 60 OpenVPN na strežniku pošlje ping vsakih 10 sekund in znova zažene povezavo po 60 sekundah brez njega; odjemalci WireGuard za NAT uporabljajo PersistentKeepalive = 25 v bloku partnerja. OpenVPN tudi znova pogaja o podatkovnem kanalu po časovniku, reneg-sec, ki je privzeto 3600 sekund v 2.x.
Ne kopirajte agresivnih vrednosti iz vodnika drugega ponudnika. Kratek pretek časa na mobilni povezavi z izgubami ustvari prav tiste prekinitve, ki naj bi jih preprečil, vrednosti, ki jih potisne strežnik, pa preglasijo tisto, kar nastavite v profilu odjemalca.
Četrti korak: primerjajte eno podprto možnost
Če operater objavi profil UDP in TCP, poženite isto napravo in omrežje proti drugemu. Uporabite dejansko ustrezno datoteko, namesto da bi urejali prenos v kopiranem profilu. Stabilen profil TCP na poti, kjer se UDP ponastavi, zoži težavo na to pot; ne dokazuje, da je TCP boljši prenos povsod.
Enaka logika velja za končne točke. Preizkusite drug strežnik in prvotni rezultat imejte ob strani. Če seje ponastavi le en izhod, je to dokaz o tej končni točki, ne razlog za ponovno izgradnjo vsakega vmesnika v prenosniku.
Po vsaki spremembi ponovite prvotni sprožilec in potrdite, kam promet v resnici gre. Ponovno pridobljen dostop do interneta ni enak rezultat kot promet znotraj tunela, in odjemalec, ki je tiho padel na neposredno pot, je videti zdrav iz brskalnika.
Preverite popravek in obdržite možnost vrnitve
Popravek se preveri z ponovitvijo prvotnega sprožilca, ne z uspešno povezavo. Pustite tunel nedejaven dlje od starega intervala okvare, enkrat ga zaustavite in obnovite ter nato preverite starost rokovanja in izhodni naslov:
wg show wg0 latest-handshakes
curl -m 5 -sS https://ifconfig.me
cp client.ovpn client.ovpn.bak # before editing timers
Obdržite prejšnji profil in prejšnje vrednosti časovnikov, dokler novo vedenje ne preživi celega delovnega dneva. Če se prekinitve vrnejo, obnovite varnostno kopijo in nato znova uporabite spremembe eno za drugo, da se drugi poskus začne iz znanega stanja.
Če dnevnik ostane čist in se tunel še vedno prekine v ponavljajočem se intervalu, je naslednja postaja strežniška stran za to sejo. Vzemite s seboj identifikator seje odjemalca in točen čas prekinitve, ker prav ta par naredi dnevnik strežnika iskaljiv. Možnosti povezave protokola so dokumentirane v priročniku OpenVPN 2.6 ko potrebujete točen pomen vrednosti.