Некои L2VPN рути исчезнуваат откако ќе додадете рефлектори на рути
Сесиите остануваат активни, но неколку L2VPN рути никогаш не пристигнуваат. Повторно искористените ID на кластер, клиентските врски и графот на рефлексија го објаснуваат тоа селективно губење.
Сесиите остануваат активни, IGP е стабилен, а сепак неколку L2VPN рути никогаш не се појавуваат на две од четирите рабови на провајдерот. Овој образец припаѓа на проблем со рефлексија, а не со транспорт, бидејќи скршената сесија пропаѓа целосно, додека повторно искористената граница на рефлексија пропаѓа селективно. Физичкиот прстен нема врска со тоа; логичкиот граф на распределба е местото каде што тие рути застанаа. Наоѓањето на таа точка не бара повторно градење на контролната рамнина.
Губењето е селективно, што го стеснува пребарувањето
Четири провајдерски рабови на физички прстен бараат шест логички сесии за целосна мрежа, бидејќи секој рутер се спарува со другите три. Тие сесии одат преку рутираниот транспорт, па кабелот не кажува ништо за тоа колку соседства постојат или кое од нив рефлектира. Кога два раба пропуштаат одредено множество префикси, додека сето друго конвергира, кабелот не е осомничениот.
Селективното губење укажува на спречување јамки, политика или насока на врската, каде некои рути ја преминуваат границата, а други се отфрлаат на патот. Целосното губење укажува на сесијата или на фамилијата адреси. Да се одлучи која од двете ја гледате е првиот корисен чекор, и тоа бара една команда.
Што всушност менува рефлексијата
Рефлексијата на рути ја олабавува правилото дека iBGP говорник не смее повторно да објавува рута научена од друг iBGP говорник. RFC 4456 го изразува исклучокот преку врската меѓу говорникот и изворот на рутата, а насоката на таа врска е поважна отколку што сугерираат повеќето резимеа. Рута научена од клиент може да се рефлектира кон други клиенти и кон не-клиенти, додека рута научена од не-клиент може да се рефлектира само кон клиенти. Прочитајте ја асиметријата двапати, бидејќи таа објаснува како додавањето клиентска врска може да скрие грешка во дизајнот: отвора пат што топологијата никогаш не го предвидела.
Атрибутот CLUSTER_LIST ја запишува историјата на рефлексија, а рефлекторот што ќе го најде сопствениот ID на кластер во таа листа мора да го игнорира објавувањето. Тоа е спречување јамки, и тоа е исто така механизмот што брише рути кога идентификаторите случајно се користат повторно. ORIGINATOR_ID игра сродна улога со тоа што го именува рутерот што прв ја објавил рутата.
Повторно искористените ID на кластер се начинот на кој рутите исчезнуваат
Малата мрежа повикува на кратенка: дајте му на секој рутер ID на кластер еднаков на неговиот loopback, подоцна додадете уште еден рефлектор и повторно искористете постоечки loopback зашто е прирачно. Ако тој идентификатор сега се појави во две независни фази на рефлексија, втората фаза го гледа сопствениот ID во CLUSTER_LIST и ја отфрла рутата. Ништо не запишува грешка, бидејќи отфрлањето е правилниот одговор на јамка.
Вишокот рефлектори што служат еден кластер се законскиот исклучок: тие намерно делат ID за да може секој од нив да ги служи истите клиенти. Идентификаторот мора да одговара на дизајнот на рефлексија, а не да разликува имиња на куќишта.
Нацртајте го предвидениот граф пред да допрете каква било конфигурација: кој го создава префиксот, која клиентска врска ја дозволува првата рефлексија, кој рефлектор ја носи до следната фаза и каде седи последниот клиент. Секој скок во тој граф е место каде повторно искористен идентификатор, врска што недостасува или филтер на политика може да ја запре рутата. Кога графот е нацртан, рутата што недостасува има место наместо мистерија.
Спротивставете се на искушението секој сосед да стане клиент
Брзата поправка за рута што недостасува е секој сосед да стане клиент на секој рефлектор. Ширењето се враќа, а дизајнот престанува да ви кажува било што: ги умножува рутите што ги носи секој говорник и истовремено крие која врска требало да ја заврши работата.
Малата мрежа обично бара една од две форми. Целосна iBGP мрежа е шест сесии за четири рутери сосема без рефлексија, а назначениот пар рефлектори што ги служи останатите рабови е другата. И двете се полесно да се промислат од делумна мрежа во која секој рутер малку рефлектира. Изберете ја формата според размерот и однесувањето при отказ, а не според шемата на каблирање.
Проверете ја фамилијата адреси пред да ја обвините рефлексијата
TCP сесија на портата 179 докажува дека двата говорници можат да разговараат, и ништо за тоа дали фамилијата адреси на VPN разменила барем една рута. Утврдете ја состојбата на сесијата, потоа фамилијата, потоа поединечниот префикс.
vtysh -c "show bgp summary"
vtysh -c "show bgp l2vpn evpn summary"
vtysh -c "show bgp l2vpn evpn"
Тие три излези го одвојуваат проблемот со соседството од проблемот со размена и од проблемот со префикс што недостасува. Ако фамилијата воопшто не покажува префикси, проверете ја состојбата на активирање и политиката за извоз на соседот пред да гледате во рефлексија. Ако префикси се појавуваат на еден раб но не на друг, споредете ја листата на кластери и изворот на страната што прима, потоа поминете низ графот од претходниот дел.
Држете ја достапноста на следниот скок и состојбата на препраќање надвор од таа проверка. Рефлектирана рута со недостапен следен скок е присутна и неупотреблива, што изгледа како отказ на рефлексијата додека не ја погледнете колоната за следниот скок. Решете го следниот скок, потврдете го записот за препраќање и само тогаш одлучете дали графот на распределба бара уште еден рефлектор.