Заявката пристига като промяна в един ред: да се блокира един адрес. Добавяте маршрут до хост към Null0 в контекста на тенанта, префиксът изчезва от локалната таблица както се очаква и тогава започват въпросите. Маршрутът напусна ли устройството? Далечните VTEP отхвърлиха ли, или просто загубиха достъпност? Засегнат ли е втори тенант?

Правилният локален статичен маршрут отговаря само на първия от тези въпроси, затова промяната тип blackhole всъщност представлява три прегледани резултата, а не една команда.

Какво всъщност трябва да произведе промяната

Започнете, като запишете трите резултата. Целевият тенант трябва да отхвърли дестинацията локално. Само разрешеният маршрут може да бъде експортиран и нищо друго да не пътува с него. Всеки приемащ VTEP трябва да избере предвиденото действие за отхвърляне, а не друг път.

Всеки резултат има свои собствени доказателства и нито един не предполага останалите. Локалният маршрут Null0 дава локално отхвърляне и без преразпределяне не експортира нищо. Преразпределен маршрут без договорената community пристига като обикновен префикс и се препраща. Community без политика за приемане може да бъде напълно игнорирана.

Записването на резултатите първо ви предпазва и от чест провал: промяна, която изглежда работи, защото дестинацията вече е била недостъпна по несвързана причина. Ако не можете да опишете как ще различите двете, приемният тест още не е проектиран.

Локалната декларация прави само първата част

За NX-OS в линията 10.4(x) маршрутът null стои в контекста на VRF на тенанта, а не в една команда, която назовава VRF. Фрагментът е кратък и категорично не е пълна EVPN конфигурация.

vrf context TENANT_A
  ip route 192.0.2.10/32 Null0

Адресът е документационен префикс, не цел. Отбележете разликата в синтаксиса спрямо IOS, където името на VRF се появява в самата команда за маршрут, и потвърдете поддържаната форма за изданието, което реално използвате, преди да поставите каквото и да е.

Сама по себе си този ред отхвърля трафика към този хост в TENANT_A и не прави нищо друго. Не маркира маршрута, не го избира за BGP и не задава community. Това са отделни конфигурационни решения и всяко едно е място, където промяната може да е или твърде тясна, за да работи, или твърде широка, за да е безопасна.

Локалното отхвърляне засяга и легитимния трафик към същата дестинация. Ако целта е да се спре един злоупотребяващ източник, докато реалните потребители все още се нуждаят от адреса, маршрутът null е грешният инструмент и ще го научите от първото обаждане в поддръжката.

Експортът и импортът са отделни споразумения

Преразпределянето е мястото, където се решава обхватът. Ограничете допустимите префикси до одобреното смекчаване, задръжте ги в тенанта и ограничете изходните пиъри до тези в дизайна. Преразпределянето на всеки статичен маршрут, защото един маркиран маршрут до хост трябва да пътува, е начинът, по който промяна по поддръжката се превръща в инцидент по маршрутизацията.

Community BLACKHOLE е споразумение за известна стойност, а не разрешение всеки съсед да отхвърля всеки адрес. RFC 7999 го описва точно в тези термини, а границата на доверие около това кой може да го обявява е част от дизайна, а не детайл на реализацията.

Приемащата страна се нуждае от собствена конфигурация. В NX-OS маршрутите null от тип 5 изискват обработка с route-map на VTEP, за да се избере поведението на отхвърляне, което е документирано заедно със стъпките за експорт. Устройство изпращач, което маркира правилно, и приемник, който игнорира маркера, дават промяна, която изглежда приложена и все пак препраща трафика.

Прегледайте route-map за странични ефекти, докато сте там. Нова ограничителна политика може да потисне легитимна достъпност за несвързани префикси и тази щета се появява по-късно от blackhole и е по-трудно да се припише на него.

Напишете оттеглянето преди вмъкването

Запишете собственика на дестинацията, причината, одобряващия и срок на валидност, преди да бъде конфигурирано нещо. Отхвърляне без срок става постоянен запис, чийто произход никой не помни, и следващият, който ще отстранява проблеми с адреса, ще го приеме за нормална част от мрежата.

Поддържайте независим път за управление, който не зависи от маршрута, който променяте. Ако смекчаването покрива адрес, който използвате, за да достигнете устройството, сте създали блокиране с допълнителни стъпки.

Назовете точното управление, което премахва смекчаването, и тествайте това премахване в лаборатория или в прозорец, който можете да си позволите. Оттегляне, което никой не е репетирал, е план, а не процедура.

Приемайте с доказателства, не с изхода на командата

Проверете избраното състояние на маршрутизация и състоянието на препращане на предвидените VTEP, и проверете съседна дестинация, която трябва да остане незасегната. Потвърдете, че никой друг тенант не е импортирал префикса, защото изтичането между тенанти е режимът на отказ, който превръща една поддръжка в инцидент.

След това оттеглете и проверете, че нормалният маршрут и услугата се връщат. Ръководството за маршрути null в NX-OS EVPN за изданието 10.4(x) документира маркирането, преразпределянето и политиката за приемане, описани тук, и е референцията, с която да сверявате своето издание.

Подобни статии