@Kuddesnik

OSPF bird, маршрут прилетает от того узла его его нет. Куда копать?

Столкнулся на тестовом стенде с проблемой когда маршрут прилетает от того хоста, где этого маршрута по факту нет.
Вот схема сети:
65f7e7d440c97026016541.png
Все соединения OSPF между серверами PtP.
Конфигурация bird на всех хостах идентична(конечно router id разные у всех) вот пример с OSPF1:
router id 192.168.201.1;

filter input {
    if net = 0.0.0.0/0 then reject;
    else accept;
}

filter output {
    if net ~ [ 10.99.99.0/24{32,32} ] then accept;
    else reject;
}

protocol kernel {
    ipv4 {
        import all;
        export all;
    };
    scan time 10;
    learn;
}

protocol device {
    scan time 10;
}

protocol ospf {
    ipv4 {
        export filter output;
        import filter input;
    };
    area 102 {
        interface "eth1" {
            cost 100;
            hello 2;
            dead 6;
            type ptp;
        };
        interface "eth2" {
           cost 100;
           hello 2;
           dead 6;
           type ptp;
        };
    };
}

При такой конфигурации проблема в том что при обрыве связи между OSPF1 и OSPF3 маршрут 10.99.99.59/32 прилетает от хоста OSPF2, какую настройку крутить чтобы исключить прилёт маршрутов от клиентских устройств.
Даже если я на OSPF2 не буду ничего отдавать (export none;) маршрут 10.99.99.59/32 на OSPF1 я всё равно увижу.
Что было сделано:
1. Были соединены OSPF1 и OSPF4, маршрутизация перестраивается корректно и маршрут я вижу от OSPF4, но завязываться на это соединение не очень хочется, т.к. при его обрыве есть риск получить маршрут от какого-нибудь устройства из клиентской сети.
2. Можно на всех клиентских хостах включить опцию "stub router" тогда маршрута с OSPF2 не будет, но OSPF2 будет принимать все маршруты от серверных хостов с максимальной метрикой и в такой конфиге отсутствует возможность рулить маршрутизацией с помощью cost.
  • Вопрос задан
  • 760 просмотров
Решения вопроса 1
@Stariyded
Сетевой админ
Судя по ваше схеме, все работает так как должно - при обрыве связи OSPF1-OSPF3, маршрут до целевой сети пойдет по пути OSPF1-OSPF2-OSPF4-OSPF3 - протокол именно так и работает.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы