Эки ээ, бир дарек: TAP көпүрөсүндөгү кайталанма IP
Дарегин биринчи туташканда гана сактаган VPN кардары жарышты эмес, ARP кагылышын утулат. Көпүрөдөгү даректин бардык ээсин табыңыз.
Бир Windows кардары 10.8.0.2 дарегин кармап, жүктөө тартиби өзгөргөнгө чейин иштейт; андан кийин ошол эле дарек кагылыш катары билдирилет, бирок кардарда эч нерсе өзгөргөн жок. Ошол эле көпүрөлөнгөн сегменттеги экинчи хост ошол эле маанини талап кылат, ал эми конфигурацияны акыркы бүткөн машина адатта утулат. Экөө тең аны өздүкү деп эсептешет, ал эми жеңилген тарап өзүнө колдонуу буйрулган даректи үнсүз колдонууну токтотот. Ушуну убакыт маселеси катары кароо анын ар бир кайра жүктөөдө кайталанышына алып келет.
Көпүрөгө тийүүдөн мурун кагылыштын далилдерин окуңуз
Windows дарек кагылышын экинчи талапкердин аппараттык дареги менен бирге билдирет. Ошол аппараттык дарек пайдалуу факт, анткени ал бир хосттогу бир интерфейске туура келет, ал эми окуянын көрсөтүлгөн аталышы кайталанма кайда экенин эч нерсе айтпайды. Бир нерсени өзгөртүүдөн мурун аппараттык даректи жазып алыңыз.
ARP негизиндеги кайталанманы аныктоо даректи колдонуудан мурун атаандаш ээлерди текшерет жана андан кийин да көзөмөлдөйт. Ошондуктан тармакты конфигурациялап жатканда жок болгон хост бир сааттан кийин да кагылыш жаратышы мүмкүн. Текшерүү жүктөөдө бир жолу жасалуучу текшерүү эмес. Кийинчерээк пайда болгон машина күн бою тынч колдонулуп келген даректи алышы мүмкүн, ошондуктан бузулуу конфигурация катасы эмес, жарыш сыяктуу окулат.
Кагылыш окуясы өзү эле экинчи талапты кайсы конфигурация жаратканын айтпайды, ал эми даректерди тажрыйба жүзүндө тазалоо сизге айта турган шайкештикти жок кылат. Далилдин максаты — аппараттык даректи текшере ала турган интерфейске айландыруу. Тизмени машинанын аты боюнча издөө адатта сизди туура эмес хостко жиберет.
Сегменттеги ар бир талапты тизмектеңиз
Көпүрөлөнгөн TAP конфигурациясы мурун өзүнчө болгон Ethernet сегменттерин бириктирет, ошондуктан өз тармактарында уникалдуу болгон даректер кадрлар бир байланышты бөлүшкөндө кагылышы мүмкүн. Ушундан улам бул бузулуулар классы VPNде бар жана ал алмаштырган маршрутталган тармактарда жок. Шектенген биринчи ээсин эмес, бардык мүмкүн болгон ээсин тизмектеңиз.
Тизмени ушундай тартипте өтүңүз: ар бир көпүрө түзмөгүндөгү жана анын мүчө портторундагы даректер, OpenVPN пулу жана ар бир кардар үчүн кандайдыр бир туруктуу дайындоо, ошондой эле көпүрөлөнгөн сегментти камтыган ар кандай DHCP сервери. Андан кийин кагылыш отчётундагы аппараттык даректи табылган интерфейстер менен салыштырыңыз.
ip -4 addr show | grep -E 'inet |^[0-9]+: '
bridge link show
ip neigh show dev br0
Пул жана DHCP диапазону адамдар унуткан эки ээ. Эки диапазонду бирге басып чыгарып, башка нерсе кылбастан мурун кабатташууну издеңиз. Кол менен дайындалган көпүрө дареги жана ошол эле маанини берген пул эртеби-кечпи кагылышат, ал эми эки диапазон катар басылмайынча кагылыш кокустан болгондой көрүнөт.
Көпүрөлөрдү идентификация керек болгон жерде гана номерлеңиз
Кадимки хост көпүрөсүндө көпүрө түзмөгү хосттун үчүнчү катмарынын конфигурациясын алып жүрөт, ал эми Ethernet жана TAP мүчөлөрү порт катары иштешет. Ар бир мүчөгө өз дарегин берүү же даректи өзгөртпөстөн бир орнотуу скриптин бир нече машинага көчүрүү — бир сегменттин ошол эле маанинин үч ээсине айланышынын жолу. Мүчөлөргө кадрларды өткөрүү үчүн өз идентификациялары керек эмес. Аларга ошол сегментте жеткиликтүү болушу керек болгон ар бир хостко так бир идентификация керек.
Кадрларды гана алмаштырган көпүрөгө ошол сегментте дарек такыр керек эмес. Аны номерсиз калтыруу кагылыштардын бүт классты жояды, бирок хостто сиз текшерген башкаруу жолу дагы бар болушу шарт. Адегенде кирүүнү ырастаңыз, экинчи даректи алып салыңыз, үчүнчү жеткиликтүүлүктү текшериңиз.
Эгер сиз жок кылмакчы болгон дарек машинага кирүүнүн жалгыз жолу болсо, аны тажрыйба катары жок кылуу — диагноз эмес, өзүңүз жараткан үзгүлтүк. Бир нерсени сынаарыңыздан мурун тышкы жолду текшериңиз.
Оңдоону кайра жүктөөгө туруктуу кылыңыз
Иштеп жаткан интерфейсти өзгөртүү учурдагы жүктөөнү оңдойт, башка эч нерсени эмес. Жүктөөдө даректи кайра жараткан нерсенин баары кийинки кайра жүктөөдө кагылышты калыбына келтирет, ал эми сиз оңдоо иштеген жок деп жыйынтык чыгарасыз, чындыгында ал эч качан туруктуу болгон эмес. Кайсы файлды өзгөрткөнүңүздү жазыңыз, кийинки кайра жүктөө сюрприз ачуунун ордуна чечимди ырастайт.
Ошол конфигурациянын ээсин табыңыз: тармак менеджеринин профили, интерфейс боюнча файл, контейнер же VM аныктамасы, же cloud-init үзүндүсү. Аны ошол жерде өзгөртүңүз, андан кийин жаңы маани кайра келерин ырастоо үчүн атайын бир жабыркаган хостту кайра жүктөңүз. Кайра жүктөө — туруктуулукту далилдеген жалгыз сыноо.
Көпүрө даректерин DHCP диапазонунун ичинде өзгөчөлүк катары сактаңыз же анын сыртына жылдырыңыз. Электрондук таблицада гана бар резервдөө өзгөчөлүк эмес жана бөлүштүргүч аны окубайт.
Муну бардык кардар тармакта турганда далилдеңиз
Бир ийгиликтүү туташуу эч нерсени далилдебейт, анткени баштапкы симптом тартип өзгөргөндө гана пайда болгон. Бардык пландалган кардарды күйгүзүңүз, жүктөө тартибин өзгөртүңүз жана кайра туташкандан кийин кайталаңыз. Андан кийин мурун жарышта жеңилген хостту кайра жүктөп, даректин сакталарын ырастаңыз.
Түз ырастоо үчүн даректи дайындоодон мурун кайталанма ээнин бар-жогун текшерип, андан кийин кошуналар таблицасын байкаңыз. Эч нерсе текшерүүгө жооп бербесе жана дарек толук кайра жүктөө циклинде уникалдуу бойдон калса, кагылыш жашырылбастан чечилген. Төмөнкү буйруктар эки текшерүүнү тең көпүрө түзмөгүндө аткарат. RFC 5227 бул куралдар аткарган текшерүү жана жарыялоо жүрүм-турумун сүрөттөйт жана бирөө аныктоону өчүрүүнү сунуш кылганда шилтеме жасоочу булак болуп саналат.
arping -D -I br0 10.8.0.2
ip neigh show dev br0 | grep 10.8.0.2
Жооп албаган текшерүү таза сегментте күтүлгөн натыйжа. Жооп жараткан текшерүү сизге калган ээнин аппараттык дарегин берет, бул баштапкы Windows окуясы берген далилдин өзү. Бул чыгарылышты өзгөртүү жазуусу менен бирге сактаңыз, анткени даректин уникалдуу кармалганынын жалгыз далили ошол.