Traceroute niyə VPN tunelində bir istiqamətdə ölür
Bir istiqamətdə tamamlanan, digərində ulduzlar çap edən iz adətən diaqnostik problemdir. Zond üsullarını, geri yolları və real sorğunu müqayisə edin.
Bir istiqamətdə tamamlanan, digərində isə ulduz sətirləri çap edən traceroute çıxışı asimmetrik yönləndirmə kimi görünür və adətən belə deyil. Hər göstərilən hop zondun çatmasını, marşrutlaşdırıcının cavab verməyə qərar verməsini və cavabın geri qayıdıb zondla uyğunlaşdırılmasını tələb edir. Bu halqalardan hər hansı birini qırsanız, sətir ulduza çevrilir, tunel isə məlumat daşımağa davam edir.
İz nəqliyyat haqqında sübut olmadan əvvəl diaqnostika haqqında sübutdur. Sual verməyə dəyər olan budur: üç halqadan hansı sıradan çıxdı, və cavab çıxışın formasından deyil, paketlərdən gəlir.
Ulduz İtirilmiş Cavabdır, İtirilmiş Hop Deyil
Traceroute hər raundda TTL-i bir marşrutlaşdırıcı daha uzaqda bitən zondlar göndərməklə xaricə doğru irəliləyir. Vaxtı bitmiş zondunu atan marşrutlaşdırıcı özünü adlandıran ICMP Time Exceeded mesajı qaytarmalıdır və alət həmin adı çap edir. Alətin əslində gözlədiyi bu mesajın taym-aut daxilində gəlməsidir. Əgər marşrutlaşdırıcı başqa mənbə ünvanından cavab verirsə, xəta yaratma tezliyini məhdudlaşdırırsa və ya zondunu söz demədən atırsa, raund çap ediləcək heç nə vermir.
Bu nəticələrin heç biri irəli yolun pozulduğunu demir. Ulduz cavabsız məktub haqqında hesabatdır, boş yol haqqında deyil.
Zond Üsulu Hansı Filtrlə Rastlaşacağınızı Müəyyən Edir
Linux-da standart üsul adətən yüksək nömrəli UDP təyinat portudur, Windows tracert ICMP əks-sədası göndərir, Linux isə əvəzində ICMP və ya TCP istifadə etməyə yönləndirilə bilər. Bunların hər biri vəziyyət saxlayan firewall və ya bulud təhlükəsizlik qrupu üçün fərqli trafik növü kimi görünür. Bir tərəfdən UDP izini digər tərəfdən ICMP izi ilə müqayisə etmək iki fərqli təcrübəni müqayisə edir. Nəticələri fərq adlandırmazdan əvvəl üsulu, ünvan ailəsini, mənbə ünvanını və taym-autu sabitləyin.
Ədalətli müqayisə üçün izi əvəzində yönləndirən şlüzdən deyil, trafiki həqiqətən daşıyan hostlardan işə salın. Marşrutlaşdırıcıda yaradılan iz onun öz mənbə ünvanından və çıxış siyasətindən istifadə edir ki, bu da müştərinin gördüyündən daha sərt ola bilər. Dəqiq əmri qeyd edin ki, növbəti şəxs onu təkrarlaya bilsin.
Taym-aut dəyəri təcrübənin digər yarısıdır və qeydlərdən asanlıqla düşür. Sıx yolda iki saniyəlik gözləmə ulduzlar bildirir, beş saniyəlik gözləmə isə hoplar bildirir. Dəyəri bütün işə salmalarda eyni saxlayın ki, müqayisə şəbəkə haqqında qalsın.
Geri Yol Öz Marşrutudur
ICMP xətası öz mənbəyi və təyinatı olan adi paketdir və izləyiciyə geri yol lazımdır. Əgər tunel siyasəti LAN prefikslərini daşıyır, lakin xətanı yaradan marşrutlaşdırıcı ünvanını daşımırsa, mesaj sizə çata bilməyən yolla çıxır. Cavab filtrləməsi marşrut mövcud olsa belə onu ata bilər, çünki paket gözlənilməz interfeysdə gözlənilməz ünvandan gəlir. Bu, tətbiq nasazlığı deyil, diaqnostik müstəvidə uyğunsuzluqdur.
İz tamamlanana qədər hər seçicini genişləndirmək mənzərəni gözəlləşdirir, siyasəti isə pisləşdirir. Konkret diaqnostik ünvanı düzəldin və ya ulduzu qəbul edib tətbiqi başqa yolla yoxlayın.
Tuneli Real Sorğu ilə Təsdiqləyin
Xidmətin öz portunda TCP əl sıxışması yönləndirməni, geri marşrutlaşdırmanı və filtrləməni vacib istiqamətdə sınaqdan keçirir. Aşağıdakı əmrlər hər iki tərəfdə işləyir və hər tərəfin nə aça bildiyini müqayisə edir. Xidmət portunu və tunel interfeysinin adını öz quraşdırmanızdan götürün.
traceroute -I -n -w 2 203.0.113.40
traceroute -T -p 443 -n -w 2 203.0.113.40
curl -sS -o /dev/null -w '%{http_code} %{time_total}\n' --max-time 5 http://203.0.113.40:8080/health
ss -tan state established
Əvvəlcə iki traceroute işə salmasını oxuyun: ICMP işə salması hoplar göstərir, TCP işə salması göstərmirsə, fərq yolda deyil, üsuldadır. Sonra curl nəticəsini tətbiq səviyyəsində cavab kimi götürün, çünki məntiqli status kodu ilə tamamlanan mübadilə irəli və geri yolların real trafik üçün işlədiyini bildirir. Soket siyahısı bağlantının ümumiyyətlə qurulub-qurulmadığını göstərir və heç bir iz bunu sizə deyə bilməz.
Bir traceroute ulduzlar çap edərkən interaktiv sessiyanı iki istiqamətdə daşıyan tunel sağlamdır və sadəcə fotojenik deyil. Hər tərəfin əmr çıxışını qeyd kimi saxlayın və itkin hopları VPN haqqında hökm deyil, diaqnostika haqqında açıq sual kimi qəbul edin.