AWS Client VPN-ის ბოლო წერტილი კლიენტის მისამართებს თქვენ მიერ არჩეული პულიდან ანაწილებს, და AWS ამ პულს სამიზნე ქსელთან ამოწმებს ბოლო წერტილის შექმნამდე. შემოწმება არ ეხება იმას, თუ როგორ გამოიყურება ქვექსელი თავისუფლად. ის ეხება იმას, გადაფარავს თუ არა პული VPC-ის დიაპაზონს, და პასუხი იგივეა, დღეს EC2-ის ინსტანცია იყენებს ამ მისამართებს თუ არა. გადაფარვა დიაპაზონების საკითხია, არა განაწილების.

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

გადაფარვა დიაპაზონების ტესტია, არა თავისუფალი მისამართების ტესტი

დაიწყეთ VPC-ის CIDR-იდან და არა იმ ქვექსელიდან, რომლის დაკავშირებასაც აპირებთ. 172.20.0.0/22 პული 172.20.0.0/16 VPC-ის შიგნითაა და უარყოფილია მაშინაც, როცა არცერთი ქვექსელი არ იკავებს მას, რადგან გადაფარვა დიაპაზონების თვისებაა და არა მიმდინარე განაწილების. შემდეგ დაამატეთ ის დანიშნულებები, სადაც ბოლო წერტილი მარშრუტიზაციას აკეთებს: peer VPC-ები, transit gateway და ადგილობრივი დიაპაზონები site-to-site კავშირის გავლით. ნებისმიერი დიაპაზონი, რომელზეც კლიენტს შეიძლება დასჭირდეს მისვლა, სიაში უნდა იყოს.

შეაგროვეთ ისინი ანგარიშიდან და არა მეხსიერებიდან: aws ec2 describe-vpcs --query "Vpcs[].CidrBlock", დამატებით იმ ქვექსელის მარშრუტიზაციის ცხრილის ჩანაწერები, რომლის დაკავშირებასაც აპირებთ.

პულის ზომა აშენებამდე წყდება

AWS Client VPN-ზე იღებს IPv4 კლიენტის პულს /22-დან /12-მდე. /24 ძალიან პატარაა, /8 დოკუმენტირებული დიაპაზონის გარეთაა, და ორივე შეცდომა პულის სამუშაო დატვირთვის ქვექსელივით შეფასებიდან მოდის. გაზომეთ ის მოსალოდნელი ერთდროული კლიენტებით და რეზერვით, შემდეგ დამრგვალეთ დასაშვებ პრეფიქსამდე.

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

python3 -c "import ipaddress; p=ipaddress.ip_network('172.16.0.0/22'); print(p.num_addresses, p.prefixlen, p.overlaps(ipaddress.ip_network('172.20.0.0/16')))"

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

resolver-ს საკუთარი მისამართის როლი აქვს

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

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

ოთხი ველი, რომლებზეც შექმნისას ვალდებულებას იღებთ

კლიენტის IPv4 CIDR შექმნისას ფიქსირდება. DNS სერვერის შეცვლა, კავშირის დამატება, უსაფრთხოების ჯგუფის შეცვლა, ავტორიზაციის წესების რედაქტირება ან split-tunnel მარშრუტების შეცვლა ჩვეულებრივი ცვლილებებია და არცერთი მათგანი პულს ახალ სახელს არ არქმევს. სწორედ ეს ასიმეტრიაა მიზეზი, რის გამოც ეს განხილვას იმსახურებს: იაფი პარამეტრები ის არის, რისი შეცვლაც მოგვიანებით მოგინდებათ, ხოლო ძვირი — ის, რაზეც პირველად იღებთ ვალდებულებას. წაიკითხეთ ბოლო წერტილის აღწერა ცვლილების ფანჯრის დაგეგმვამდე.

შეამოწმეთ განლაგებული ბოლო წერტილი სანამ ხელახალ აშენებას ჩათვლით. aws ec2 describe-client-vpn-endpoints აბრუნებს პულს, DNS-ს, split-tunnel დროშას და კავშირებს ერთ პასუხში, რაც ჩვეულებრივ საკმარისია ხელახალი აშენების გამოსარიცხად.

შეცვალეთ ბოლო წერტილი, ნუ შეაკეთებთ მას

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

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

ერთი ზღვარი, რომლის დასახელებაც ღირს: ეს IPv4 კლიენტის პულს მოიცავს. Client VPN-ზე dual-stack და IPv6 ტრაფიკის პარამეტრები საკუთარ მისამართების მოდელს მიჰყვება, ამიტომ ნუ დააკოპირებთ ამ სიას იმ რეჟიმის დოკუმენტაციის წაკითხვის გარეშე.

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