iBGP - synchronizace rout z Birdu do OS

iBGP - synchronizace rout z Birdu do OS
« kdy: 05. 04. 2024, 20:22:51 »
Ahoj, potrebuji rozjet iBGP mezi dvema servery. Jako routovaciho daemona pouzivam Bird v2. Bohuzel se mi nepropisuji routy z Birda do routovaci tabule OS.

# ip ro sho
Kód: [Vybrat]
10.2.3.0/24 dev enp0s16 proto kernel scope link src 10.2.3.2 metric 102
# birdc show route
Kód: [Vybrat]
BIRD 2.15.1 ready.
Table master4:
0.0.0.0/0            unicast [ibgp1 16:02:20.063] * (100) [i]
        via 10.2.3.1 on enp0s16
10.6.1.0/24        unicast [ibgp1 16:02:20.063] * (100) [i]
        via 10.2.3.1 on enp0s16
10.2.3.0/24        unicast [direct1 16:02:15.406] * (240)
        dev enp0s16
                     unicast [kernel1 16:02:15.406] (10)
        dev enp0s16
                     unicast [ibgp1 16:02:20.063] (100) [i]
        via 10.2.3.1 on enp0s16

Podle dokumentace se o tento proces stara kernel protocol. Pro nej mam nastaveno import all coz by melo zajistit importovani vsech rout z dalsich protokolu a export none; Exportuji se direct tedy neni nutne exportovt kernel. Pro BGP jsem nastavil import all a export all ovsem tady uz jsem ve stavu kde experimentuji. Nastveni birda:
/etc/bird.conf
Kód: [Vybrat]
log "/var/log/bird.log" { debug, trace, info, remote, warning, error, auth, fatal, bug };

debug protocols all;

protocol device {
        scan time 10;
}

protocol direct {
        ipv4;
        interface "enp0s16";
}

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

protocol static {
        ipv4;
}

protocol bgp ibgp1 {
        local as 65000;
        neighbor 10.2.3.1 as 65000;
        ipv4 {
                import all;
                export all;
        };
}

V logu birda neni nic co by napovedelo, proc se neprovede sync do kernelu. Sekci static bych taky mohl prozatim vypustit, ale ponechavam ji pro dalsi pokusy.


Re:iBGP - synchronizace rout z Birdu do OS
« Odpověď #1 kdy: 06. 04. 2024, 00:14:12 »
V protokolu kernel má být import none, export all, tedy obráceně.

Re:iBGP - synchronizace rout z Birdu do OS
« Odpověď #2 kdy: 06. 04. 2024, 06:08:06 »
V protokolu kernel má být import none, export all, tedy obráceně.
Ano je to tak - dekuji. A to jsem si rikal, ze jsem si dokumentaci precetl poradne.

Re:iBGP - synchronizace rout z Birdu do OS
« Odpověď #3 kdy: 07. 04. 2024, 14:00:08 »
Ano je to tak - dekuji. A to jsem si rikal, ze jsem si dokumentaci precetl poradne.

No, už nevím co se píše v dokumentaci, ale sám jsem na záčátku s tím směrem import/export měl problém a tak v těch nejstarších konfigurácích stále najdu protocol kernel s těmito komentáři :-)

Kód: [Vybrat]
protocol kernel {
        persist;                # Po ukonceni birdu neodstranovat routy z routovaci tabulky
        scan time 300;          # Interval pro scan routovaci tabulky
        import none;            # Zadne routy neimportovat z kernelu do BIRDU
        export all;             # Z BIRDU do kernelu exportovat vsechny routy
}

Re:iBGP - synchronizace rout z Birdu do OS
« Odpověď #4 kdy: 08. 04. 2024, 14:27:15 »
Ano je to tak - dekuji. A to jsem si rikal, ze jsem si dokumentaci precetl poradne.

No, už nevím co se píše v dokumentaci, ale sám jsem na záčátku s tím směrem import/export měl problém a tak v těch nejstarších konfigurácích stále najdu protocol kernel s těmito komentáři :-)

Kód: [Vybrat]
protocol kernel {
        persist;                # Po ukonceni birdu neodstranovat routy z routovaci tabulky
        scan time 300;          # Interval pro scan routovaci tabulky
        import none;            # Zadne routy neimportovat z kernelu do BIRDU
        export all;             # Z BIRDU do kernelu exportovat vsechny routy
}

Uprimne v dokumentaci je to popsano dost nepresne.  Tak jsem si byl jist nastavenim ze me vubec nenapadlo chybu hledat v import export procesu. Za me by urcite zaslouzila dokumentace k birdu trosku doladit/dotahnout/dodelat.