რატომ არ ამტკიცებს DNS-ში ქვეყნის ეტიკეტი VPN-ის გაჟონვას
ტესტი მისამართს ქვეყანას უკავშირებს; ეს მარშრუტზე ცოტას ამბობს. სანამ რამეს შეცვლით, წაიკითხეთ რეზოლვერი, გადამისამართების ჯაჭვი და პოლიტიკა.
უცხოურად მოჩვენებული რეზოლვერის მისამართები მუდმივად ჩნდება DNS ტესტების შედეგებში, და დასკვნა, რომელსაც ადამიანები აკეთებენ, ყოველთვის იგივეა: მოთხოვნები აუცილებლად გაუშვია გვირაბიდან. ზოგჯერ ასეც მოხდა. უფრო ხშირად ანგარიში აღწერს, რომელი რეკურსიული სერვისი გამოეხმაურა და სად, მონაცემთა ბაზის აზრით, მდებარეობს ეს მისამართი, და ეს განცხადებაა ინფრასტრუქტურაზე და არა თქვენს პაკეტებზე. დაკვირვების დასკვნისგან გასაყოფად სამი ფაქტია საჭირო: ვინ გამოეხმაურა, როგორ იმოძრავა სახელმა და რა პოლიტიკა დააყენეთ სინამდვილეში.
წაიკითხეთ, რასაც ტესტი რეალურად აკვირდებოდა
ტესტის გვერდების უმეტესობა ერთნაირად მუშაობს: სთხოვს კლიენტს უნიკალური ჰოსტის სახელის ამოხსნას და შემდეგ უყურებს, რომელმა რეზოლვერმა მოიტანა ის, ან უბრალოდ აბრუნებს იმ რეზოლვერის მისამართს, რომელსაც კლიენტი აცხადებს. ეს იდენტიფიცირებს რეკურსიულ სერვისს და, თუ მოთხოვნა კლიენტის ქვექსელის ინფორმაციას ატარებდა, ქსელში უხეშ მდებარეობას. ეს არ ამტკიცებს, რომ მოთხოვნამ მოწყობილობა გვირაბის გარეთ დატოვა, და რა თქმა უნდა არ ამტკიცებს, რომ ყველა სახელისთვის ერთი და იგივე გზა გამოიყენეს. ერთი ძიების ერთი დაკვირვება განზოგადდება მთელ ტრაფიკზე განცხადებად.
ტესტი, რომელიც რეზოლვერის მისამართს აჩვენებს, უფრო სასარგებლოა, ვიდრე ქვეყნის ნიშანი, რადგან მისამართი შეიძლება შევადაროთ იმ რეზოლვერების სიას, რომელიც კლიენტმა რეალურად მიიღო.
anycast და გადამისამართება ხსნის სიურპრიზების უმეტესობას
დიდი საჯარო რეზოლვერები იმავე მისამართს მრავალი ადგილიდან აცხადებენ, და ქსელი ყოველ მოთხოვნას უგზავნის იმ ადგილს, რომელიც მარშრუტიზაციის მიხედვით ყველაზე ახლოსაა. შემდეგ გეომდებარეობის მონაცემთა ბაზა ამ მისამართს ერთ ადგილს უკავშირებს, რომელიც შეიძლება იყოს კორპორატიული რეგისტრაციის მისამართი სხვა კონტინენტზე ან მონაცემთა ცენტრი, რომელიც არ არის გამომხმარებელი. RFC 4786 განიხილავს anycast სერვისების ოპერაციულ პრაქტიკას და იმ სირთულეს, რომ ასეთი მისამართი ერთ ფიზიკურ ადგილს დაუკავშირდეს. რუკა მარშრუტიზაციის გადაწყვეტილების გამარტივებაა და ამარტივებს იმ მიმართულებით, რომელიც შემაშფოთებელ შედეგებს იძლევა.
გადამისამართება მეორე ფენას ამატებს. ლოკალური stub რეზოლვერი, როუტერი ან პროვაიდერის რეზოლვერი შეიძლება მოთხოვნები ზემდგომ სერვისს გადასცეს, და ტესტში გამოჩენილი სახელი ასახავს ამ ჯაჭვის ბოლო ოპერატორს და არა პირველს. კლიენტის ქვექსელის გაფართოებებმა შეიძლება ზემოდან მიღებული პასუხი თქვენს ქსელს მოურგოს და იმავდროულად აცხადებული მდებარეობა ისეთ ადგილად აჩვენოს, სადაც არასდროს ყოფილხართ.
ამრიგად, კონფიგურირებული რეზოლვერი შეიძლება სწორი იყოს და მაინც უცხოურად მოჩვენებული შედეგი მოგცეთ, ხოლო თქვენს ქვეყანაში არსებული რეზოლვერი შეიძლება არასწორი იყოს, რადგან ეკუთვნის მხარეს, რომელიც თქვენ არ აგირჩევიათ.
ვინ მიიღო სახელი და რომელი მარშრუტით
პრაქტიკულ ნაწილს ორი კითხვა პასუხობს: რომელ სერვერს იყენებს კლიენტი და მიიღწევა თუ არა ეს სერვერი გვირაბის მეშვეობით. სანამ მარშრუტიზაციაზე დასკვნებს გააკეთებთ, შეადარეთ რეზოლვერების სია ტესტის შედეგში არსებულ მისამართს, შემდეგ შეამოწმეთ, რომ ამ მისამართზე მიმავალი მოთხოვნა გვირაბის ინტერფეისიდან გადის. თუ ორი მისამართი განსხვავდება, საინტერესო აღმოჩენაა, რომ რაღაცამ გადაწერა ან გვერდი აუარა განზრახულ რეზოლვერს, და ეს უფრო ყურადღებით დათვალიერებას იმსახურებს, ვიდრე ქვეყნის სახელი.
resolvectl query example.com
resolvectl status | grep -A3 'DNS Servers'
dig +short TXT whoami.akamai.net
პირველი ბრძანება გვიჩვენებს, რომელი სერვერი გამოეხმაურა სახელს, მეორე გვიჩვენებს კონფიგურირებულ სიას და მის ფარგლებს, ხოლო მესამე აცხადებს რეზოლვერის მისამართს ისე, როგორც მას საჯარო სერვისი ხედავს. როცა სამივე ემთხვევა, პოლიტიკა აკეთებს იმას, რისთვისაც იყო კონფიგურირებული, რაც არ უნდა თქვას ქვეყნის ეტიკეტმა.
შეადარეთ არჩეულ პოლიტიკას
რეზოლვერის დამკვიდრებელი VPN, ბრაუზერი, რომელიც საკუთარ დაშიფრულ DNS-ზეა კონფიგურირებული და ოპერაციული სისტემა, რომელიც ერთი ინტერფეისის პარამეტრებს ანიჭებს უპირატესობას, ცალ-ცალკე შეიძლება სწორი იყოს, მაშინ როცა ერთად ეწინააღმდეგებიან. თანამედროვე ბრაუზერებმა შეიძლება მოთხოვნები დაშიფრული ტრანსპორტით გაუგზავნონ ბრაუზერში არჩეულ პროვაიდერს, რაც განზრახ გვერდს უვლის სისტემის რეზოლვერების სიას. ეს არ არის გაჟონვა გატეხილი გვირაბის მნიშვნელობით; ეს სხვაგან არჩეული პოლიტიკაა და იმის პოვნა, თუ სად იქნა არჩეული, ნამდვილი ამოცანაა.
სამუშაო მოწყობილობები დომენურ წესებს ამატებენ: შიდა სახელები ორგანიზაციის რეზოლვერთან უნდა მიდიოდეს, დანარჩენი კი ნაგულისხმევს მიჰყვება. ამ წესრიგის შეცვლა იმის გამო, რომ ტესტის გვერდმა მოულოდნელი ქვეყანა აჩვენა, სწორედ ის გზაა, რომლითაც შიდა სახელები მთელი გუნდისთვის წყვეტს ამოხსნას.
შეინახეთ ტესტები ვიწრო და უსაფრთხო
შიდა ჰოსტის სახელზე საჯარო ტესტის სერვისის გამოკითხვა ავლენს სახელს მხარეს, რომელსაც მისი ნახვის საქმე არ აქვს, და პასუხი არაფერს გეუბნებათ იმის გარდა, რასაც რეზოლვერების სიის ლოკალური წაკითხვა გეტყოდათ.
ამის ნაცვლად გამოიყენეთ სახელები, რომლებიც ინფრასტრუქტურას ამჟღავნებს, ჩაწერეთ რეზოლვერის მისამართი, ფარგლები და გამოყენებული ინტერფეისი, და შეადარეთ ეს ჩანაწერი დოკუმენტირებულ განზრახვას. რუკის ეტიკეტი საუბრის კონტექსტია და არა ჩაბარებული ან ჩავარდნილი შედეგი, და მასთან განაჩენივით მოპყრობა დიაგნოსტიკის ნაცვლად კონფიგურაციის ცვლილებებს წარმოქმნის.