ერთი აწეული, ნული დაკავშირებული: რას ითვლის ეს strongSwan ხაზი
ძველი სათაური IKE ასოციაციებს ითვლის, არა ქვექსელებს ან შვილ SA-ებს, ამიტომ ჯერ წაიკითხეთ ჩატვირთული განმარტებები და დაყენებული შვილები.
წაიკითხეთ მდგომარეობის ხაზი, რომელიც ამბობს Security Associations (1 up, 0 connecting), და ის ერთი მომუშავე გვირაბის ანგარიშს ჰგავს. ორი ქვექსელი ერთდროულად გაატარებს მასში ტრაფიკს, ამიტომ რიცხვი თითქოს ტყუის. ის არ ტყუის; ის IKE ასოციაციებს ითვლის, და ერთ-ერთ მათგანს რამდენიმე შვილის განთავსება შეუძლია. წაიკითხეთ ინვენტარები, სანამ წინადადებას ან მარშრუტს შეეხებით.
რატომ არ თანხმდებიან სათაური და ტრაფიკი
ძველი stroke გამონატანი თავის ჯამს უსაფრთხოების ასოციაციებს უწოდებს და IKE ასოციაციათა მმართველისგან იღებს. ყოველი დამყარებული IKE ასოციაცია ერთს ამატებს, მიუხედავად იმისა, რამდენი CHILD SA დგას მის ქვეშ. ერთი IKEv2 მშობელი ჩვეულებრივ რამდენიმე შვილს ატარებს, ერთს ყოველი ტრაფიკის სელექტორის წყვილისთვის, და შვილის შეთანხმებულ სელექტორებს შეუძლიათ ერთზე მეტი მისამართი ან პრეფიქსი დაფარონ. ამიტომ თქვენს კონფიგურაციაში მისამართების რაოდენობას არ აქვს მუდმივი კავშირი სათაურში მოცემულ რიცხვთან.
თანამედროვე გამონატანი ზოგჯერ ჯამს აჩვენებს ძველი “up” ფორმულირების ნაცვლად, და swanctl-ით მართული დემონი საერთოდ არ იმართება ძველი stroke პარამეტრებით. ნუ ჩათვლით მოცემულად არც ფორმულირებას და არც დათვლის წესს ვერსიებს შორის.
სანამ რამეს შეცვლიდეთ, შეადარეთ სამი ინვენტარი
დაიწყეთ იმით, რაც ჩატვირთულია, შემდეგ იმით, რაც შეთანხმებულია, შემდეგ იმით, რაც რეალურად გადაადგილებს პაკეტებს. ეს სამი სხვადასხვა კითხვაა და თითოეულს თავისი ბრძანება აქვს.
swanctl --list-conns
swanctl --list-sas
პირველი ჩამოთვლის კავშირის განმარტებებს, რომლებიც დემონმა მიიღო. მეორე ჩამოთვლის დამყარებულ IKE ასოციაციებს მათი შვილებით, და სწორედ იქ ჩნდება ნამდვილი იერარქია. განმარტება, რომელიც ფაილშია, მაგრამ პირველ სიაში არ არის, არასდროს ჩატვირთულა, და ინიციატორის რამდენი ხელახალი ცდაც არ უშველის. თუ სამაგიეროდ ძველ ინტერფეისს უშვებთ, ეკვივალენტური წყვილია ipsec statusall და იგივე swanctl სია, იმის მიხედვით, თუ რომელი დანამატი ფლობს კონფიგურაციას. ნუ აურევთ ხელსაწყოებს ერთ ჰოსტზე ორ დემონს შორის და ნუ დაელოდებით ერთ თანმიმდევრულ პასუხს.
swanctl --list-sas --raw | head -40
ip -s xfrm state
ნედლი ფორმა იდენტიფიკატორებსა და სელექტორებს შედარებისთვის თვალსაჩინოს ტოვებს, და ბირთვის მდგომარეობის სია აჩვენებს, რას ფიქრობს სტეკი, რომ დააყენა. როცა დემონი და ბირთვი არ თანხმდებიან, ან დემონი არსებული შვილის გარშემო გადატვირთულა, ან ბირთვის ობიექტი მის ქვემოდან წაშლილა.
წაიკითხეთ იერარქია და არა ჯამი
ორი შვილის მქონე საილუსტრაციო დამყარებული მშობელი ერთ კვანძს ჰგავს, რომლის ქვეშ ორი შვილია, თითოეული საკუთარი მდგომარეობითა და რეჟიმით მონიშნული. გამოიტანეთ რეალური გამონატანი და თავად დათვალეთ შვილები, ნაცვლად იმისა, რომ წაიკითხოთ შეჯამება, რომელიც ვიღაცამ დაფიდან ჩასვა.
swanctl --list-sas
swanctl --list-conns --raw | grep -A4 'accounting'
ორი დაყენებული შვილის მქონე ერთი მშობელი ჯანსაღი ორ-ქვექსელიანი გვირაბია. ერთი დაყენებული და ერთი არმყოფი შვილის მქონე მშობელი სხვა სიტუაციაა, და დაკარგული შვილის სელექტორებია ის, რაც შორეული მხარის წინადადებას უნდა შევადაროთ. გასაღების განახლებისას ძველი შვილი და მისი შემცვლელი ხანმოკლე დროით ერთად შეიძლება გამოჩნდეს. შეინახეთ დროის ნიშა კადრთან ერთად, რადგან განახლების შუაში აღებული დათვლა დუბლირებას ჰგავს, ხოლო მის შემდეგ აღებული — დაკარგვას.
ჩატვირთული, დაყენებული და გამვლელი ტრაფიკი
დაყენებულ მდგომარეობაში მყოფ შვილს აქვს შეთანხმებული პარამეტრები და ჩანაწერი ბირთვში. მაგრამ აუცილებელი არ არის, რომ პაკეტი გადაეტანა: სელექტორები შეიძლება უფრო ვიწრო იყოს, ვიდრე მოსალოდნელი ტრაფიკი, და მარშრუტმა შეიძლება ეს ტრაფიკი სხვაგან გაგზავნოს, სანამ გვირაბი მას დაინახავს. გაგზავნეთ შეთანხმებულ სელექტორებთან შესაბამისი ნაკადი უფლებამოსილი ჰოსტიდან, შემდეგ წაიკითხეთ შვილის მთვლელები სათაურის ნაცვლად. მთვლელი, რომელიც ნულზე რჩება, სანამ შესაბამის ტრაფიკს აწარმოებთ, მარშრუტიზაციაზე ან პოლიტიკაზე მიუთითებს, და არა IKE-ზე.
swanctl --initiate --child accounting
swanctl --list-sas --raw | grep -E 'bytes|packets'
სახელდებული შვილის გაშვება განზრახ მოქმედებაა თვალსაჩინო შედეგით, და ის ერთმანეთისგან ჰყოფს “კავშირი უმოქმედოა, რადგან არავის უთხოვია” და “კავშირი ვერ ადის”. მოთხოვნით მოქმედი ხაფანგის პოლიტიკა ზუსტად პირველ შემთხვევას ჰგავს, ამიტომ წაიკითხეთ კავშირის გაშვების პარამეტრი, სანამ ავარიას უწოდებთ.
როცა დათვლა ნამდვილად არასწორია
თუ განმარტება ჩატვირთულ ინვენტარში აკლია, შეხედეთ კონფიგურაციის ჩატვირთვას და იმას, რომელი დემონის ეგზემპლარი მუშაობს. თუ ის ჩატვირთულია, მაგრამ არასდროს თანხმდება, შეადარეთ წინადადებები, ავთენტიფიკაციის კონტექსტი და სელექტორები პარტნიორს, თითო შვილი ყოველ ჯერზე. შეცვალეთ ერთი ელემენტი ყოველ ცდაზე და ჩაწერეთ ის იდენტიფიკატორი, რომელიც შეცვალეთ. წინადადების უკან დაბრუნება ტრივიალურია, როცა იცი რომელი; ეს ვარაუდია სამი ცვლილების შემდეგ, რომლებიც არასდროს გამოყოფილა.
ჯერ გაასწორეთ არასწორი წაკითხვა. “დაკარგული” მეორე გვირაბის შესახებ ცნობების უმეტესობა ერთი მშობლის ქვეშ ორი დაყენებული შვილით მთავრდება, და ერთადერთი, რაც ოდესმე გატეხილი იყო, ის შეჯამების ხაზი იყო, რომელსაც ხალხი იერარქიის ნაცვლად ენდობოდა.