BGP redistribute static

R1 выступает в качестве CE, R2 — PE, R3 удаленный (iBGP) PE, между R2 и R3 должен быть iBGP, а сам клиент в проде живет в VRF, но сейчас и так сойдет:

CE подключен к PE по eBGP, и анонсирует 0/0 в сторону PE. Анонсируем default от клиента через redistribute static:

Статика анонсируется в BGP:

R2 и R3 видят 0/0:

Далее клиент говорит, что он хочет чтобы наша PE (R2) анонсировала 0/0  в случае если его CE1 перестанет отдавать нам 0/0 , повторяем настройки сделанные на проде:

Настраиваем backup маршрут через R1, на случай если мы потеряем маршрут от BGP пира, AD=250, чтобы выигрывал у [ie]BGP (AD=20,200):

Никаких изменений в BGP таблице, т.к коробке нечего редистрибутить, статики нет в GRT:

Все работает ОК, далее клиент по какой-то причине перестает анонсировать 0/0  через BGP:

Ушел BGP маршрут, в GRT установился static, далее он появился в BGP ( weight 32768) а анонсируется другим пирам:

Со стороны R3 поменялся AS_PATH (« Local «):

Далее клиент снова начинает анонсировать 0/0 :

На данном этапе от него пришла заявка, что на удаленном сайте он не видит 0/0 от CE.

На R3 без изменений:

R2 не анонсирует eBGP маршрут полученный от R1 т.к он не является best, происходит это потому-что Weight у локально генерируемых маршрутов = 32768 и он выигрывает у [ie]BGP маршрутов (« Weight = 0 «).
Если попробовать уровнять Weight (установить отрицательный мы не можем), далее будет проверятся LP (он у нас будет одинаковый) и потом будут выигрывать локально генерируемые маршруты.

Попробуем в добавок сбросить LP:

Маршрут выбрался от R1:

Проверяем еще раз:

Генерируем 0/0 от R2:

Возвращаем:

Также можно на PE в сторону CE выставить максимальный Weight, чтобы всегда был приоритет у eBGP маршрута, но тем самым мы поломаем возможность клиенту самостоятельно управлять трафиком BGP атрибутами.