VPN ხიდის სკრიპტი კვლავ იძახებს brctl-ს: რას ნიშნავს ეს
ხიდის დამხმარე, რომელიც brctl-ზე ვარდება, ლოკალური დამოკიდებულების პრობლემაა და არა გვირაბის ხარვეზი. გადაწყვიტეთ, შეინარჩუნოთ სკრიპტი თუ გადაიტანოთ მისი ხიდური სამუშაო.
გვირაბის კლიენტი დაყენებულია, პროფილი ვალიდურია, და დამხმარე მაინც ვარდება brctl-ის სახელწოდების ბრძანებაზე. VPN პაკეტის ხელახლა დაყენება ამას არ ასწორებს, რადგან დაკარგული პროგრამა გვირაბის ნაწილი არ არის. ის ლოკალური ხიდური სკრიპტის ნაწილია, და სკრიპტი ითხოვს ინსტრუმენტს, რომელსაც მიმდინარე სისტემა აღარ აწვდის ნაგულისხმევად. ორი პრობლემა დაკავშირებული მხოლოდ იმიტომ ჩანს, რომ სკრიპტი დაკავშირების დროს ეშვება.
დაკარგული დამხმარე პროგრამა გვირაბის ხარვეზი არ არის
დაიწყეთ ზუსტი გამოძახებით და მისი გარემოთი. ბრძანება, რომელიც თქვენს ინტერაქტიულ გარსში არსებობს, შეიძლება აკლდეს სერვისის შეზღუდულ საძიებო გზას, ამიტომ «ვერ მოიძებნა» შეცდომა ორ სხვადასხვა რამეს ნიშნავდეს შეიძლება. გაუშვით command -v brctl სერვისის მომხმარებლის სახით, და წაიკითხეთ იუნიტი, რომელიც სკრიპტს იწყებს systemctl cat openvpn-bridge-helper-ით ან მისი ეკვივალენტით. შეცდომის ტექსტი ჩვეულებრივ ასახელებს დაკარგულ ბინარულ ფაილს, და ეს სახელია გადასაწყვეტი დამოკიდებულება.
გვირაბის კლიენტის ხელახლა დაყენება იძლევა გვირაბს და არა ხიდის უტილიტას. ეს ცალკეული პაკეტებია ცალკეული მომვლელებით.
რას აკეთებდა brctl და რატომაა მოძველებული
ინსტრუმენტი ქმნიდა და მართავდა Linux Ethernet ხიდებს: addbr ქმნიდა ხიდს, ხოლო addif აერთებდა პორტს. Debian-ის სახელმძღვანელო მას მოძველებულად აღნიშნავს და მიუთითებს iproute2-ის ხიდურ ინსტრუმენტებზე, რომლებიც მეტს ფარავს. მოძველებული ნიშნავს არა ყველგან წაშლილს, და უფრო ახალი ინსტრუმენტის არსებობა სკრიპტში brctl-ის პირდაპირი გამოძახების წარმატებას არ უზრუნველყოფს.
ამიტომ კითხვა ის არ არის, კარგია თუ არა brctl. კითხვა ის არის, კვლავ მხარდაჭერილია თუ არა სკრიპტი და რომელი პაკეტს, თუ საერთოდ, გაწვდით თქვენი დისტრიბუცია მისთვის.
ორი პატიოსანი ვარიანტი: შენარჩუნება ან გადატანა
შენარჩუნება ნიშნავს დოკუმენტირებული დამოკიდებულების დაყენებას თქვენი დისტრიბუციის მხარდაჭერილი პაკეტიდან და სკრიპტის წარმომავლობის, მოსალოდნელი ვერსიისა და შესრულების გზის დადასტურებას. ეს აკმაყოფილებს დაკარგულ შესრულებად ფაილს და სხვა არაფერს: სკრიპტის ხიდების სახელები, მისამართების გეგმა და გასუფთავების ქცევა გადამოწმებული არ რჩება. გადატანა ნიშნავს განზრახული ოპერაციების ხელახლა დაწერას მხარდაჭერილი ქსელური კონფიგურაციისთვის. ხიდის შექმნა, პორტის მიერთება, ჰოსტის მისამართება და ბმულის აქტივაცია ოთხი ცალკე ცვლილებაა, და brctl-იდან სხვა უტილიტაზე გარსის ალიასი თარგმანი არ არის.
iproute2-ის ეკვივალენტები მოკლეა: ip link add name br-vpn type bridge ქმნის ხიდს, და ip link set tap0 master br-vpn აერთებს პორტს.
ჩაწერეთ, რომელი ვარიანტი აირჩიეთ და ვის ეკუთვნის სკრიპტი. ნახევრად გადატანილი დამხმარე, რომელიც ორივე ინსტრუმენტს იძახებს, ორივეზე უარესია.
შეხედეთ ხიდის დიზაინს ორივემდე
Ethernet ხიდი შეეფერება დიზაინს, რომელსაც Ethernet გადაცემა და TAP პარტნიორები სჭირდება. ხიდური ინსტრუმენტების დაყენება მარშრუტიზებულ TUN კავშირს ხიდად არ აქცევს, და მხარდაჭერილი მარშრუტიზებული პროფილი არ უნდა მოიხაროს დაუკავშირებელ სკრიპტს რომ მოერგოს. თუ პროფილი მარშრუტიზებს, გაარკვიეთ, რატომ ეშვება ხიდის დამხმარე საერთოდ.
ნამდვილ ხიდზე შეხებამდე შეინახეთ მართვის გზა და გამოავლინეთ ქსელური კონფიგურაციის ერთადერთი მფლობელი.
შემდეგ წაიკითხეთ შემდეგი შეცდომა დამოკიდებულების გასწორების შემდეგ. ლოკალური ხიდის კონფიგურაცია, დისტანციური ავთენტიფიკაცია და შედეგის გავლით დაშვებული ტრაფიკი სამი ცალკე შედეგია, და მათგან მხოლოდ ერთი ეხებოდა ოდესმე brctl-ს.