Another thing, that i have discovered, is that every works normal if i set mtu 9000 on all interfaces between routers in area. If config is needed, i attach it: # Configure logging #log syslog { debug, trace, info, remote, warning, error, auth, fatal, bug }; log stderr all; log "/var/log/bird.log" all;
filter OSPF_in { if ( net=0.0.0.0/0 || net ~ 10.0.0.0/8 ) then accept; else reject; }; filter OSPF_out { if (net ~ 10.16.0.0/12 ) then accept; else reject; }; # This pseudo-protocol performs synchronization between BIRD's routing # tables and the kernel. If your kernel supports multiple routing tables # (as Linux 2.2.x does), you can run multiple instances of the kernel # protocol and synchronize different kernel tables with different BIRD tables. protocol kernel { learn; # Learn all alien routes from the kernel debug {states,routes,filters,interfaces}; persist; # Don't remove routes on bird shutdown scan time 20; # Scan kernel routing table every 20 seconds import all; # Default is import all export all; # Default is export none # kernel table 5; # Kernel table to synchronize with (default: main) } # This pseudo-protocol watches all interface up/down events. protocol device { scan time 10; # Scan interfaces every 10 seconds } protocol ospf C1{ rfc1583compat yes; router id 10.0.1.1; # ecmp; import filter OSPF_in; # export filter OSPF_out; export none; debug {states,routes,filters,interfaces}; # debug all; area 0{ stub no; interface "bond0.4001"{ type bcast; cost 100; hello 1; dead count 3; retransmit 6; transmit delay 5; wait 30; authentication cryptographic; password "xxx"; }; interface 10.0.1.1/32 { stub 1; }; }; area 1{ stub yes; interface "bond0.4012", "bond0.4021"{ type bcast; cost 10; hello 1; dead count 3; retransmit 6; transmit delay 5; wait 30; }; interface 10.16.0.0/12 { stub 1; cost 10; }; }; }