Keepalive yenidən qoşulma deyil: mövcud nasazlığa görə seçin
Bir paket xəritələməni canlı saxlayır; yenidən qoşulma əlaqəni yenidən qurur. Mexanizmi nasazlığa uyğunlaşdırın, sonra real sorğu ilə yoxlayın.
Keepalive və yenidən qoşulma eyni nəfəsdə konfiqurasiya olunur, amma fərqli problemləri həll edir, buna görə birini tənzimləmək digərini nadir hallarda düzəldir. Keepalive kiçik trafik göndərərək vəziyyət yazısını canlı saxlayır və ya qarşı tərəfin cavab vermədiyini hiss edir. Yenidən qoşulma pozulanı dağıdır və əlaqəni yenidən qurur: açarlar, ünvanlar və marşrutlar daxil olmaqla. Tanıdığınız düyməsi olanı deyil, nasazlığa uyğun mexanizmi seçin. İki sual bunu həll edir: yol ölübmü, yoxsa tərəflər arasında nə isə onu unudubmu?
Xəritələmə problem olduqda
Yalnız sükutdan sonra ölən tunel adətən qarşı tərəfi deyil, tərcümə yazısını itirir. WireGuard-ın PersistentKeepalive NAT və firewall vəziyyəti üçün mövcuddur və layihənin öz qeydləri onu sağlamlıq yoxlaması kimi deyil, məhz belə təsvir edir. Bir neçə onlarla saniyəlik interval yazını isti saxlayır, hər saniyə paket isə batareya qərarıdır, etibarlılıq qərarı deyil. OpenVPN eyni nəticəyə ping və ping-restart ilə gəlir; bunlar əvvəlcə sükutu hiss edir, sonra ona uyğun hərəkət edir.
Bu parametrlər protokollar arasında da bir-birini əvəz etmir. IKEv2-nin ölü qarşı tərəf siyasəti, OpenVPN-in ping taymeri və WireGuard-ın keepalive-ı eyni suala üç fərqli sintaksis və üç fərqli standartla cavab verir, ona görə onlar arasında rəqəm köçürmək tənzimləmə görkəmində təxmin etməkdir.
Əlaqə getdikdə
Qarşı tərəf ünvanı dəyişsə, etimadnamə vaxtı bitsə və ya uzaq tərəf yenidən başlasa, kiçik paketlər təmir deyil. Yenidən qoşulma vəziyyəti yenidən qurmalıdır : ünvan alın, marşrutları yenidən quraşdırın, açarları yenidən razılaşdırın və bəzi yerləşdirmələrdə istifadəçini yenidən autentifikasiya edin.
Nəzarətsiz yenidən qoşulan müştərilər sertifikat və ya saxlanmış sirr daşıyır. İnsandan soruşacaq müştəri məhz heç kim iştirak etmədikdə uğursuz olur və bu, yenidən qoşulmanın vacib olduğu ssenaridir. Bu, aylarla əvvəl verilmiş dizayn seçimidir, kəsinti zamanı dəyişə biləcəyiniz parametr deyil.
Heç biri nəyi sübut etmir
Tunel yenidən qoşulmuş, açarlanmış və marşrutlanmış ola bilər, halbuki arxasındakı xidmət dayanıb; keepalive isə serveri saatlarla yox olmuş sessiya üçün xəritələməni açıq saxlaya bilər. Hər iki mexanizm sizin həqiqətən vacib bildiyiniz şey əlçatmaz ikən uğur bildirə bilər.
Buna görə sınaq real sorğu ilə bitir. Sizi maraqlandıran intervaldan sonra tuneldən nə isə göndərin, sonra dizayn etdiyiniz nasazlığı ayrıca tetikləyin: xəritələmə halı üçün boş dövr, yenidən qoşulma halı üçün yenidən başlatma və ya ünvan dəyişikliyi.
Birbaşa trafiki bloklamaq ayrı qərardır
Yenidən qoşulma dövrəsi tamamilə sağlam ola bilər, halbuki bir tətbiq sakitcə adi marşrutdan istifadə edir; bu nasazlıq deyil, sızmadır. Tələb tuneldən kənara heç nəyin çıxmamasıdırsa, bunu müştəri konfiqurasiyasında açıq şəkildə deyin və tuneli söndürüb nəyin hələ də qoşulduğuna baxaraq sübut edin. Heç bir mexanizm bu davranışı nəzərdə tutmur və heç bir təkrar cəhd intizamı onu qurmur.
Hansı mexanizmin işlədiyini və sonradan yeni sorğunun uğurlu olub-olmadığını qeyd edin. Növbəti mühəndisə lazım olan bu iki faktdır və heç biri status ikonunda görünmür. Müştərinin yenidən qoşulduğunu deyən log sətri işləmiş sorğu ilə eyni deyil.
Siyasəti yazın, təkcə rəqəmi deyil
Cütü bir cümləyə qoyun: boş interval, canlılıq həddi, yenidən qurulmanı nə tetikləyir , və müştəri təkrar cəhd edərkən nə edir. O cümlə olmadan hər gələcək insident keepalive-ın çox qısa, yoxsa yenidən qoşulmanın çox yavaş olması barədə eyni mübahisəni yenidən açır.
WireGuard-ın məhdudiyyətlərə dair qeydləri faydalı bir xatırlatmadır ki, keepalive ara qurğular üçün müvəqqəti həll yoludur, ümumi canlılıq dizaynı deyil. Tezliyi həll edə bilmədiyi problemə cavab olaraq artırmazdan əvvəl o məhdudiyyəti oxuyun.