ლეპტოპი ოფისის Wi-Fi-დან გადადის ტელეფონის ჰოთსპოტზე, გვირაბი კიდევ რამდენიმე წამით რჩება, შემდეგ ტრაფიკი ჩერდება, მაშინ როცა ინტერფეისი კვლავ ამტკიცებს, რომ დაკავშირებულია. სერვერზე სტატუსის სია კვლავ ძველ საჯარო მისამართს აჩვენებს. ეს არის ის სიტუაცია, რომლისთვისაც float არსებობს, და ამავე დროს ის სიტუაცია, როცა ადამიანები მისგან ბევრად მეტს ელიან, ვიდრე ის აკეთებს. საზღვრის სწორად გააზრება დამაბნეველ გაჩერებას ან ერთსტრიქონიან კონფიგურაციის ცვლილებად აქცევს, ან სრულიად სხვა გამოძიებად.

რას ასუსტებს float და რას არასოდეს ასუსტებს

ჩვეულებრივ სესია აგრძელებს საუბარს იმ გარე მისამართთან და პორტთან, რომლითაც დაიწყო, და სხვა ადგილიდან მომავალი პაკეტები იგნორირდება. float პარამეტრი აშორებს ამ მკაცრ მიბმას მას შემდეგ, რაც პარტნიორმა უკვე დაამტკიცა თავი, ამიტომ შეცვლილი წყაროს რუკა შეუძლია გააგრძელოს იგივე სესია და არ გადააგდოს. კრიპტოგრაფიულ შემოწმებებში არაფერი იცვლება: გასაღებები, სერტიფიკატები და ნებისმიერი HMAC დაცვა რჩება ზუსტად ისე, როგორც კონფიგურირებულია.

ეს გადაწყვეტილება თითოეულ პაკეტზეა და არა პოლიტიკა იმის შესახებ, ვის შეუძლია დაკავშირება. უცნობი მანქანა, რომელიც ახალი მისამართიდან აგზავნის პაკეტს, არაფერი დაუმტკიცებია და მისი პაკეტი იგივე წესით იხსნება, როგორც ნებისმიერი სხვა არაავთენტიფიცირებული ტრაფიკი. მხოლოდ იმ ტრაფიკს შეუძლია ჩაწერილი პარტნიორის მისამართის გადაადგილება, რომელიც გადის თავად სესიის ავთენტიფიკაციას, და ამიტომ უსაფრთხოა float ჩართული დარჩეს იმ გარემოებში, სადაც კლიენტები მოძრაობენ.

ის არაფერს ამბობს შიდა გვირაბზე. გადაადგილებული გარე მისამართი არ ანიჭებს ხელახლა გვირაბის მისამართს, არ ცვლის აუზს და არ აძლევს პარტნიორს წვდომას რაიმე ახალზე. გვირაბის შიგნით იგივე იდენტობა და იგივე გადაწეული მარშრუტები მოქმედებს გადაადგილებამდე და მის შემდეგ. მოძრაობა ასევე არ აწარმოებს ხელახლა მოლაპარაკებას მონაცემთა არხზე, ამიტომ შეთანხმებული შიფრი და გასაღებები გრძელდება.

სესიის გადამაადგილებელი პაკეტი უნდა ავთენტიფიცირდეს

დაიწყეთ სესია ჩვეული წესით კონფიგურირებული შორეული მხარის მიმართ და float გაუმკლავდება იმას, რაც ხდება რუკის შეცვლისას. მობილური ოპერატორი, რომელიც ნაკადის შუაში ხელახლა ნომრავს, NAT კარიბჭე, რომელიც თავისი პორტის რუკას გადაწერს, ან ლეპტოპი, რომელიც ზედა კავშირს იცვლის, ყველა ერთსა და იმავე ფორმას ქმნის: ავთენტიფიცირებული პაკეტები ახალი tuple-იდან, რომლებიც აღწევენ ჯერ კიდევ ძველის მჯერა სესიამდე.

როცა კითხულობენ, მუშაობს თუ არა float, სასარგებლო მტკიცებულებაა დასრულებული ხელის ჩამორთმევა და მის შემდეგ მიღებული წყაროს ცვლილება, და არა მხოლოდ მისამართის შესახებ ჟურნალის სტრიქონი. დააკავშირეთ ძველი და ახალი გარე მისამართი ცოცხლად დარჩენილ სესიასთან და შემდეგ დაადასტურეთ, რომ ტრაფიკი მართლაც გაგრძელდა გვირაბის გავლით.

თუ სესია მოძრაობის ნაცვლად კვდება, ახალი მისამართიდან მოსული პაკეტი, სავარაუდოდ, ვერ გაიარა ავთენტიფიკაცია ან საერთოდ არ მოვიდა. ორივე შემთხვევა კლიენტის მხრიდან ერთნაირად გამოიყურება. სერვერზე საჯარო ინტერფეისზე გაკეთებული ჩაჭერა გეტყვით, რომელი გაქვთ, სანამ რომელიმე კონფიგურაციას შეეხებით.

აღმოჩენა სრულიად ცალკე მექანიზმია

float არ ხსნის სახელებს ტაიმერით და არ თვალს ადევნებს დინამიკურ DNS ჩანაწერს. თუ სერვერის ჰოსტის სახელი დაიწყებს ახალ მისამართზე გადაწყვეტას, უმოქმედო კლიენტს ამის შესამჩნევად მიზეზი არ აქვს და ახალი ბოლო წერტილიდან ავთენტიფიკაციისთვის პაკეტიც არ აქვს. ეს პრობლემა გადაკავშირების ლოგიკას, თავად კლიენტის ხელახალი ცდის ქცევას და DNS-ს ეკუთვნის, და არა float-ს.

პარამეტრის კიდევ ერთხელ დამატება ვერ ანაზღაურებს ახალ მისამართამდე მარშრუტის არარსებობას. ის არც მაშინ დაეხმარება, როცა პარტნიორი დუმს, რადგან მდუმარე პარტნიორი არასოდეს აგზავნის იმ ავთენტიფიცირებულ პაკეტს, რომელიც რაიმეს გადაადგილებდა.

ქვედა ფაილისქვეშა დაცვასაც აქვს ხმა. წესი, რომელიც მხოლოდ ძველ გარე ბოლო წერტილს უშვებს, ბლოკავს შეცვლილ მისამართს მანამდე, სანამ OpenVPN მას დაინახავს, და კლიენტის მხარეს არც ერთი კონფიგურაცია არ ასწორებს ამას. გადახედეთ დაშვებული მისამართების სასიცოცხლო ციკლს, როგორც ცალკე ამოცანას; წესის ნებისმიერ წყარომდე გაფართოება პატარა პრობლემას დიდ პრობლემაზე ცვლის.

როცა პროფილს NetworkManager ფლობს

ბრძანების ხაზის პროფილი და იმპორტირებული კავშირი ცალკე კონფიგურაციებია და ერთის რედაქტირება მეორეს არ ეხება. სანამ ჩათვლით, რომ პარამეტრი მხარდაუჭერელია, დაადგინეთ, რეალურად რა ტიპის დანამატს იყენებს შენახული პროფილი და სად ცხოვრობს მისი მნიშვნელობები. პროფილის UUID არის ის იდენტიფიკატორი, რომელიც მნიშვნელოვანია, როცა რაიმეს ამოწმებთ ან ცვლით.

შეამოწმეთ შენახული კავშირი და არა ორიგინალური იმპორტის ფაილი. .ovpn ფაილში გადარჩენილი სტრიქონი არაფერს ამტკიცებს, თუ აქტიურმა მენეჯერმა ის არასოდეს გამოიყენა, და მოცემული პარამეტრისთვის მოსანიშნი უჯრის გარეშე რედაქტორიც არაფერს ამტკიცებს პროტოკოლის შესაძლებლობებზე.

ნუ შეაკეთებთ შეფუთულ დანამატს ქცევის დასამატებლად, მით უმეტეს არადამოკიდებული კომპონენტის ისტორიული ვერსიისთვის დაწერილი diff-ით. თუ დაყენებული ინტეგრაცია ნამდვილად ვერ გამოხატავს ამ პარამეტრს, სწორი ნაბიჯია მხარდაჭერილი პროფილი ან სხვა კლიენტის გზა, რომელიც დანერგვის მფლობელმა დაამტკიცა.

დაამტკიცეთ გადასვლა და ნუ ჩათვლით

ჩაატარეთ ტესტი ისე, როგორც ხარვეზი ხდება. დაუკავშირდით, გადაამოწმეთ ტრაფიკი გვირაბის გავლით, აიძულეთ გარე მისამართი შეიცვალოს და შემდეგ შეამოწმეთ სამი რამ: სესია კვლავ არსებობს, ჩაწერილი პარტნიორის მისამართი გადაადგილდა და რეალური მოთხოვნა კვლავ აღწევს დანიშნულებამდე. სამივეზე ნაკლები ნაწილობრივი პასუხია.

ტესტირებისას ხელმისაწვდომად შეინახეთ აღდგენის წვდომა, რადგან მოძრაობის ექსპერიმენტებს ჩვეულებად აქვთ ის მანქანა ჩარჩენილი დატოვონ, საიდანაც მუშაობთ. სერიული კონსოლი ან ზოლის გარეთ მარშრუტი წარუმატებელ ტესტს ხუთწუთიან აღდგენად აქცევს და არა ადგილზე ვიზიტად.

დაბოლოს, აღწერეთ მხოლოდ ის შემთხვევა, რომელიც გამოსცადეთ. სესიის დროს წარმატებული მისამართის ცვლილება არ არის მტკიცებულება იმისა, რომ DNS მიგრაციები, კლიენტის სხვა იმპლემენტაცია ან ხელახლა აწყობილი პროფილი იგივენაირად მოიქცევა. link-options დოკუმენტაცია ზუსტად ასახელებს ამ პარამეტრის ფარგლებს; თქვენს ტესტის ჟურნალში უნდა ეწეროს, ამ ფარგლების რომელი ნაწილი დაფარეთ სინამდვილეში.

დაკავშირებული სტატიები