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

ორი იდენტიფიკატორი, ორი საქმე

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

არც ერთი მნიშვნელობა საიდუმლო არ არის და არც ერთი არ ცვლის მეორეს. ქსელის ID-ის ყველა მონაწილესთან გაზიარება ნორმალურია; კვანძის ID-ის გაზიარება კონტროლერს ერთ მოწყობილობას უჩვენებს.

წაიკითხეთ ყოველი მნიშვნელობა იმ ბრძანებიდან, რომელიც მას იტყობინება

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

zerotier-cli info
zerotier-cli status
zerotier-cli listnetworks

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

შეუერთდით ქსელით, ავტორიზაცია გაუკეთეთ კვანძით

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

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

საერთო პრეფიქსს მიზეზი აქვს

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

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

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

შეამოწმეთ შედეგი და არა ბრძანების გამოტანა

წარმატებული შეერთება შემოწმების დასაწყისია და არა დასასრული. ამის შემდეგ შეხედეთ ქსელის ჩანაწერს და წაიკითხეთ სამი ველი: სტატუსი, მინიჭებული მისამართი და ქსელის ID.

zerotier-cli listnetworks -j
ip -br addr show | grep zt
ping -c 2 10.147.20.5

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

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

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