VPN daim kəsilir? Bunu bu ardıcıllıqla araşdırın
Heç nəyi dəyişməzdən əvvəl intervalı, müştəri xətasını və şəbəkə vəziyyətini qeyd edin. Kəsilmələr arasındakı boşluq dörd qatdan hansını yoxlamalı olduğunuzu göstərir.
Müştərini yenidən quraşdırmadan əvvəl üç şeyi yazın: tunel nə qədər açıq qaldı, kəsilərkən müştəri nə dedi və maşın bu arada yatdı, yoxsa şəbəkəni dəyişdi. Bu qeyd sonradan əlinizdə olan yeganə sübutdur və yenidən quraşdırma onu adətən silir. Təkrarlanan intervalda baş verən kəsilimə taymer və ya vəziyyətin bitməsidir; təsadüfi anda baş verən kəsilimə yol problemidir. Aşağıdakı ardıcıllıq üç şeyi eyni anda dəyişib heç nə öyrənməməyinizin qarşısını alır.
Birinci addım: intervalı və xəta mətnini qeyd edin
Vendor panelindən deyil, müştərinin öz jurnalından başlayın. Linux müştərisində xidmət jurnalı və canlı tunel vəziyyəti bunun çoxunu əhatə edir:
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
Yalnız ikonanın rənginin dəyişdiyi anı deyil, son uğurlu əl sıxışmanın vaxt möhürlərini və trafikin dayandığı anı qeyd edin. Sonradan əlaqənin kəsildiyini söyləyən GUI müştərisi nüvənin saniyələr əvvəl çatdığı vəziyyəti bildirə bilər.
Xətanın ifadəsini saxlayın. Taym-aut, autentifikasiya rəddi və adapter və ya sürücü xətası üç fərqli qata işarə edir və bu problemdə itirilən səyin çoxu onları bir kimi qəbul etməkdən gəlir. Sətri qeydinizə hərfi surətdə köçürün.
İkinci addım: profili deyil, bir dəyişəni dəyişin
Cihazı və profili sabit saxlayın və maşını başqa giriş şəbəkəsinə, məsələn telefon hotspotuna keçirin. Bu, müştərini yoldan ayıran ən ucuz sınaqdır. Orijinal nasazlıq intervalını əhatə edəcək qədər uzun işlədin; iki sabit dəqiqə otuzuncu dəqiqədə baş verən kəsilimə haqqında heç nə sübut etmir.
Ethernet portu olan noutbuk Wi-Fi-ni tamamilə kadrdan çıxaran ikinci müqayisə verir. Tunel hər iki alternativdə davam edirsə, orijinal giriş şəbəkəsi diqqətə layiqdir: giriş nöqtəsi rouminqi, tərcümə cədvəlinin müddəti bitən ev marşrutlaşdırıcısı və ya uzunmüddətli axınları sıfırlayan yuxarı qoşulma.
Hansı dəyişəni dəyişdiyinizi yazın. Müqayisə yalnız qalan hər şey eyni qaldıqda sayılır və buraya server son nöqtəsi və günün vaxtı da daxildir.
Üçüncü addım: intervalı qatla uyğunlaşdırın
Yaxşı sessiyanın uzunluğu sizdə olan ən məlumatlı tək rəqəmdir. Taymerlərə toxunmadan əvvəl onu bu siyahıya tutuşdurun:
- Yuxudan və ya oyanışdan sonra kəsilir: tunel vəziyyəti dayandırmanı keçib, interfeys keçməyib. Müştərinin oyanışda yenidən qoşulma davranışını və xidmətin tuneli yenidən başladıb-başlatmadığını yoxsa trafiki gözlədiyini yoxlayın.
- Yalnız boşdayanarkən kəsilir: ortada nəsə axının müddətini bitirib. Keepalive-lar məhz bu hal üçündür.
- Sabit sessiya yaşında kəsilir: yenidən autentifikasiya və ya açarın yenilənməsi hadisəsi, yol nasazlığı deyil. Jurnalda məhz həmin intervalda açıq rədd cavabı əlamətdir.
- Böyük ötürmələr və ya böyük səhifələr zamanı kəsilir: MTU və fraqmentasiyadan şübhələnin, boşdayanma taymerindən deyil.
Boşdayanma halında parametrlər protokola xasdır və hər iki tərəf vacibdir. Serverdə OpenVPN-in keepalive 10 60 parametri hər 10 saniyədə bir ping göndərir və 60 saniyə ping olmadıqda keçidi yenidən başladır; NAT arxasındakı WireGuard müştəriləri peer blokunda PersistentKeepalive = 25 istifadə edir. OpenVPN həmçinin məlumat kanalını taymerlə yenidən danışıqlar aparır, reneg-sec, bu da 2.x-də susmaya görə 3600 saniyədir.
Başqa provayderin təlimatından aqressiv dəyərlər köçürməyin. İtki verən mobil keçiddə qısa taym-aut məhz qarşısını almalı olduğu kəsilmələri yaradır və serverin göndərdiyi dəyərlər müştəri profilində təyin etdiyinizi üstələyir.
Dördüncü addım: bir dəstəklənən alternativi müqayisə edin
Operator həm UDP, həm də TCP profili yayımlayırsa, eyni cihazı və şəbəkəni digərinə qarşı işlədin. Kopyalanmış profildə nəqliyyatı redaktə etmək əvəzinə faktiki uyğun faylı istifadə edin. UDP-nin sıfırlandığı yolda sabit TCP profili problemi həmin yola daraldır; bu, TCP-nin hər yerdə daha yaxşı nəqliyyat olduğunu sübut etmir.
Eyni məntiq son nöqtələrə də aiddir. Başqa bir server yoxlayın və orijinal nəticəni onun yanında saxlayın. Yalnız bir çıxış sessiyaları sıfırlayırsa, bu həmin son nöqtə haqqında sübutdur, noutbukdakı hər adapteri yenidən qurmaq üçün səbəb deyil.
Hər dəyişiklikdən sonra orijinal tətiki təkrarlayın və trafikin həqiqətən hara getdiyini təsdiqləyin. Bərpa olunmuş internet çıxışı tunelin içindəki trafiklə eyni nəticə deyil və səssizcə birbaşa marşruta qayıdan müştəri brauzerdən sağlam görünür.
Düzəlişi təsdiqləyin və geri qaytarmağı saxlayın
Düzəliş orijinal tətiki təkrar istehsal etməklə təsdiqlənir, uğurlu qoşulma ilə deyil. Tuneli köhnə nasazlıq intervalından sonra boş buraxın, bir dəfə dayandırıb davam etdirin və sonra əl sıxışmanın yaşını və çıxış ünvanını yoxlayın:
wg show wg0 latest-handshakes
curl -m 5 -sS https://ifconfig.me
cp client.ovpn client.ovpn.bak # before editing timers
Yeni davranış tam bir iş günü keçənə qədər əvvəlki profili və əvvəlki taymer dəyərlərini saxlayın. Kəsilmələr qayıdırsa, ehtiyat nüsxəni bərpa edin, sonra ikinci cəhdin məlum vəziyyətdən başlaması üçün dəyişiklikləri bir-bir yenidən tətbiq edin.
Jurnal təmiz qalırsa və tunel yenə təkrarlanan intervalda kəsilirsə, növbəti dayanacaq həmin sessiya üçün server tərəfidir. Müştərinin sessiya identifikatorunu və dəqiq kəsilmə vaxtını özünüzlə aparın, çünki server jurnalını axtarıla bilən edən məhz bu cütdür. Protokolun keçid seçimləri OpenVPN 2.6 təlimatında dəyərin dəqiq semantikasına ehtiyacınız olduqda sənədləşdirilib.