IPsec-ის შვილობილი SA აქტიურია, მაგრამ პაკეტების მთვლელები ნულზე რჩება
დაყენებულ შვილობილ SA-ზე ნულოვანი პაკეტების მთვლელები ჩვეულებრივ ნიშნავს, რომ მასთან არაფერი დაემთხვა. თვალყური ადევნეთ ერთ დამაგრებულ ნაკადს მთვლელებში, მარშრუტში, სელექტორებსა და წყაროში.
თქვენ ასწიეთ გვირაბი, გასაღების განახლების ტაიმერი უკუთვლას აგრძელებს და ორივე მიმართულება კვლავ ნულ პაკეტს აჩვენებს. ეს ორი რიცხვი არ ნიშნავს, რომ პარტნიორმა თქვენი გვირაბი უარყო: დაყენებული CHILD SA უმოქმედო მთვლელებით ნორმალური მდგომარეობაა იმ ასოციაციისა, რომელსაც ჯერ არაფერი დაემთხვა. საქმე იმაშია, რომ დაამტკიცოთ პაკეტს უნდა დამთხვეოდა, შემდეგ კი იპოვოთ ის წერტილი, სადაც მან დატოვა სელექტორების მიერ აღწერილი გზა. გააკეთეთ ეს ერთხელ, რიგრიგობით, და შეინარჩუნეთ მოთხოვნა იდენტური გაშვებებს შორის.
რას ამტკიცებს სინამდვილეში ნულოვანი მთვლელი
CHILD SA არის სელექტორთა წყვილი და ის გასაღებები და SPI, რომლებიც შიფრავენ ამ დიაპაზონებში მოხვედრილ ტრაფიკს. მისი დაყენება მხოლოდ იმას ნიშნავს, რომ ორივე მხარე შეთანხმდა ამ დიაპაზონებსა და წარმოებულ გასაღებებზე; ბირთვი მას საათობით შეინახავს ერთი პაკეტის მოსვლის გარეშეც. ამიტომ კითხვა არასოდეს არის გვირაბის არსებობა, არამედ ის, მოხვდა თუ არა თქვენი ტესტის რომელიმე პაკეტი ორი მხარის შეთანხმებულ დიაპაზონებში. თუ არ მოხვდა, მთვლელები ნულზე რჩება და ასოციაცია სიცოცხლის ბოლოს გამოუყენებელი იწურება.
ეს განსხვავება ცვლის იმას, რასაც პირველად ამოწმებთ. უარყოფილი შეთავაზება, ავთენტიფიკაციის ჩავარდნა ან მომაკვდავი IKE SA ჟურნალში ან SA-ების სიაში ჩნდება, და არა როგორც ჩუმი ნული. გვირაბი, რომელიც სუფთად მოლაპარაკებს და შემდეგ უმოქმედო რჩება, პირიქით, დამთხვევაზე, მარშრუტიზაციაზე ან ტესტური ტრაფიკის წყაროზე მიუთითებს.
გაგზავნეთ ნაკადი, რომლის აღწერაც გაგზავნამდე შეგიძლიათ
აირჩიეთ დანიშნულება დაცულ ქვექსელში და გახსენით ახალი კავშირი მისკენ; საათის წინ ჩატვირთული გვერდი შეიძლება ქეშიდან მოგეწოდოთ, ხოლო ქეშირებული პასუხი გვირაბს არასოდეს ეხება. შემდეგ ჩაწერეთ ოთხი მნიშვნელობა, სანამ მოთხოვნა ჯერ კიდევ ჰიპოთეტურია: წყაროს მისამართი, რომელსაც აპლიკაცია მიაბამს, დანიშნულება, მისამართების ოჯახი და თქვენ მიერ დაკვირვებული შვილის სახელი ან სელექტორთა წყვილი. სწორედ ეს ჩანაწერი აქცევს ბრტყელ მთვლელს შესამოწმებელ მტკიცებად.
წყაროს მისამართი ის მნიშვნელობაა, რომელსაც ხალხი გამოტოვებს და სწორედ ის ამარცხებს ტესტს ყველაზე ხშირად. ლეპტოპს, რომელსაც აქვს სადენიანი მისამართი, Wi-Fi მისამართი და გვირაბის მისამართი, შეუძლია მათგან ნებისმიერი მიაბას მარშრუტის ძიების მიხედვით, და მხოლოდ ერთი შეიძლება იყოს შეთანხმებულ დიაპაზონში. გამოიყენეთ ხელსაწყო, რომელიც საშუალებას გაძლევთ დაამაგროთ წყარო, მაგალითად ping -I 10.1.0.5 10.2.0.9 ან curl --interface 10.1.0.5, რათა პაკეტმა ჩუმად ვერ აირჩიოს სხვა მისამართი. როცა დამაგრებული გაშვება მთვლელებს ამოძრავებს, ხოლო დაუმაგრებელი არა, თქვენ იპოვეთ მარშრუტიზაციის პრობლემა და არა IPsec-ის.
რომელი რიცხვები წავიკითხოთ და სად ცხოვრობენ ისინი
Linux-ზე ip -s xfrm state ბეჭდავს თითოეულ ასოციაციას lifetime current: ხაზით, რომლის ბაიტებისა და პაკეტების ჯამი მხოლოდ ამ SA-ს ეკუთვნის, რასაც მოჰყვება stats: ხაზი გამეორებისა და შეცდომების მთვლელებისთვის. strongSwan პარტნიორზე swanctl --list-sas აჩვენებს თითო in ხაზს და თითო out ხაზს ყოველ დაყენებულ შვილზე, თითოეული ბაიტებისა და პაკეტების რაოდენობით სრულდება; ძველი stroke ხელსაწყოები იმავე წყვილს bytes_i და bytes_o უწოდებენ. წაიკითხეთ ორივე მიმართულება ცალ-ცალკე, რადგან ბრტყლად დარჩენილი მიმართულებაა დასკვნა. მათი შეკრება ზუსტად იმ ასიმეტრიას მალავს, რომელსაც ეძებთ.
ორივე ხედი ასოციაციის მიხედვითაა, ამიტომ გასაღების განახლება აყენებს ახალ SPI წყვილს და თქვენი საბაზისო ხაზი ნულს უბრუნდება, არაფერი ტყდება. ჩაწერეთ ის SPI, რომელსაც აკვირდებით, სანამ განახლების ტაიმერი ამოქმედდება, თორემ ახალ SA-ს ძველ რიცხვს შეადარებთ. თუ გამავალი იზრდება და შემავალი ბრტყელი რჩება, სელექტორი დაემთხვა და პასუხი არასოდეს დაბრუნებულა, რაც გამოძიებას პარტნიორის გადაცემასა და მის საკუთარ პოლიტიკაზე გადააქვს. strongSwan-ის IKEv2 კონფიგურაციის დოკუმენტაცია მოიცავს შვილობილი SA-ს სასიცოცხლო ციკლს და ამ რიცხვების მიღმა არსებულ განახლების დროს.
დაკვირვების წერტილი დამოუკიდებელი ცვლადია პაკეტის წყაროსგან. აპარატურულმა გადმოტვირთვამ შეიძლება ასოციაციის მთვლელები გაზარდოს, მაშინ როცა ინტერფეისზე პროგრამული ჩაჭერა არაფერს აჩვენებს, რადგან გადმოტვირთული პაკეტები გვერდს უვლიან იმ კაუჭს, რომელზეც ჩაჭერა ზის, და შემავალი მიმართულებაც ასე შეიძლება გაიყოს. როცა ორივე არ თანხმდება, მთვლელებით უპასუხეთ, დაემთხვა თუ არა რამე, ხოლო ჩაჭერით — როგორ გამოიყურებოდა პაკეტი.
მარშრუტი, სელექტორები და სად დაიბადა პაკეტი
შეადარეთ სამი რამ გვერდიგვერდ: მარშრუტი, რომელსაც ბირთვი თქვენი დანიშნულებისთვის ირჩევს, პოლიტიკა, რომელიც ტრაფიკს გვირაბში მიმართავს, და სელექტორთა წყვილი, რომელზეც შვილი შეთანხმდა. ip route get 10.2.0.9 from 10.1.0.5 ასახელებს ინტერფეისსა და წყაროს, რომლებსაც ბირთვი გამოიყენებდა, და ეს ხშირად არ არის ის წყვილი, რომელიც თქვენ ივარაუდეთ. ip xfrm policy აჩვენებს ლოკალურად დაყენებულ შაბლონებსა და სელექტორებს, ხოლო swanctl --list-sas აჩვენებს, რაზეც პარტნიორი შეთანხმდა. ძიება, რომელიც პაკეტს ფიზიკური ინტერფეისიდან აგზავნის, პოლიტიკამდე საერთოდ არ აღწევს, ამიტომ მთვლელები ვერ იძვრებიან.
შეუსაბამობები რამდენიმე ფორმით მოდის, რომლებიც მთვლელიდან ერთნაირად გამოიყურება. IPv4 სელექტორის გარეთ არსებული IPv6 დანიშნულება, არასწორი ქვექსელიდან წყაროს მისამართი და შვილზე ვიწრო პოლიტიკა — ყველა ერთსა და იმავე ნულს იძლევა. ჯერ ყველაზე ვიწრო მიზეზი გაასწორეთ, რადგან სელექტორის გაფართოება მხოლოდ რიცხვის გადასაადგილებლად ცვლის იმას, რასაც გვირაბი იცავს.
შემდეგ არის პაკეტის წყარო, ხაფანგი, რომელსაც კარიბჭე საკუთარ ოპერატორს უგებს. ტრაფიკი, რომელსაც კარიბჭე თავად აწარმოებს, გამავალ პოლიტიკას ადარებენ, ხოლო პაკეტი, რომელსაც ის კლიენტისთვის გადასცემს, გადაცემის პოლიტიკას ადარებენ, ამიტომ მოწყობილობიდან გაშვებული ping შეიძლება წარმატებული იყოს იმ გზაზე, რომელსაც არც ერთი კლიენტი არასოდეს ირჩევს.
ერთი შექცევადი ცვლილება და განხილვას გაუძლებელი ანგარიში
შეცვალეთ მხოლოდ ერთი ელემენტი, გაიმეორეთ იდენტური მოთხოვნა და წაიკითხეთ იგივე მთვლელები. ყველა firewall წესის გასუფთავება ან ყველა სელექტორის ერთდროულად შეცვლა რიცხვს ამოძრავებს და ანადგურებს იმ მტკიცებულებას, რომელმაც მიზეზი გითხრათ. თუ მეორე გაშვება კვლავ ნულს აჩვენებს, თქვენ გამორიცხეთ ერთი ჰიპოთეზა და არა დაკარგეთ შუადღე.
ჩაწერეთ დასკვნა იმ ფორმით, რომელსაც სხვა გაიმეორებს: შვილის სახელი, მიღებული დიაპაზონები, თქვენ მიერ დამაგრებული წყარო, გამოცდილი დანიშნულება, ნულზე დარჩენილი მიმართულება და თქვენ მიერ წაკითხული SPI. ეს წინადადება ჰყოფს არავის მიერ გამოყენებულ ასოციაციას იმ დისტანციური აპლიკაციისგან, რომელმაც ტრაფიკი მიიღო და უარყო. როცა ცვლილებამ მთვლელები არ ამოძრავა, დააბრუნეთ იგი და შეინახეთ ჩანაწერი; შემდეგი ადამიანი იქ იწყებს, სადაც თქვენ გაჩერდით. გვირაბში არაფერი დაგჭირდა თავიდან აშენება ამ ყველაფრისთვის და სწორედ ამაშია კონფიგურაციაზე ხელის შეხებამდე დამთხვევის შემოწმების აზრი.