iPhone-дағы WireGuard DNS: домен — тек іздеу жұрнағы
DNS жолына домен қосу бөлінген DNS сияқты көрінеді. Apple клиенттерінде ол тек қысқа атауларды толықтырады, ал әрбір сұрау әлі де туннель шешушісіне барады.
Сіз шешуші мекенжайы мен компания домені бар бір жол жазасыз және тек сол домендегі атаулар туннель шешушісін қолданады деп күтесіз. Apple клиентінде қазір барлық атаулар сонда барады, домендегі қысқа атаулар да шешіледі. Жол екі бөлек нәрсе жасайды, және олардың тек біреуі туннель қандай сұрауларды өңдейтініне қатысты. Екіншісі — теру ыңғайлылығы, ол қалаулы оқу арқылы саясатқа дейін көтерілген.
DNS жолы неге ыдыратылады
Клиент жазбаны тізім ретінде оқып, әр элементті пішіні бойынша жіктейді. Мекенжайға ұқсайтынның бәрі DNS серверіне айналады; доменге ұқсайтынның бәрі іздеу жұрнағына айналады. Екеуі де туннель параметрлеріне түседі, бірақ әртүрлі өрістерге. Жеке шешуші мен бір ішкі доменді тасымалдайтын туннель үшін үлгі жол былай көрінеді.
DNS = 10.24.8.53, lab.internal.exampleМекенжай шешушіні береді. Домен клиентке қысқа атау теруге және жүйеге сұрамас бұрын қалғанын қосуға мүмкіндік беретін жұрнақ береді. Екеуінің ешқайсысы шешушіні сол доменмен шектеу туралы ештеңе айтпайды, ал адамдар дәл осы бөлікті күтеді және алмайды. Платформада бұл шектеуді тек бір өріс білдіре алады, және бұл сол өріс емес.
Apple-дың екі өрісі, екі түрлі жұмыс
Apple бұл айырмашылықты өзінің DNS параметрлері нысанында көрсетеді. Іздеу домендерінің тізімі бір таңбалы хост атауларын біліктілендіру үшін қолданылатын тізім ретінде құжатталған: жалаң хост атауын теріңіз, жүйе әр жұрнақты кезекпен қосуы мүмкін. Бұл толықтыру ережесі, маршруттау ережесі емес. Бұл тізімде ештеңе қай серверге сұрау жіберілетінін шешпейді.
Сәйкестік домендерінің тізімі — басқа қасиет. Ол қай атау кеңістіктері осы DNS параметрлер жиынтығын қолданатынын шешеді, ал бос жазба нақты жұрнақты емес, әдепкі доменді білдіреді. пакеттік туннель параметрлерінің генераторы Apple клиентінде осы үлгіні ұстанады. Ол талданған іздеу жұрнақтарын іздеу тізіміне қояды, ал серверлер болса, сәйкестік тізімін бос жолға орнатады. Нәтиже — жүйе жібергеннің бәріне жауап беретін туннель шешушісі және қысқа атауларға көмектесетін жұрнақ.
Сондықтан сол жолдағы домен атау кеңістігінің таңдаушысы емес. Тағы біреуін қосу туннель қолданатын сұрауларды тарылтпайды, оны алып тастау да оларды кеңейтпейді. Өзгеретін жалғыз нәрсе — қанша қысқа атау толықтырылады.
Неге әр атау әлі де туннель шешушісіне жетеді
Бос сәйкестік жазбасымен туннель қарапайым атаулар үшін кандидат шешуші, тек компания домені үшін емес. Толық туннель конфигурациясында бұл әдетте маңызды емес, өйткені барлық трафик бәрібір туннельде. Бөлінген туннельде бұл өте маңызды. Жалпыға ортақ атауларды енді тек жеке аймақты ұстайтын шешуші шешуі мүмкін, ал сәтсіздік бұзылған VPN сияқты көрінеді, шын мәнінде бұл атау кеңістігінің бір бөлігіне ғана жауап беретін шешуші. Туннель дұрыс, сұраулар шығады, ал жауаптар бос қайтады.
Екі түзету бар және олар әртүрлі шешімдер. Туннель шешушісін жалпыға ортақ атауларды мақұлданған жолмен жіберетін толық шешушіге айналдырыңыз, немесе домендер тізімінің орнына клиент конфигурациясын өзгерту арқылы жалпыға ортақ атауларды сонда жіберуді тоқтатыңыз. Біріншісі әр сұрауды туннельде ұстайды және жоғарғы ағынға сенеді. Екіншісі кейбір сұрауларды жергілікті ұстайды және туннель өшірулі кезде жеке атаулар шешілуін тоқтатуы мүмкін екенін қабылдайды.
Бөлінген DNS-ке шын мәнінде не қажет болар еді
Атау кеңістігімен шектелген шешуші саясаты оны білдіруге мүмкіндік беретін клиентті талап етеді: Apple платформаларында домендерді сәйкестендіріңіз, немесе қолданатын өніміңіздегі балама параметр. Тек серверлер мен жұрнақтарды қабылдайтын конфигурация өрісі оны қалай тыныс белгіленсе де білдіре алмайды. Профиль бұл саясатты тасымалдай алады, өйткені ол қосылу сәтіндегі нұсқауды емес, басқарылатын конфигурацияны сипаттайды. Ол доменді, серверлерді және сол домен қолжетімсіз болғанда не болуы керегін атай алады. Бұл параметр мен келісімшарт арасындағы айырмашылық.
Басқарылатын Apple құрылғыларында бұл әдетте доменге тән DNS параметрлерін тасымалдайтын конфигурация профилі арқылы беріледі. Бұл WireGuard конфигурация файлынан өзге механизм, және екеуі клиент профильді құрметтесе ғана бірге бола алады. Екі өнім бірдей әрекет етеді деп болжамас бұрын клиентіңіз өрісті шын мәнінде қалай атайтынын тексеріңіз. Mac-тегі wg-quick скрипті мен iPhone-дағы WireGuard қолданбасы ұқсас жолдарды оқып, оларды әртүрлі қабаттар арқылы орнатады.
Орнатылған параметрлерді оқыңыз, конфигурацияны емес
Mac-те жүйенің немен аяқталғанын тексере аласыз, бұл жазған файлыңызды қайта оқығаннан гөрі ақпараттырақ. Шешушілер тізімі қай серверлердің қай домендер үшін конфигурацияланғанын көрсетеді, ал шектелген сұраулар қайсысы жеңгенін көрсетеді. Жолды бүлдіретін клиент мұны жазған файлыңызда емес, осында көрсетеді. iOS-те балама пәрмен жолы жоқ, сондықтан ондағы дәлел — нәтиже: туннель арқылы шешілетін жеке атау және жауабы қай шешуші жауап бергенін ашатын жалпыға ортақ атау.
scutil --dns | grep -A3 resolver
networksetup -getdnsservers Wi-FiБұл екі пәрмен ағымдағы шешуші конфигурациясын және белсенді қызметтің DNS серверлерін шығарады. Егер туннель шешушісі домен шектеуінсіз әдепкі шешуші ретінде көрінсе, конфигурация клиент сұрағанды дәл орындайды. Мұны механизмді өзгерту арқылы түзетіңіз, екінші жұрнақ қосып, мінез-құлық өзгереді деп үміттену арқылы емес.