Docker: VPN sessiyasi davomida oldindan belgilangan manzil havzalari qolmaydi
Oldindan belgilangan havza xatosi avtomatik taqsimlashga oid, ommaviy manzillarga emas. Taqsimotlarni sanang, on-link marshrutlarni solishtiring va VPN siyosatini daxlsiz saqlang.
Xatolik aniq: Docker yangi ko‘prik tarmog‘i uchun maqbul avtomatik quyi tarmoqni topa olmayapti. Bu mashinaning manzillari tugaganini ham, VPN buzilganini ham bildirmaydi. Tashxisni ikki savol hal qiladi: daemon qaysi nomzod bloklarni ko‘ra oladi va bu muhitda uning taqsimlovchisi ulardan qaysilarini istisno qiladi. Ularni aynan shu tartibda ko‘rib chiqing, chunki birinchi savolga javob berilmaguncha ikkinchisining ma’nosi yo‘q.
Biror narsani o‘zgartirishdan oldin nima muvaffaqiyatsiz bo‘lganini tasdiqlang
Quyidagi qadamlarni daemon ishlayotgan xostda bajaring. Uzoq kontekst bilan gaplashayotgan qobiq boshqa mashinani tasvirlaydi va faqat shu xato bir soatni yo‘qotishi mumkin.
Shu bilan birga chiptada Engine versiyasini yozib qo‘ying. Ushbu qo‘llanmaning qolgan qismidagi har bir evristika versiyaga bog‘langan, versiyasiz da’vo esa mish-mishdir.
Sizda allaqachon mavjud taqsimotlarni sanang
Tarmoqlarni sanab chiqing, so‘ng muhimlarini tekshiring: docker network ls, keyin docker network inspect NETWORK_NAME. Ularning IPAM quyi tarmoqlarini va har biriga ulangan konteynerlarni o‘qing. Bir necha Compose loyihasi konteyner soni ko‘rsatganidan ko‘proq blok iste’mol qiladi, chunki har bir loyiha o‘zining standart tarmog‘ini yaratishga moyil. To‘xtatilgan konteyner o‘z tarmog‘ining taqsimotini bo‘shatmaydi.
Havza konfiguratsiyasini ham tekshiring, chunki standart havzaning asosiy diapazoni va har bir tarmoq uchun prefiks o‘lchami bor. Har bir tarmoqqa katta taqsimotlar mavjud bloklarni tezroq tugatadi va bu sig‘im haqiqati, marshrutlash muammosi emas.
Sonni yozib qo‘ying. Keyingi o‘zgarish yordam berdimi-yo‘qmi, shuni aytadigan asosiy chiziq shu.
Daemonning marshrutlarga qarashini solishtiring
VPN nomzodlar tanloviga ta’sir qilishi mumkin, ammo qanday qilib — buni aniq amalga oshirish hal qiladi. Linux’dagi Moby 28.2.2 versiyasida InferReservedNetworks nom serverlari manzillarini va ayrim on-link IPv4 marshrutlarini yig‘adi va har bir jadvaldagi har bir marshrutni shunchaki band qilmaydi. Yig‘ilgan bog‘lanish marshrutlari aniqlanmagan manzilni ham istisno qiladi, shuning uchun bitta 0.0.0.0/1 marshrut barcha manzillarni band qilmaydi. Boshqa keng on-link prefiksi, masalan 128.0.0.0/1, tanish 172 va 192 nomzod diapazonlarini kesishi mumkin.
VPN ulanmasidan oldin va keyin ip -4 route show table all ni daemon xostida solishtiring. Farq — dalil, versiya esa da’vo doirasi.
Bitta nashr evristikasini barcha nashrlarga umumlashtirmang. Forumdagi javob aynan shunday siyosat o‘zgarishiga aylanadi.
Ishlaydigan eng kichik tuzatishni tanlang
Agar tasdiqlangan foydalanilmayotgan tarmoq sizga kerakli blokni ushlab turgan bo‘lsa, keng kesish o‘rniga egasi bilan uning maqsadli chiqarilishini rejalashtiring. Yangi tarmoq uchun aniq ko‘rib chiqilgan foydalanilmayotgan quyi tarmoq avtomatik tanlovga bog‘liqlikdan butunlay qochadi. O‘sha quyi tarmoq baribir haqiqiy Docker, LAN va talab qilinadigan VPN manzillaridan qochishi kerak, chunki xususiy degani xavfsiz degani emas. Haqiqiy uzoq prefiksni marshrutlash taqsimot xatosini uzilgan kirish bilan almashtirardi.
default-address-pools ni o‘zgartirish kelgusi taqsimotlar haqidagi kengroq siyosatdir. Ziddiyatsiz asos va mos ajratilgan o‘lchamni tanlang, uni mavjud daemon sozlamalari bilan birlashtiring va hujjatlashtirilgan qayta ishga tushirish ta’sirini rejalashtiring. Mavjud tarmoqlar jimgina qayta raqamlanmaydi.
Taqsimot muvaffaqiyatli bo‘lishi uchun kompaniya marshrutlarini yuborishni o‘chirmang. Aniq manzil rejasi odatda majburiy siyosatni zaiflashtirmasdan mahalliy muammoni hal qiladi.
Taqsimot va marshrutlashni alohida qabul qiling
O‘zgarishdan keyin Docker haqiqatda yaratgan quyi tarmoqni tekshiring va ilovaning VPN hamda mahalliy bog‘liqliklarini sinab ko‘ring. Muvaffaqiyatli taqsimot va ish vaqtidagi to‘g‘ri marshrutlash ikki xil qabul tekshiruvidir va birinchidan o‘tish ikkinchisiga dalil emas. Agar ilova tunnel orqasidagi resursga yeta olmasa, havza xatosi yashirgan marshrutlash muammosi bor. Ikkala natijani chiptaga yozing.
Marshrut farqini va havza sonini o‘zgarish yozuvi bilan birga saqlang, chunki keyingi VPN mijozi yangilanishi Docker’ga tegmasdan birinchisini o‘zgartirishi mumkin.
Qo‘llanma boshqa birov bu ikki tekshiruvni takrorlab, xuddi shu javobni olganda tugallanadi.