Привіт, дав собі раду перейти на Bird v2 :) ну шо сказати, він значно краще за v1. Особливо подобається наявність окремих таблиць маршрутизації - коли, наприклад, iBGP можна зібрати в одній таблиці й тягати раути в eBGP через pipe - зменшуючи таким чином кількість фільтрів та потенційних джерел misconfiguration. Ну й з точки зору конфігурації - темплейти теж зручна штука. Мені складно сказати, наскільки він з точки зору функціональності гірше за FRR (я не в курсі, чим зараз дихають "дорослі" SP на кшталт DT або AT&T), але, того, що я бачу, для звичаних SP вистачає з головою. Ну й важливе - з мого досвіду, він працює стабільніше за FRR. Повертаючись до мого питання, якщо не використовувати різні таблиці, то ключовим моментом є політика імпорта/експорта в/з протоколів : protocol kernel { # Preserve OS routing table on exit persist; ipv4 { # nothing to import from OS routing table # so no DHCP learned or manually configured routes will affect global routing import none; # but export everything we learned from routing protocols export all; }; } # These are aggregates to announce through BGP protocol static { ipv4; route 192.0.2.0/24 blackhole; } protocol ospf v2 mgmt { ipv4 { # Import into Bird (and then export through kernel) everything learned in OSPF import all; # while export to OSPF nothing except explicitly identified interfaces below export none; }; area 0 { interface "eth0" { }; interface "lo" { # Just propagate info about lo stub; }; }; } protocol bgp home { local 100.64.53.22 as 65035; neighbor 100.64.53.1 as 65035; ipv4 { # Import into Bird (and then export through kernel) everything import all; # Export to peer only aggregates and routes received by BGP from other peers # thus excluding OSPF management routes (interfaces, loopbacks) export where source ~ [RTS_STATIC, RTS_BGP]; }; } On 2/7/24 14:01, Volodymyr Litovka wrote:
Привіт,
щось я не можу роздуплити логіку Bird :-(
Є, умовно, два хости, зв'язані між собою напряму через eth-інтерфейс. Піднято OSPF та iBGP. На кожному хості є локальний брідж та лупбек. Я хочу, щоб
- OSPF обмінювався виключно інформацією про інтерфейси та лупбеки - BGP (між лупбеками) анонсував все інше - локальний брідж та мережі, отримані по eBGP
по першому нібито ясно -
protocol kernel { import none; export all; }
protocol ospf blah { import all; export none; area 0.0.0.0 { interface eth1 { }; interface lo { stub yes; }; }; }
питання по другому пункту - як сказати бьорду анонсувати мережу локального бріджа? В Cisco/FRR таке робиться за допомогою стейтмента 'network x.x.x.x/x', а як це зробити в пташці?
Дякую.
-- Volodymyr Litovka "Vision without Execution is Hallucination." -- Thomas Edison _______________________________________________ uanog mailing list uanog@uanog.kiev.ua https://mailman.uanog.kiev.ua/mailman/listinfo/uanog