OpenVPN DNS serverini yubordi, ammo Linux uni e’tiborsiz qoldiradi
Yuborilgan DNS server jurnalda, tunnel ishlamoqda, ichki nomlar esa baribir ishlamayapti. Rizolver havolasini tekshiring va ulanishga bitta egasini tanlang.
Yuborilgan DNS server jurnalda, tunnel ishlamoqda, ichki nomlar esa baribir ishlamayapti. Yuborishning o’zida hech narsa buzilmagan; sozlama yetib keldi va shu yerda to’xtadi. Yuborilgan DNS varianti mijozga berilgan xabar, operatsion tizim rizolveriga berilgan ko’rsatma emas, va aynan ular orasidagi topshirish shunday holatlarning ko’pchiligi tugaydigan joy. Beshta tekshiruv ketma-ketlikda amalga oshmagan topshirishni topadi.
Birinchi tekshiruv: ulanish qanday boshlanadi
Ulanishning egasi rizolver sozlamalarini kim qo’llashi mumkinligini belgilaydi. Qobiqdan berilgan to’g’ridan-to’g’ri openvpn buyrug’i o’z jarayonidan boshqa narsaga ega emas, systemd birligi, NetworkManager yoki sotuvchi mijozi esa DNS e’lon qilishning o’z yo’liga ega. Ulardan birini taxmin qilishdan oldin jarayonlar ro’yxatini va birlik nomini o’qing.
Buyruq qatori jarayoni avtomatik ravishda NetworkManager ulanishi emas, NetworkManager ulanishi ham avtomatik ravishda resolv.conf yozgan narsa emas. Bu ikki taxmin bu tekshiruvda yo’qotilgan soatlarning ko’pini tushuntiradi. Siz haqiqatda ko’rib turgan interfeys uchun DNS ni qaysi komponent e’lon qilishini so’rang.
Davom etishdan oldin egasini yozib qo’ying. Har bir keyingi tekshiruv unga bog’liq.
Ikkinchi tekshiruv: rizolver havolasi aslida nima saqlaydi
systemd-resolved xostida resolvectl status har bir havolani uning DNS serverlari va domenlari bilan ro’yxatlaydi. Tunnel havolasini toping va uning yozuvlarini o’qing, hamda interfeys tun0 deb nomlangan deb o’ylamang, chunki raqamlash yaratilish tartibiga amal qiladi. Agar yuborilgan manzil havolada bo’lmasa, so’rov emas, topshirish muvaffaqiyatsiz bo’lgan.
Agar manzil mavjud bo’lsa, keyingi savol bu havola qaysi domenlarni talab qiladi degani. Domen ro’yxatisiz havola faqat to’g’ridan-to’g’ri so’ralgan nomlarga javob beradi, va split-DNS joylashtirishi buni kamdan-kam xohlaydi. Manzilning o’zi zarur, ammo yetarli emas.
Har qanday xulosa chiqarishdan oldin rizolver chiqishidagi havola nomini VPN jurnalida interfeys nomi bilan solishtiring. U yerdagi nomuvofiqlik odatda jurnal satri boshqa jarayondan kelganini bildiradi.
Uchinchi tekshiruv: nomlar fazosi o’sha havolani tanlaydimi
Rizolver to’g’ri serverni saqlashi va baribir so’ralmasligi mumkin. Har bir havola uchun domen qaysi so’rov qaysi havolaga borishini belgilaydi, marshrutlash domeni bo’lmasa xususiy nomlar fazosi standart havola aytgan narsaga qaytadi. Shuning uchun ichki nom uchun resolvectl query muvaffaqiyatli bo’lishi mumkin, ammo dastur baribir ishlamayapti. Dastur butunlay boshqa rizolver yo’lidan foydalanayotgan bo’lishi mumkin.
Domen tayinlanishini tekshiring, faqat server manzilini emas. ~corp.example deb yozilgan domen marshrutlash domeni, va tilde belgisi nom qanday moslashtirilishini o’zgartiradi.
Agar dasturning o’z rizolveri bo’lsa, tizim asbobi bilan emas, u ishlatadigan mexanizmning o’zi bilan sinab ko’ring. Tizim rizolverini chetlab o’tadigan so’rov asbobi havola holatidan qat’iy nazar muvaffaqiyatli bo’ladi.
To’rtinchi tekshiruv: bitta ega, ikkita emas
Agar NetworkManager allaqachon VPN va rizolver holatini boshqarsa, aloqasiz hook skriptini qo’shish raqobat qiluvchi yozuvchilarni yaratadi. Paket systemd-resolved uchun taqdim etadigan hook qo’llab-quvvatlanadigan integratsiya bo’lib, muayyan hayot tsiklini kutadi: script-security 2, up yo’li, up-restart, down yo’li va down-pre. Bu variantlar ro’yxatga olish va olib tashlash faqat birinchi ulanishda emas, to’g’ri paytlarda sodir bo’lishini ta’minlaydi.
Qo’llanmadan ko’chirilgan misol yo’lini emas, paketdan o’rnatilgan yo’lni ishlating. Ruxsatlar ham muhim, chunki hook imtiyozlar tushgandan keyin ishlaydi.
Tarqatma rizolver skriptini chiqish maqsadini o’zgartirish uchun tahrirlash bitta xostning chetlanish yo’lini qayd etadi. Bu umumiy tuzatish emas.
Beshinchi tekshiruv: qayta ulangandan keyin ham xuddi shu natija
Qayta ulanib, havolani yana o’qing. Bir marta ko’rinib, keyingi o’tishda yo’qoladigan ro’yxatga olish — bu butun tekshiruv ro’yxati ushlash uchun mavjud bo’lgan nosozlik. Kutishdan keyin, majburiy qayta ulanishdan keyin va rizolver xizmatini qayta ishga tushirgandan keyin sinab ko’ring. Har bir o’tish tartib haqidagi boshqa taxminni sinaydi.
Qayta ulanishda besh tekshiruvning barchasi o’tgandagina yuborilgan sozlamalar ishlatilmoqda deb ayta olasiz. Undan oldingi hamma narsa omadli lahzaning suratidir.