Pi-hole v6 53-portda DNS so‘rovini qabul qiladi va keyin kelgan paketga javob berishga ruxsat bor-yo‘qligini hal qiladi. WireGuard xostida bu ikkinchi qaror odatda mijoz nima uchun vaqt tugashiga uchraganini tushuntiradi, holbuki hal qiluvchi LAN tomondan sog‘lom ko‘rinadi. Port ochiq, FTL ishlayapti, lekin 10.90.0.1 dan hech narsa qaytmayapti. Javob chiqishidan oldin uch narsa o‘zaro ta’sir qiladi: dns.interface, dns.listeningMode va ikkalasining oldidagi tarmoq himoyasi.

Tinglovchi soket kim javob olishini hal qilmaydi

FTL 53-portda UDP va TCP tinglovchilarini ochadi. Standart konfiguratsiyada soket ko‘pincha wildcard bo‘ladi, shuning uchun ss -lunp | grep :53 VPN mijozlariga xizmat ko‘rsatilsa ham, ko‘rsatilmasa ham 0.0.0.0:53 va [::]:53 ni ko‘rsatadi. wildcard soket paketni qabul qiladi, so‘ng FTL javob berishdan oldin o‘zining interfeys va manba qoidalarini qo‘llaydi. Shuning uchun "port tinglayapti" degan gap tunnel mijozi haqida juda kam narsani isbotlaydi.

Faol deb o‘ylagan faylingiz o‘rniga ishlab turgan konfiguratsiyani o‘qing. pihole-FTL --config dns.interface va pihole-FTL --config dns.listeningMode haqiqiy qiymatlarni chop etadi va konteyner, muhit o‘zgaruvchisi yoki joylashtirish menejeri bu sozlamaga ega bo‘lsa, ular xost faylidan farq qilishi mumkin. Pi-hole FTL konfiguratsiyasi qo‘llanmasi rejimlarni va ulardan qaysi biri interfeysga tayanishini sanab o‘tadi.

LOCAL qaysi subnetworkni, SINGLE qaysi interfeysni so‘raydi

LOCAL, standart rejim, manba manzili xost interfeyslaridan birida sozlangan subnetworkga tegishli so‘rovlarga javob beradi. 10.90.0.1/24 bo‘lgan oddiy wg0 bu sinovdan o‘tadi, chunki 10.90.0.2 dagi mijoz tunnel subnetworki ichida o‘tiribdi. Peerning narigi tomonida marshrutlangan mijoz, yoki boshqa prefiksda NAT orqasida yashiringan mijoz, paket wg0 ga kelgan bo‘lsa ham undan o‘tmaydi va jurnalda hech qanday so‘rov ko‘rinmaydi.

SINGLE savolni o‘zgartiradi. U dns.interface da nomlangan interfeysga keladigan so‘rovlarni loopback bilan birga qabul qiladi va manba subnetworkini e’tiborsiz qoldiradi. Zanjirlangan yoki marshrutlangan VPN topologiyasida omon qoladigan rejim shu. Ikkala kalitni birgalikda sozlang, chunki nomlangan interfeyssiz rejim to‘liq ko‘rsatma emas:

sudo pihole-FTL --config dns.interface "wg0"
sudo pihole-FTL --config dns.listeningMode "SINGLE"

BIND soketni o‘zgartiradi va buning narxi bor

BIND wildcard soketni filtrlamaydi; 53-portni faqat nomlangan interfeysda mavjud manzillarga bog‘laydi, shuning uchun yadro boshqa joyga keladigan paketlarni rad etadi. U SINGLE dan qat’iyroq va uning sinonimi emas. Narx yuklanishda ko‘rinadi: agar FTL boshlanganda wg0 ko‘tarilmagan bo‘lsa, bog‘lash uchun manzil bo‘lmasligi mumkin va interfeys paydo bo‘lib FTL qayta ishga tushguncha hal qiluvchi tinglovchisiz ishlashi mumkin.

Ishga tushish tartibini nazorat qilsangiz BIND ni tanlang, masalan WireGuard interfeysidan keyin tartiblangan systemd birligi, va yadro FTL ko‘rishidan oldin adashgan paketlarni tashlashini istasangiz. Tunnel kelib-ketsa yoki interfeysni FTL dan keyin boshlanadigan vosita yaratsa, SINGLE ni tanlang.

Tarmoq himoyasi ikkinchi darvoza

To‘g‘ri FTL rejimi ham xost tarmoq himoyasi wg0 da 53-portni tashlasa muvaffaqiyatsiz bo‘ladi. Ikkala protokol uchun VPN manba diapazoniga ruxsat bering va internet tomonini yopiq tuting. nftables da, inet filter jadvalidagi mavjud input zanjiri bilan qoidalar shunday ko‘rinadi:

sudo nft add rule inet filter input iifname "wg0" ip saddr 10.90.0.0/24 udp dport 53 accept
sudo nft add rule inet filter input iifname "wg0" ip saddr 10.90.0.0/24 tcp dport 53 accept

Agar tunnel IPv6 tashisa, mos keladigan IPv6 qoidalarini qo‘shing va ularni zanjirning drop siyosatidan oldin qo‘ying. Agar xost ufw yoki firewalld ishlatsa, vositalarni aralashtirmasdan o‘sha menejerda bir xil moslikni ifodalang. 53-portni internet routeridan uzatmang; mijozlar hal qiluvchining VPN manziliga tunnel orqali yetib borishi kerak.

Ikki yo‘l alohida qoladi. Mijoz so‘rovlari FTL da tugaydi. FTL ning o‘z yuqori oqim qidiruvlari xostning marshrutlash jadvaliga ko‘ra chiqadi, u tunneldan foydalanishi ham, foydalanmasligi ham mumkin, shuning uchun javob beradigan, lekin foydali hech narsa qaytarmaydigan hal qiluvchi yuqori oqim muammosi. Veb-boshqaruv va API o‘z portlarida tinglaydi va o‘z chekloviga muhtoj.

Javobni va rad etishni tekshiring

VPN mijozidan hal qiluvchi manzilini ikkala protokolda so‘rang: dig @10.90.0.1 example.com va dig +tcp @10.90.0.1 example.com. So‘ng FTL so‘rovni qayd etganini tasdiqlash uchun boshqaruv interfeysidagi so‘rovlar jurnalini ko‘ring. Jurnal yozuvisiz mijozning vaqt tugashi tarmoq himoyasi yoki interfeys filtriga ishora qiladi; javobsiz jurnal yozuvi yuqori oqim hal qilinishiga ishora qiladi.

Salbiy yo‘lni VPN tashqarisidagi xostdan sinab ko‘ring. dig @10.90.0.1 example.com vaqt tugashiga uchrashi kerak, va ss -lunp hal qiluvchida 53-portning ommaviy manzilga bog‘langanini ko‘rsatmasligi kerak. Xizmatni bir marta qayta ishga tushiring, so‘ng xostni qayta yuklang va wg0 yana paydo bo‘lgandan keyin ham hal qiluvchi javob berishini tasdiqlang. Faqat keyingi qayta yuklashgacha ishlaydigan so‘rov tugallangan o‘zgarish emas.

O'xshash maqolalar