İç-içə VPN: xarici bağlantını hansı tunel daşıyır?
Daxili tunelin öz son nöqtəsinə xarici yol lazımdır. Səhv ardıcıllıqla başladılan iki müştəri marşrut konflikti yaradır, buna görə əvvəlcə iç-içəliyi düzəldin.
Eyni vaxtda işləyən iki VPN müştərisi iç-içə tunel yaratmır; iki tunel və marşrutlaşdırma mübahisəsi yaradır. İç-içə tunel o zaman mövcuddur ki, daxili müştərinin öz serverinə bağlantısını xarici tunel özü daşıyır və bu, qəsdən qurulan bir düzümdür. Düzgün olsa, daxili server xarici serverin ünvanını görür; səhv olsa, bir müştəri səssizcə digərinin ətrafından yenidən qoşulur. İç-içəliyin həqiqi və ya təsadüfi olduğunu üç şərt həll edir.
İç-içəliyi üç şərt həll edir
Birincisi hansı son nöqtənin hansı yola ehtiyacı olduğudur. Daxili serverin ünvanını adlandırın, xarici serverin ünvanını adlandırın və daxili serverə yalnız xarici tunel vasitəsilə çatıldığını açıq şəkildə bildirin. Qalan hər şey bu cümlədən irəli gəlir, hansı marşrutların hansı cədvələ aid olduğu da daxil olmaqla.
İkincisi yolu hər qatda görə bilməyinizdir. Müəyyən bir təyinatın hansı marşrutu istifadə edəcəyini nüvədən soruşa bilmirsinizsə, zənciri son çıxış IP-sindən çıxarırsınız və bu, iç-içəliyi təsadüfdən ayıra bilməyən dəlildir.
Üçüncüsü xarici tunel düşəndə nə baş verdiyidir. Daxili tunel onunla dayana bilər, adi şəbəkə üzərindən yenidən qoşula bilər və ya xarici yol qayıdana qədər bloklanmış qala bilər və hər üçü müdafiə oluna bilən siyasətlərdir. Onlar eyni siyasət deyil və əksər müştərilərin standart davranışı ikincisidir. Son nöqtəsini fiziki şəbəkə üzərindən yenidən qoşan və bu arada sağlam bağlantı göstərən müştəri, nəzərdə tutulan zəncirin səssizcə iki əlaqəsiz tunelə çevrilməsinin ən geniş yayılmış yoludur.
Birinci şərt: hansı son nöqtə hansı yola ehtiyac duyur
ip route get 203.0.113.10 bu suala birbaşa cavab verir: marşrutu, mənbə ünvanını və nüvənin həmin təyinat üçün hazırda istifadə edəcəyi interfeysi çap edir.
Daxili müştəri başlamazdan əvvəl daxili server üçün, sonra isə bir daha işə salın və müqayisə edin. Cavab fiziki interfeysdən xarici tunelin interfeysinə keçirsə, iç-içəlik həmin anda həqiqidir. Dəyişmirsə, daxili müştəri birbaşa qoşulur, panel nə deyirsə desin. Xarici serverin ünvanı üçün təkrarlayın; həmin ünvan hələ də fiziki interfeys vasitəsilə həll olunmalıdır, çünki hər iki son nöqtəni rekursiv tutan marşrut maşını şəbəkədən tamamilə çıxaran nasazlıqdır.
İkinci şərt: yolu hər qatda araşdırın
Marşrut seçimi müasir müştəridə əsas cədvəldən çoxdur. Siyasət qaydaları işarələnmiş paketləri başqa cədvələ göndərə bilər, müştəri öz soketini interfeysə bağlaya bilər və konteyner və ya ad məkanı öz cədvəllərinə malikdir. ip rule və ip route show table all bu mexanizmlərdən hansının işdə olduğunu tapmağın yoludur.
Öz soketinə SO_MARK qoyan və ya müəyyən cihaza bağlanmaq üçün konfiqurasiya edilmiş müştəri, qurduğunuzu düşündüyünüz standart marşrutu yan keçir. Bu bir xüsusiyyətdir, xəta deyil və yeganə etibarlı yoxlamanın müştəri ilə eyni ad məkanında işləyən yoxlama olduğunu bildirir. Müştərilər konteynerlərdə işləyirsə, yoxlamaları hostda deyil, o konteynerlərdə aparın.
Üçüncü şərt: xarici tunel düşəndə nə baş verir
Nasazlıq davranışı qərar tələb edir, standart dəyər deyil. Xarici tunel yox olduqda daxili tunelə nə olmalı olduğunu yazın, sonra müştəriləri bunu etməyə məcbur edin.
Seçimlər konkretdir. Xarici yol yox olduqda daxili müştərini dayandırmaq təmiz zəncir və aydın kəsinti verir. Birbaşa yenidən qoşulmasına icazə vermək əlçatanlıq verir və zəncirin qurulduğu xassəni səssizcə aradan qaldırır. Xarici yol qayıdana qədər bloklamaq ən sərt və istismarı ən bezdirici seçimdir, çünki xarici tunelin hər tərpənişi görünən hadisəyə çevrilir.
Üçünü də zərərsiz trafik və qəsdən xarici tunel nasazlığı ilə sınayın, çünki konfiqurasiyanı oxumaq hansına malik olduğunuzu demir. Xarici tuneli öldürün, daxili müştərinin nə etdiyini izləyin və o düşmüşkən marşrutu yenidən yoxlayın. Sonra xarici tuneli qaytarın və zəncirin yenidən əmələ gəldiyini təsdiqləyin; daxili müştərini bu arada seçdiyi birbaşa yolda qoymasın.
Zəncirin sizə vermədiyi şey
Əlavə qatlar son nöqtələr, açarlar və nasazlıq rejimləri əlavə edir; heç bir anonimlik zəmanəti əlavə etmir və xarici operatorun tunelin mövcud olduğunu görməsinə mane olmur. İç-içəliyin nədən qoruduğu barədə hər hansı iddia hansı müşahidəçidən qoruduğunu adlandırmalıdır.
Təhvil işləyən bağlantı deyil, qısa bir sənəddir: hansı son nöqtə hansı yolu istifadə edir, xarici nasazlıqda nə baş verir və cari vəziyyəti göstərən üç əmr. strongSwan-ın yönləndirmə sənədləri tunel trafikinin Linux hostunda interfeyslər arasında necə yönləndirildiyi üçün faydalı mənbədir. Hər müştəri yeniləməsindən sonra yoxlamaları yenidən işə salın, çünki zəncirinizi yaradan standartlar müqavilə deyil. Yoxlaya bilmədiyiniz iç-içə tunel status işığı olan bir şaiyədir.