შეამოწმეთ Linux-ის პოლიტიკური მარშრუტიზაცია ნაგულისხმევი მარშრუტის რედაქტირებამდე
წესს შეუძლია ნაკადი სხვა ცხრილში გაგზავნოს და მთავარი ნაგულისხმევი მარშრუტი უმნიშვნელო გახადოს. წაიკითხეთ პრიორიტეტი, ცხრილი და მფლობელი, სანამ Linux-ის VPN მარშრუტს შეცვლით.
VPN ჰოსტი პასუხობს ერთ ინტერფეისზე და უარობს პასუხების გვირაბით უკან გაგზავნას, თუმცა ნაგულისხმევი მარშრუტი სწორად გამოიყურება. სწორედ აქ მთავარი ცხრილი წყვეტს მთელი ამბის ყოფნას. Linux-ს შეუძლია პოლიტიკის წესებით თითოეული პაკეტისთვის მარშრუტიზაციის ცხრილი აირჩიოს, და შესაძლოა VPN-მა ერთი დააყენა. წაიკითხეთ წესები, სანამ ნაგულისხმევ მარშრუტს შეეხებით.
თანმიმდევრობა მნიშვნელოვანია: ჯერ წესები, შემდეგ ცხრილი, რომელსაც თითოეული წესი ირჩევს.
წაიკითხეთ წესები პრიორიტეტის მიხედვით
გაუშვით ip rule show და წაიკითხეთ ზემოდან ქვემოთ. პრიორიტეტის ნომერი აკონტროლებს შეფასების რიგს, და უფრო პატარა ნომერი უფრო ადრე მოწმდება. 32766-ზე ნაგულისხმევი წესი ჩვეულებრივ ბოლოა, რასაც მნიშვნელობა აქვს. თუ სია გრძელია, შეინახეთ ის ფაილში, სანამ რამეს შეცვლით.
თითოეული წესისთვის ჩაწერეთ პრიორიტეტი, დამთხვევა (წყარო, ნიშანი, ინტერფეისი ან დანიშნულება) და ცხრილი, რომელზეც ის მიუთითებს. ცხრილის გარეშე წესი ჩიხია, და არა მარშრუტი.
იგივე გააკეთეთ IPv6-ისთვის ip -6 rule show-ით. პოლიტიკა, რომელიც მხოლოდ IPv4 ოჯახში არსებობს, მეორე ოჯახს მთავარ ცხრილში ტოვებს.
წაიკითხეთ ცხრილი, რომელსაც თითოეული წესი ირჩევს
გამოიყენეთ ip route show table <name or number> თითოეული მითითებული ცხრილისთვის. შეადარეთ მისი მარშრუტები ინტერფეისს და მომდევნო ნახტომს, რომელსაც ელოდებით. ცარიელი ან არასრული ცხრილი ხსნის ხარვეზს, რომელსაც მთავარი ცხრილი ვერ ხსნის.
მთავარ ცხრილში შეიძლება ჯერ კიდევ იყოს ნაგულისხმევი მარშრუტი, და ეს ნორმალურია. თუ წესი თქვენს ნაკადს ჯერ 51820 ცხრილში აგზავნის, მთავარი ნაგულისხმევი მარშრუტი ამ პაკეტისთვის უმნიშვნელოა.
თუ ნომერი უცნობია, მოძებნეთ ცხრილის სახელი /etc/iproute2/rt_tables-ში. ეს ძებნა ერთ წამს იკავებს და გრძელ გვერდის ავლას ხელს უშლის.
გაარკვიეთ, ვინ დააყენა წესი
NetworkManager-ს, wg-quick-ს და სხვა სკრიპტებს შეუძლიათ წესების დინამიკურად დაყენება. გაშვების დროს ერთის წაშლა შეიძლება გაუქმდეს შემდეგი ხელახალი დაკავშირებისას. შეამოწმეთ მმართველის კონფიგურაცია, სანამ კონკურენტულ წესს დაამატებთ.
მაგალითად, wg-quick ამატებს მონიშნულ წესს და ცხრილს გვირაბის დაშვებული მისამართებისთვის. სწორედ ამ წესის გამო გვერდს უვლის ამ მისამართებზე მიმავალი ტრაფიკი მთავარ ნაგულისხმევ მარშრუტს. თუ წაშლით მას კონფიგურაციის შეცვლის გარეშე, შემდეგი გაშვება აღადგენს მას.
შემოწმების დროს შეინარჩუნეთ საბოლოო წერტილის გარე მარშრუტი და მართვის წვდომა. ნუ გაასუფთავებთ ყველა წესს მოქმედ დისტანციურ კარიბჭეზე გამოსავლის გასამარტივებლად. შეცვლას გადარჩენილი მართვის სესია ტესტის ნაწილია.
შეამოწმეთ საწყისი კონტექსტი, რომელსაც მნიშვნელობა აქვს
ზოგადი ip route get სხვა კითხვას პასუხობს, ვიდრე აპლიკაციის ნაკადი. დაამატეთ წყაროს მისამართი და ნიშანი, თუ VPN იყენებს მას, რომ ნახოთ გზა, რომელსაც რეალური პაკეტი გადის. შეამოწმეთ შეტანილი და გამორიცხული დანიშნულება იმავე საწყისი კონტექსტით. შემდეგ გაიმეორეთ IPv6-ისთვის, თუ ჰოსტი ორმაგ სტეკზე მუშაობს.
დამტკიცებული შესწორების შემდეგ ხელახლა გაუშვით იგივე ორი ძიება და შეადარეთ. შეინახეთ ჩანაწერი განზრახული წესის, ცხრილის და იმის შესახებ, რამდენ ხანს უძლებს წესი გადატვირთვას. სწორედ ეს ჩანაწერი ხდის შემდეგ სერვისის გადატვირთვას ახსნადს და არა იდუმალს. ip-rule-ის სახელმძღვანელოს გვერდი აღწერს დამთხვევის სელექტორებს და ცხრილის სინტაქსს.