- 12 Sep, 2017 1 commit
-
-
Ondřej Zajíček authored
-
- 06 Sep, 2017 1 commit
-
-
Ondřej Zajíček authored
Add basic VRF (virtual routing and forwarding) support. Protocols can be associated with VRFs, such protocols will be restricted to interfaces assigned to the VRF (as reported by Linux kernel) and will use sockets bound to the VRF. E.g., different multihop BGP instances can use diffent kernel routing tables to handle BGP TCP connections. The VRF support is preliminary, currently there are several limitations: - Recent Linux kernels (4.11) do not handle correctly sockets bound to interaces that are part of VRF, so most protocols other than multihop BGP do not work. This will be fixed by future kernel versions. - Neighbor cache ignores VRFs. Breaks config with the same prefix on local interfaces in different VRFs. Not much problem as single hop protocols do not work anyways. - Olock code ignores VRFs. Breaks config with multiple BGP peers with the same IP address in different VRFs. - Incoming BGP connections are not dispatched according to VRFs. Breaks config with multiple BGP peers with the same IP address in different VRFs. Perhaps we would need some kernel API to read VRF of incoming connection? Or probably use multiple listening sockets in int-new branch. - We should handle master VRF interface up/down events and perhaps disable associated protocols when VRF goes down. Or at least disable associated interfaces. - Also we should check if the master iface is really VRF iface and not some other kind of master iface. - BFD session request dispatch should be aware of VRFs. - Perhaps kernel protocol should read default kernel table ID from VRF iface so it is not necessary to configure it. - Perhaps we should have per-VRF default table.
-
- 28 Apr, 2016 1 commit
-
-
Ondřej Zajíček authored
This patch implements the IPv6 subset of the Babel routing protocol. Based on the patch from Toke Hoiland-Jorgensen, with some heavy modifications and bugfixes. Thanks to Toke Hoiland-Jorgensen for the original patch.
-
- 08 Jun, 2015 2 commits
-
-
Ondřej Zajíček authored
Kernel option 'merge paths' allows to merge routes exported to kernel protocol (currently BGP and static routes) to multipath routes.
-
Pavel Tvrdík authored
-
- 29 Mar, 2015 1 commit
-
-
Ondřej Zajíček authored
Also hook feed_done is renamed to feed_end.
-
- 21 Feb, 2015 1 commit
-
-
Ondřej Zajíček authored
Make proto_config_new() use this info instead of supplied size. Thanks to Alexander V. Chernikov for the patch.
-
- 27 Apr, 2014 1 commit
-
-
Ondřej Zajíček authored
-
- 20 Mar, 2014 1 commit
-
-
Ondřej Zajíček authored
Also significant core protocol state changes needed for that, global graceful restart recovery state and kernel proto support for recovery.
-
- 16 Sep, 2013 1 commit
-
-
Ondřej Zajíček authored
Now it compiles and mostly works.
-
- 10 Jan, 2013 1 commit
-
-
Ondřej Zajíček authored
They have different behavior w.r.t. filtered routes that are kept.
-
- 15 Nov, 2012 1 commit
-
-
Ondřej Zajíček authored
-
- 10 Nov, 2012 1 commit
-
-
Ondřej Zajíček authored
When 'import keep rejected' protocol option is activated, routes rejected by the import filter are kept in the routing table, but they are hidden and not propagated to other protocols. It is possible to examine them using 'show route rejected'.
-
- 14 Aug, 2012 1 commit
-
-
Ondřej Zajíček authored
Allows to send and receive multiple routes for one network by one BGP session. Also contains necessary core changes to support this (routing tables accepting several routes for one network from one protocol). It needs some more cleanup before merging to the master branch.
-
- 06 Aug, 2012 1 commit
-
-
Ondřej Zajíček authored
-
- 28 Apr, 2012 1 commit
-
-
Ondřej Zajíček authored
-
- 24 Apr, 2012 1 commit
-
-
Ondřej Zajíček authored
And also fixes some minor bugs in limits.
-
- 21 Apr, 2012 1 commit
-
-
Ondřej Zajíček authored
-
- 15 Apr, 2012 1 commit
-
-
Ondřej Zajíček authored
Thanks to Alexander V. Chernikov for the original patch.
-
- 28 Mar, 2012 1 commit
-
-
Ondřej Zajíček authored
When a protocol went down, all its routes were flushed in one step, that may block BIRD for too much time. The patch fixes that by limiting maximum number of routes flushed in one step.
-
- 15 Mar, 2012 1 commit
-
-
Ondřej Zajíček authored
The nest-protocol interaction is changed to better handle multitable protocols. Multitable protocols now declare that by 'multitable' field, which tells nest that a protocol handles things related to proto-rtable interaction (table locking, announce hook adding, reconfiguration of filters) itself. Filters and stats are moved to announce hooks, a protocol could have different filters and stats to different tables. The patch is based on one from Alexander V. Chernikov, thanks.
-
- 24 Jan, 2012 1 commit
-
-
Ondřej Zajíček authored
The patch from Alexander V. Chernikov.
-
- 22 Dec, 2011 1 commit
-
-
Ondřej Zajíček authored
Thanks to Alexander V. Chernikov for many suggestions.
-
- 07 Nov, 2011 1 commit
-
-
Ondřej Zajíček authored
Based on the patch from Alexander V. Chernikov. Extended to support almost all protocols. Uses 'protocol bgp NAME from TEMPLATE { ... }' syntax.
-
- 13 Mar, 2011 1 commit
-
-
Ondřej Zajíček authored
-
- 05 Jul, 2010 1 commit
-
-
Ondřej Zajíček authored
Hostcache is a structure for monitoring changes in a routing table that is used for routes with dynamic/recursive next hops. This is needed for proper iBGP next hop handling.
-
- 07 Apr, 2010 1 commit
-
-
Ondřej Zajíček authored
-
- 26 Feb, 2010 1 commit
-
-
Ondřej Zajíček authored
- BSD kernel syncer is now self-conscious and can learn alien routes - important bugfix in BSD kernel syncer (crash after protocol restart) - many minor changes and bugfixes in kernel syncers and neighbor cache - direct protocol does not generate host and link local routes - min_scope check is removed, all routes have SCOPE_UNIVERSE by default - also fixes some remaining compiler warnings
-
- 21 Feb, 2010 1 commit
-
-
Ondřej Zajíček authored
Also adds support for executing commands using birdc <cmd>.
-
- 20 Feb, 2010 1 commit
-
-
Ondřej Zajíček authored
And generally consolidates protocol commands.
-
- 13 Feb, 2010 2 commits
-
-
Ondřej Zajíček authored
It seems that by adding one pipe-specific exception to route announcement code and by adding one argument to rt_notify() callback i could completely eliminate the need for the phantom protocol instance and therefore make the code more straightforward. It will also fix some minor bugs (like ignoring debug flag changes from the command line).
-
Ondřej Zajíček authored
-
- 11 Feb, 2010 1 commit
-
-
Ondřej Zajíček authored
When uncofiguring the pipe and the peer table, the peer table was unlocked when pipe protocol state changed to down/flushing and not to down/hungry. This leads to the removal of the peer table before the routes from the pipe were flushed. The fix leads to adding some pipe-specific hacks to the nest, but this seems inevitable.
-
- 03 Jan, 2010 1 commit
-
-
Ondřej Zajíček authored
-
- 14 Dec, 2009 1 commit
-
-
Ondřej Zajíček authored
-
- 02 Dec, 2009 1 commit
-
-
Ondřej Zajíček authored
This can be used to re-feed routes to protocol after soft change in export filters.
-
- 26 Nov, 2009 1 commit
-
-
Ondřej Zajíček authored
-
- 17 Nov, 2009 1 commit
-
-
Ondřej Zajíček authored
-
- 12 Oct, 2009 1 commit
-
-
Ondřej Zajíček authored
-
- 19 Jun, 2009 1 commit
-
-
Ondřej Zajíček authored
-