İki peer toxunan aralıqlar sadalayır və trafik səhv birinə çatır. Heç nə korlanmır: WireGuard peer-i təyinatı konfiqurasiya edilmiş aralıqlarla uyğunlaşdıraraq seçir və ən dəqiq uyğunluq qalib gəlir. Nəyisə genişlətməzdən əvvəl hansı peer-in hansı prefiksə sahib olmalı olduğuna qərar verin.

WireGuard daxilində ən uzun prefiks qalib gəlir

Hər peer qeydi bir sıra təyinat prefiksi daşıyır. Paket interfeysə yönləndirildikdə, tətbiq ən dəqiq uyğun prefiksli qeydi axtarır — marşrut cədvəlinin tətbiq etdiyi eyni qayda. Beləliklə /24 onu əhatə edən /16-dan üstün gəlir və daha dar peer trafiki alır.

Road-warrior qurğuları bundan qəsdən istifadə edir. Bir peer bir sayt üçün geniş aralığa sahib olur, ayrı-ayrı hostlar isə başqa peer-lərə aid /32 qeydləri ilə ayrılır. Naxış işləyir, çünki ayrılan hissələr daha dəqiqdir, sıralamaya görə deyil.

Sahibliyi prefiks və peer cədvəli kimi yazın. İki qeyd eyni prefiksi təsvir edirsə, konfiqurasiya artıq niyyət ifadə etmir, yarış ifadə edir.

Əməliyyat sistemi əvvəlcə interfeysi seçir

WireGuard yalnız bir interfeysdəki peer-lər arasında seçim edir. Paketi hansı interfeysin alacağı daha əvvəl, hostun marşrut cədvəli tərəfindən müəyyən edilir, və ikinci standart marşrut və ya köhnəlmiş marşrut trafiki peer siyahısının heç vaxt görmədiyi yerə göndərə bilər. Buna görə peer səviyyəsində diaqnoz düzgün ola bilər və yenə də nasazlığı izah etməyə bilər. Peer konfiqurasiyasını oxumazdan əvvəl təyinat üçün marşruta baxın, çünki fiziki interfeysə işarə edən marşrut bütün məsələni yan keçir.

Alət adətən həmin marşrutları peer aralıqlarından quraşdırır, bu da bir peer-in siyahısındakı dəyişikliyin əvvəllər başqasına aid olan trafiki səssizcə yenidən yönləndirə bilməsi deməkdir. Peer redaktəsi buna görə maskalanmış marşrut dəyişikliyidir. Hər ikisini birlikdə nəzərdən keçirin, yoxsa birini düzəldib digərini pozacaqsınız.

Gələn paketlər mənbəyə görə yoxlanılır

Aralıq siyahısı ikiqat vəzifə görür. Çıxan trafik üçün təyinatla peer seçir, gələn trafik üçün isə mənbə ünvanına icazə verir. Həmin peer-in aralıqlarından kənar ünvandan gələn paket hər hansı firewall onu görməzdən əvvəl atılır.

Bu asimmetriyanı konfiqurasiyanın bir tərəfini oxuyarkən qaçırmaq asandır. Bir alt şəbəkəyə çata bilən peer buna görə həmin alt şəbəkədən göndərməyə icazəli deyil və iki istiqamət fərqli yoxlamalarla təmin edilir.

Dar mənbə sahibliyi bunu üstünlüyə çevirir. Hər peer-ə öz ünvanı üçün /32 verin və aşağı axındakı firewallun uyğunlaşdıracağı etibarlı mənbəyi olsun, hər hansı üzvün iddia edə biləcəyi qrup enli aralıq əvəzinə.

Təkrarlanan aralıqlar failover deyil

Eyni prefiksi iki peer-ə təyin etmək yük balanslayıcısı və ya ehtiyat yol yaratmır. Nə sağlamlıq yoxlaması var, nə də sessiya yaxınlığı: qalib gələn qeydi tətbiqin daxili sıralaması müəyyən edir, bu isə üzərində dizayn aparmalı olduğunuz müqavilə deyil. Alternativ çıxışlar lazımdırsa, onları seçimin müəyyən edildiyi yerdə ifadə edin. Marşrut siyasəti, metrik və ya hər biri sənədləşdirilmiş sahibə malik iki fərqli prefiks proqnozlaşdıra və sınaqdan keçirə biləcəyiniz davranış yaradır.

Əlaqəsiz nasazlığı düzəltmək üçün aralığı genişlətmək digər geniş yayılmış səhvdür. Bu, trafiki işləyən peer-dən uzaqlaşdırır və yeni simptom köhnəsi anlaşılmadan gəlir.

Redaktədən əvvəl seçimi yoxlayın

Üç əmr üç suala sıra ilə cavab verir. Birincisi hər peer-in iddia etdiyi aralıqları sadalayır. İkincisi hostun təyinat üçün hansı interfeysdən istifadə edəcəyini göstərir. Üçüncüsü trafik axdıqdan sonra canlı peer vəziyyətini göstərir.

wg show wg0 allowed-ips
ip route get 10.66.8.20
wg show wg0
ip rule show

Dəyişiklikdən əvvəl və sonra işlədin və müqayisə edin. Marşrut çıxışı dəyişdisə, amma trafik hələ də səhv peer-ə çatırsa, prefiks siyahıları hələ yazmadığınız şəkildə üst-üstə düşür. Marşrut çıxışı dəyişməyibsə, peer konfiqurasiyası heç vaxt soruşulan şey olmayıb.

Təyinatı, seçilmiş interfeysi və seçilmiş peer-i biletdə qeyd edin. Bu üçlük üst-üstə düşməni sonradan yoxlanıla bilən edir və konfiqurasiyanın ekran şəklindən qat-qat faydalıdır.

Əlaqəli məqalələr