Bitta Windows mijozi 10.8.0.2 ni ushlab turadi va yuklash tartibi o'zgarmaguncha ishlaydi; keyin mijozda hech narsa o'zgarmagan bo'lsa-da, xuddi shu manzil to'qnashuv deb xabar qilinadi. Xuddi shu ko'priklangan segmentdagi ikkinchi xost ham xuddi shu qiymatni talab qiladi va konfiguratsiyani oxirgi bo'lib tugatgan mashina odatda yutqazadi. Ikkalasi ham uni o'ziniki deb hisoblaydi, yutqazgan esa o'ziga ishlatish buyurilgan manzildan jimgina foydalanishni to'xtatadi. Aynan buni vaqt muammosi deb qarash har bir qayta yuklashda takrorlanishiga sabab bo'ladi.

Ko'prikka tegishdan oldin to'qnashuv dalillarini o'qing

Windows manzil to'qnashuvini boshqa da'vogarning apparat manzili bilan birga xabar qiladi. Aynan shu apparat manzili foydali fakt, chunki u bitta xostdagi bitta interfeysga to'g'ri keladi, hodisaning ko'rsatilgan nomi esa dublikat qayerdaligi haqida hech narsa demaydi. Biror narsani o'zgartirishdan oldin apparat manzilini yozib qo'ying.

ARP asosidagi dublikatlarni aniqlash manzil ishlatilishidan oldin raqib egalarni tekshiradi va keyin ham kuzatishda davom etadi. Shuning uchun tarmoqni sozlayotganda yo'q bo'lgan xost bir soatdan keyin ham to'qnashuvga sabab bo'lishi mumkin. Tekshiruv yuklashda bir marta bajariladigan nazorat emas. Keyin paydo bo'lgan mashina kun bo'yi jimgina ishlatilgan manzilni olishi mumkin, shuning uchun nosozlik konfiguratsiya xatosi emas, poyga kabi o'qiladi.

To'qnashuv hodisasining o'zi qaysi konfiguratsiya boshqa da'voni yaratganini aytmaydi, manzillarni tajriba tariqasida o'chirish esa buni aytib beradigan moslikni yo'q qiladi. Dalilning maqsadi apparat manzilini siz tekshira oladigan interfeysga aylantirishdir. Inventarni mashina nomi bo'yicha qidirish odatda noto'g'ri xostga olib boradi.

Segmentdagi har bir da'voni ro'yxatga oling

Ko'priklangan TAP sozlamasi ilgari alohida bo'lgan Ethernet segmentlarini birlashtiradi, shuning uchun o'z tarmoqlarida noyob bo'lgan manzillar kadrlar bitta havolani bo'lishganda to'qnashishi mumkin. Shu sababli bu nosozlik sinfi VPNda mavjud va u almashtirgan marshrutlangan tarmoqlarda mavjud emas. Shubha qilgan birinchi egangizni emas, har bir mumkin bo'lgan egasini sanang.

Ro'yxatni shu tartibda ko'rib chiqing: har bir ko'prik qurilmasidagi va uning a'zo portlaridagi manzillar, OpenVPN hovuzi va har bir mijoz uchun har qanday qat'iy taqsimlash, shuningdek ko'priklangan segmentni qamrab oluvchi har qanday DHCP serveri. So'ngra to'qnashuv hisobotidagi apparat manzilini topilgan interfeyslar bilan moslashtiring.

ip -4 addr show | grep -E 'inet |^[0-9]+: '
bridge link show
ip neigh show dev br0

Hovuz va DHCP diapazoni odamlar unutadigan ikki egadir. Ikkala diapazonni birga chop eting va boshqa narsa qilishdan oldin qoplanishni qidiring. Qo'lda tayinlangan ko'prik manzili va xuddi shu qiymatni beradigan hovuz ertami-kechmi to'qnashadi, ikkala diapazon yonma-yon chop etilmaguncha to'qnashuv tasodifiy ko'rinadi.

Ko'priklarni faqat identifikatsiya kerak bo'lgan joyda raqamlang

Oddiy xost ko'prigida ko'prik qurilmasi xostning uchinchi qatlam konfiguratsiyasini olib yuradi, Ethernet va TAP a'zolari esa port vazifasini bajaradi. Har bir a'zoga o'z manzilini berish yoki manzilni o'zgartirmasdan bitta sozlash skriptini bir nechta mashinaga ko'chirish — bitta segmentning bir xil qiymatning uchta egasiga ega bo'lish yo'li. A'zolarga kadrlarni uzatish uchun o'z identifikatsiyalari kerak emas. Ularga o'sha segmentda yetib borish mumkin bo'lgan har bir xost uchun aynan bitta identifikatsiya kerak.

Faqat kadrlarni almashtiruvchi ko'prikka o'sha segmentda manzil umuman kerak emas. Uni raqamsiz qoldirish to'qnashuvlarning butun sinfini yo'q qiladi, agar xostda siz tekshirgan boshqaruv yo'li hali bo'lsa. Avval kirishni tasdiqlang, ikkinchi manzilni olib tashlang va uchinchi yetib borishni tekshiring.

Agar siz o'chirmoqchi bo'lgan manzil mashinaga kirishning yagona yo'li bo'lsa, uni tajriba sifatida o'chirish tashxis emas, o'zingiz keltirib chiqargan uzilishdir. Biror narsani sinashdan oldin tashqi yo'lni tekshiring.

Tuzatish qayta yuklashga bardosh bersin

Ishlayotgan interfeysni o'zgartirish joriy yuklashni tuzatadi, boshqa hech narsani emas. Yuklashda manzilni qayta yaratadigan narsa keyingi qayta yuklashda to'qnashuvni tiklaydi va siz tuzatish ishlamadi degan xulosaga kelasiz, aslida u hech qachon doimiy bo'lmagan. Qaysi faylni o'zgartirganingizni yozib qo'ying, keyingi qayta yuklash syurpriz ochish o'rniga qarorni tasdiqlasin.

O'sha konfiguratsiyaning egasini toping: tarmoq menejeri profili, interfeys bo'yicha fayl, konteyner yoki VM ta'rifi, yoxud cloud-init bo'lagi. Uni o'sha yerda o'zgartiring, keyin yangi qiymat qaytishini tasdiqlash uchun ataylab bitta zararlangan xostni qayta yuklang. Qayta yuklash doimiylikni isbotlaydigan yagona sinovdir.

Ko'prik manzillarini DHCP diapazoni ichida istisno sifatida saqlang yoki ularni tashqariga ko'chiring. Faqat jadvalda mavjud bo'lgan rezervlash istisno emas va taqsimlovchi uni o'qimaydi.

Buni barcha mijoz onlayn bo'lganda isbotlang

Bitta muvaffaqiyatli ulanish hech narsani isbotlamaydi, chunki asl belgi faqat tartib o'zgarganda paydo bo'lgan. Har bir mo'ljallangan mijozni ishga tushiring, yuklash tartibini o'zgartiring va qayta ulangandan keyin takrorlang. So'ngra ilgari poygada yutqazgan xostni qayta yuklang va manzil saqlanib qolganini tasdiqlang.

To'g'ridan-to'g'ri tasdiqlash uchun manzilni tayinlashdan oldin takroriy ega bor-yo'qligini tekshiring va keyin qo'shnilar jadvalini kuzating. Agar hech narsa tekshiruvga javob bermasa va manzil to'liq qayta yuklash sikli davomida noyob egallab turilsa, to'qnashuv yashirilmay hal qilingan. Quyidagi buyruqlar ikkala tekshiruvni ham ko'prik qurilmasida bajaradi. RFC 5227 bu vositalar bajaradigan tekshirish va e'lon qilish xatti-harakatini tavsiflaydi va kimdir aniqlashni o'chirishni taklif qilganda murojaat qilinadigan manba shu.

arping -D -I br0 10.8.0.2
ip neigh show dev br0 | grep 10.8.0.2

Javob olmagan tekshiruv toza segmentda kutilgan natijadir. Javob tortgan tekshiruv sizga qolgan egasining apparat manzilini beradi, bu boshida Windows hodisasi bergan dalilning aynan o'zi. Bu chiqishni o'zgarish yozuvi bilan birga saqlang, chunki manzil noyob ushlab turilganining yagona isboti shu.

O'xshash maqolalar