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

რატომ ვერ მუშაობს მოწყობილობების ჰოსტისკენ მიმართვა

ჰოსტი, რომელიც იღებს შორეულ ქსელზე მისამართებულ პაკეტს, იმ წუთას როუტერი ხდება, მიუხედავად იმისა, დააკონფიგურირა თუ არა ვინმემ ის ასე. გადამისამართება Linux-სა და Windows-ში ნაგულისხმევად გამორთულია, თუ რომელიმე ფუნქცია არ ჩართავს. მისამართების თარგმნა მნიშვნელოვანია, რადგან შორეულ მხარეს უნდა იცოდეს, სად გაგზავნოს პასუხები, ხოლო კერძო LAN მისამართი მისთვის არაფერს ნიშნავს. დაბრუნების მარშრუტი მესამე ნაწილია და სწორედ ის ავიწყდებათ ხოლმე, როცა პირველი ping წარმატებულად გამოიყურება.

დიაგნოსტიკა ამ თანმიმდევრობით გააკეთეთ და ნუ ჩართავთ-გამორთავთ პარამეტრებს შემთხვევით. ყოველი ნაკლული ნაწილი ოდნავ განსხვავებულ სიმპტომს იძლევა.

ჩართეთ გადამისამართება და მისამართების თარგმნა ჰოსტზე

ორი ცვლილება დაკავშირებულ ჰოსტზე ფარავს პირველ ორ ნაწილს: ჩართეთ IPv4 გადამისამართება და გადათარგმნეთ LAN ტრაფიკი გვირაბის ინტერფეისზე.

sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

შეინახეთ sysctl მნიშვნელობა ფაილში /etc/sysctl.d-ის ქვეშ და გადატვირთვის შემდეგ კვლავ შეამოწმეთ masquerade წესი, რადგან ბრენდმაუერის წინა ნაწილებმა შეიძლება მორგებული ჯაჭვები გაასუფთაონ. Windows-ში გაზიარების ფუნქცია ორივე ნაბიჯს ასრულებს, მაგრამ ის ასევე ხელახლა მისამართებს LAN ადაპტერს ფიქსირებულ ქვექსელზე და შლის მის გეითვეის, რაც ამტვრევს სტატიკურ მისამართირებასა და პორტების გადამისამართებას. აღადგინეთ როუტერის გზა ჰოსტამდე მის ახალ მისამართზე, სანამ დაასკვნით, რომ გაზიარება ჩავარდა. შემდეგ დააკვირდით, როგორ იზრდება წესის მთვლელები, სანამ მეორე მოწყობილობა ტრაფიკს აგზავნის.

მიეცით LAN-ს გზა, რომელიც გადატვირთვებს გაუძლებს

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

ip route add 10.8.0.0/24 via 192.168.1.20 dev eth0

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

ყურადღება მიაქციეთ MTU-ს, სანამ გვირაბს დაადანაშაულებთ

გვირაბები ამცირებენ პაკეტის გამოსადეგ ზომას და მეორე მოწყობილობამ ამის შესახებ არაფერი იცის. დიდი გადაცემები და TLS ხელის ჩამორთმევები იჭედება, პატარა მოთხოვნები კი წარმატდება.

ping -M do -s 1400 10.8.0.5

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

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

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