Tunnel mobil ma'lumotda ko'tariladi va keyin uyda ulanmoqda holatida qoladi; bir xil profil, bir xil peer kaliti va orada hech qanday konfiguratsiya o'zgarishi yo'q. Farq yo'lda: LAN ichidan routerning umumiy manziliga ketayotgan so'rov internetdan kelayotgan so'rov bilan bir xil sayohat emas. Uy shlyuzlarining ko'pchiligi qaytish yo'lini yoki umuman amalga oshirmaydi, yoki faqat ayrim protokollar uchun amalga oshiradi. Bu kalitda hech narsa o'zgarmagan bo'lsa-da, belgini buzilgan kalitga o'xshatadi. Kalit, port yo'naltirish yoki mijoz profiliga tegishdan oldin qaysi yo'l muvaffaqiyatsiz bo'lganini aniqlang.

Bitta manzil, ikki xil yo'l

Tashqaridan paket routerning umumiy manziliga yetib boradi va port yo'naltirish qoidasi uni ichki xostdagi WireGuard tinglovchisiga beradi. Ichkaridan mijoz o'sha umumiy manzilni chaqiradi, shuning uchun paket mijozdan chiqadi, routerga yetib boradi va LAN tomon orqaga burilishi kerak. Ikki yo'l aynan shu burilishda ajraladi, chunki router bir xil interfeysdan ham chiqadigan, ham qayta kiradigan oqimni tarjima qilishi kerak. Ko'p ilovalar uni tarjima qilish o'rniga tashlab yuboradi va mijoz keyin hech qachon yuborilmagan qo'l siqishni kutadi.

Bu xatti-harakat odatda NAT loopback yoki hairpinning deb ataladi va u WireGuardga emas, routerga tegishli; RFC 4787 shlyuz qo'llab-quvvatlashi mumkin yoki mumkin bo'lmagan tarjima holatlarini bayon qiladi. WireGuardning o'zi yo'l haqida fikr bildirmaydi, chunki u faqat interfeysiga yetib kelgan paketlarni ko'radi. Router oqimni tashlab yuborsa, daemon hech qachon hech narsa olmaydi, mijoz qo'l siqish vaqti tugaganini xabar qiladi va server jurnali bo'sh qoladi. Bo'sh jurnal shuning uchun paket qayerda to'xtaganiga ishora, server ishdan chiqqaniga dalil emas. Qayta o'rnatish hech narsani o'zgartirmasligining sababi ham shu.

Aksi ham muhim: LAN manzilidan qo'l siqish urinishini ko'rsatgan server jurnali paket yetib kelganini va yo'l yaxshi ekanini isbotlaydi, bu esa tekshiruvni kalitlar va ruxsat etilgan manzillarga o'tkazadi. Jurnalni u isbotlagan narsa uchun o'qing, ko'rishni umid qilgan narsangiz uchun emas.

Biror narsani o'zgartirishdan oldin uni qayta hosil qiling

Bir xil qurilma va bir xil profil bilan ruxsat etilgan tashqi tarmoqdan sinab ko'ring, so'ng hech narsani tahrirlamasdan sinovni LAN ichida takrorlang. Tashqarida tugallangan qo'l siqish va ichkarida qurilmadan hech qachon chiqmaydigan mijoz holatni taxmin qilish o'rniga qayta hosil qiladi. Ikkala urinish ham bir xil profildan foydalanishi kerak, aks holda taqqoslash hech narsani isbotlamaydi.

Keyin oxirgi nuqta nomi bu qurilma uchun nimaga hal bo'lishini ko'ring. Quyidagi uchta buyruq mijoz aslida qaysi manzilni chaqirganini ham ko'rsatadi:

wg show wg0 endpoints
dig +short vpn.example.net A
resolvectl query vpn.example.net

Birinchi buyruq interfeys hozir ishlatayotgan oxirgi nuqtani xabar qiladi, qolgan ikkitasi esa nom bu mashinada nimaga hal bo'lishini ko'rsatadi. Server bilan bir xil tarmoqda o'tirib umumiy manzilni chaqirayotgan mijoz hairpin yo'lidan foydalanmoqda. LAN manzilini chaqirayotgan mijoz buni qilmaydi va u yerdagi nosozlik boshqa tekshiruvga tegishli. Bu farq keyingi bo'lim umuman tegishli yoki yo'qligini hal qiladi.

Yaqin serverga yetishning qo'llab-quvvatlanadigan yo'llari

Eng toza tartib gorizont bo'linishi javobidir: umumiy nom internet uchun umumiy manzilga, ichkaridagi mijozlar uchun esa serverning LAN manziliga hal bo'ladi. Profil bitta oxirgi nuqta nomini saqlaydi va hal qiluvchi yo'lni tanlaydi. Bu ichki DNS javobini boshqarishni talab qiladi; uy routeri odatda buni taklif qiladi va tashkilot buni ataylab sozlashi mumkin. Bu boshqaruvsiz qolgan variantlar router funksiyasi yoki ikkinchi profildir.

Router funksiyasi aks ettirishdir: shlyuz oqimni ichkaridan tashqariga tarjima qiladi va yana ichkariga yuboradi. Ishlaydigan joyda mijoz o'zgarishi kerak emas, ishlamaydigan joyda hech qanday mijoz sozlamasi uni qutqarmaydi. Uni routerning funksiyalar ro'yxatini o'qish o'rniga ichki urinish paytida server jurnalini kuzatib sinab ko'ring.

Profilni shaxsiy manzilga tahrirlash diagnostika, dizayn emas. U serverning LANda javob berishini isbotlaydi va noutbuk uydan chiqqan paytda o'sha profilni buzadi.

ApproachWhat it depends onWhere it fails
Split-horizon nameControl of the internal DNS answerClients that resolve through a server outside the zone
Router reflectionGateway support for hairpin translationRouters that drop the flow silently
Private address in the profileNothing beyond the LANEvery network except the one at home

Profilni uydan uzoqda foydalanishga yaroqli saqlang

Qaysi yo'lni tanlasangiz ham, identifikatsiya tekshiruvini tinch qo'ying. Oxirgi nuqta manzili peer identifikatsiyasi emas va manzil o'zgarishi tasodifan javob beradigan aloqasiz umumiy kalitni qabul qilishni hech qachon oqlamaydi. WireGuard kalit bilan autentifikatsiya qiladi, shuning uchun noto'g'ri xost kutilmagan narsaga kirish berish o'rniga qo'l siqishda muvaffaqiyatsiz bo'ladi.

Agar umumiy manzil ko'chsa, nomni foydali saqlaydigan narsa dinamik DNSdir va mijozning yangilanish xatti-harakati o'zgarish qanchalik tez yetib kelishini hal qiladi. Buni manzil o'zgarishidan keyin tashqaridan sinab ko'ring, chunki LAN holati buni tasdiqlay olmaydi. Eski javobni yozuv umridan uzoq keshlaydigan hal qiluvchidan ehtiyot bo'ling. Hali ham oldingi manzilga ishora qiladigan nom aynan yiqilgan serverga o'xshaydi.

Profil qaysi nomdan foydalanishini va chegaraning har ikki tomonida nimaga hal bo'lishini yozib qo'ying. Hech kim qayd etmagan router funksiyasiga bog'liq profil keyingi proshivka yangilanishini kutayotgan qo'llab-quvvatlash qo'ng'irogidir. Yozuv keyingi odamga ichki nosozlik taniqli hairpin holatimi yoki yangi narsami, shuni aytadi.

O'xshash maqolalar