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

რა დააყენა კლიენტმა სინამდვილეში

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

ip route get 9.9.9.9
Find-NetRoute -RemoteIPAddress 9.9.9.9
route print -4

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

შერჩევითი მარშრუტიზაციის სამი ფორმა

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

grep -nE "redirect-gateway|route-nopull|route " /etc/openvpn/client/*.conf
ip route show table main | head -20

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

მეორე მხარემ წყაროს მისამართი უნდა გადაწეროს

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

sysctl net.ipv4.ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -S | grep MASQUERADE

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

სახელების გარჩევა საკუთარ გზას მიდის

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

resolvectl status | head -20
resolvectl query example.org

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

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

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

curl -sS https://ifconfig.me/ip
ip route get 9.9.9.9

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

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