1 Version 2.0.3 (2019-01-05)
2 o MRT table dumps (RFC 6396)
3 o BGP Long-lived graceful restart
4 o BGP: Optional import table (Adj-RIB-In)
5 o BGP: Extend 'next hop keep' and 'next hop self' options
6 o BGP: Improved VRF support
7 o OSPF: Authentication trailer for OSPFv3 (RFC 7166)
8 o Babel: New option to randomize router ID
9 o Filter: Custom route attributes
10 o Filter: Support for src accessor to SADR source prefix
11 o Filter: Support for VPN_RD sets
12 o Filter: Make ifname attribute modifiable
13 o Perf: Protocol to measure BIRD performance internally
14 o More verbose error messages in config processing
15 o Log file size limit / log rotation
20 Export of routes to RS EBGP (route server) sessions from other sources than
21 RS EBGP sessions was changed that ASN is no longer prepended to BGP_PATH in
22 that case. The change does not affect regular BGP configurations or regular
23 route servers that have only RS EBGP peers.
25 For BGP route servers and route reflectors, the default value of option
26 'next hop keep' was changed to a more appropriate value.
28 Attributes for OSPF and Babel metrics are no longer reset when exported to
29 these protocols and could be set anywhere in BIRD. As a result, OSPF metric is
30 kept when a route is reannounced between OSPF instances. Also, when route is
31 exported to OSPF with both ospf_metric1 and ospf_metric2 attributes it is now
32 propagated as OSPF-E2 route instead of as OSPF-E1 route.
34 Compiling BIRD with --enable-debug no longer automatically activates debug
35 mode (-d option) nor local mode (-l option). Also, debug mode with output to
36 file (-D option) no longer not forces foreground mode (-f option).
38 The configure script now uses standard option --runstatedir, the old option
39 --with-runtimedir is deprecated.
42 Version 2.0.2 (2018-03-22)
43 o Source-specific routing support for Linux kernel and Babel
44 o BGP: New option 'disable after cease'
45 o Filter: Allow silent filter execution
46 o Filter: Fixed stack overflow in BGP mask expressions.
51 Syntax prefix:netmask for IPv4 prefixes was dropped. Just use prefix/pxlen.
54 Version 2.0.1 (2018-01-16)
55 o Linux MPLS kernel support
56 o Better handling of channels inherited from templates
57 o Default EBGP Route Propagation Behavior without Policies (RFC 8212)
62 To satisfy requirements of RFC 8212, external BGP protocols now require
63 explicit configuration of import and export policies.
66 Version 2.0.0 (2017-12-11)
67 o Integrated IPv4 + IPv6 design
68 o Support for MPLS next hops
69 o Support for VPNv4 and VPNv6 networks
70 o Microsecond timers infrastructure
72 o Babel: Support for dual-stack IPv4/IPv6
73 o Babel: Many improvements and bugfixes
74 o Major BGP protocol redesign
75 o Full support for Multiprotocol BGP
76 o BGP multicast support (SAFI 2)
77 o BGP flowspec support (RFC 5575)
78 o BGP with MPLS labels (RFC 3107)
79 o BGP MPLS/VPN support (RFC 4364)
80 o BGP 6PE - IPv6 NLRI over IPv4 MPLS (RFC 4798)
81 o BGP IPv4 NLRI with an IPv6 Next Hop (RFC 5549)
82 o BGP Confederations (RFC 5065)
83 o BGP Shutdown communication (RFC 8203)
84 o BGP: Allow exchanging LOCAL_PREF with eBGP peers
85 o BGP: Allow to specify interface for regular sessions
86 o OSPF: Support of address families in OSPFv3
87 o OSPF: Enable ECMP and Link detection by default
88 o RAdv: Support for more specific routes (RFC 4191)
89 o RAdv: Proper handling of prefix retraction
90 o RIP: Enable ECMP and Link detection by default
91 o Redesign of RPKI handling
92 o New RPKI-Router protocol
93 o Static: Minor overhaul
94 o Static: Support for all new route types
95 o Kenrel: Default Linux kernel metric changed to 32
96 o Kernel: Fix IPv6 ECMP handling with Linux 4.11+
97 o Update of show route command
98 o BIRD client persistent history
105 Tables are now defined with appropriate net type keyword. Protocols and tables
106 are now connected by explicit channels, most related protocol options (table,
107 import, export, ...) are now channel options. See doc/bird.conf.example2 for
108 configuration examples. Some options were removed/replaced.
111 Version 1.6.3 (2016-12-21)
112 o Large BGP communities
113 o BFD authentication (MD5, SHA1)
114 o SHA1 and SHA2 authentication for RIP and OSPF
115 o Improved documentation
118 Version 1.6.2 (2016-09-29)
119 o Fixes serious bug introduced in the previous version
121 Version 1.6.1 (2016-09-22)
122 o Support for IPv6 ECMP
123 o Better handling of IPv6 tentative addresses
124 o Several updates and fixes in Babel protocol
125 o Filter: New !~ operator
126 o Filter: ASN ranges in bgpmask
127 o KRT: New kernel protocol option 'metric'
128 o KRT: New route attribute 'krt_scope'
129 o Improved BIRD help messages
130 o Fixes memory leak in BGP multipath
131 o Fixes handling of empty path segments in BGP AS_PATH
134 Version 1.6.0 (2016-04-29)
135 o Major RIP protocol redesign
136 o New Babel routing protocol
137 o BGP multipath support
138 o KRT: Add support for plenty of kernel route metrics
139 o KRT: Allow more than 256 routing tables
140 o Static: Allow to specify attributes for static routes
141 o Static: Support for BFD controlled static routes
142 o FreeBSD: Setup password for BGP MD5 authentication
143 o IO: Remove socket number limit
144 o Plenty of bug fixes
148 For RIP, most protocol options were moved to interface blocks.
151 Version 1.5.0 (2015-04-20)
152 o Major OSPF protocol redesign.
153 o OSPFv2 multi-instance extension (RFC 6549).
154 o BGP AS-wide unique router ID (RFC 6286).
155 o BGP enhanced route refresh (RFC 7313).
156 o Link state support in BGP.
157 o Latency tracking and internal watchdog.
158 o Uses high port range for BFD on BSD.
159 o Increase max symbol length to 64.
160 o Allows to define unnamed protocols from templates.
161 o Fixes two serious bugs in BGP.
162 o Several bugfixes and minor improvements.
163 o Several minor option changes:
164 - OSPF: Protocol-wide 'instance id' option added.
165 - BGP: Parameters to option 'neighbor' extended.
166 - BGP: Separate option 'interface' added.
167 - BGP: Option 'start delay time' renamed to 'connect delay time'.
168 - BGP: Option 'route limit' deprecated.
172 For OSPF, there are deep internal changes, but user-visible changes
173 are limited to log messages and minor changes in formatting of command
176 For BGP, version 1.5.0 is essentially a minor release. There are two
177 deprecated options ('start delay time' and 'route limit') and some
178 minor formatting changes.
181 Version 1.4.5 (2014-10-06)
182 o New 'show route noexport' command option.
183 o Port option for BGP sessions.
184 o Better constant handling in set literals.
185 o Better rate filtering of log messages.
186 o Several minor bugfixes.
188 Version 1.4.4 (2014-07-09)
189 o Extended OSPF multipath support.
190 o Default router preference for RAdv.
191 o Significant changes in socket layer.
192 o Important bugfix in BGP.
193 o Several minor bugfixes.
195 Version 1.4.3 (2014-04-14)
196 o Important bugfix in IPv6 BGP.
198 Version 1.4.2 (2014-04-02)
199 o Important bugfix in BFD.
201 Version 1.4.1 (2014-03-31)
202 o BGP add-path support (RFC draft).
203 o BGP graceful restart (RFC 4724).
204 o OSPF: many changes in socket layer.
205 o OSPF: support for secondary addresses in BSD.
206 o OSPF: names for vlink pseudointerfaces (vlinkX).
209 Version 1.4.0 (2013-11-25)
210 o BFD protocol (RFC 5880).
211 o BFD support for OSPF and BGP.
212 o New 'allow local as' option for BGP.
213 o Filters allows setting gw, ifname and ifindex.
214 o Filter operator 'delete/filter' extended to bgp_paths.
215 o Filter operator 'len' extended to [e]clists.
216 o BIRD client now allows shorthands for noninteractive commands.
217 o Flag -P for PID file support.
218 o Flag -f added to force BIRD to run in foreground.
219 o Protocol export/import/receive limits are checked during reconfiguration.
220 o Several bugfixes and minor improvements.
221 o Several minor but incompatible changes:
222 - IBGP is multihop by default.
223 - Changes primary address selection on BSD to the first one.
224 - Integers in filters are handled as unsigned.
225 - ISO 8601 time formats used by default.
226 - Import of device routes from kernel protocol allowed.
227 - Last state change now tracks just protocol state change.
228 - Minor changes to default router ID calculation.
230 Version 1.3.11 (2013-07-27)
231 o OSPF stub router option (RFC 3137).
232 o TTL security for OSPF and RIP.
233 o Protocol packet priority and traffic class handling.
234 o Multiple routing tables support for FreeBSD and OpenBSD.
235 o Extends constants to all filter data types.
236 o Implements eval command.
237 o 'bgppath ~ int set' filter operation.
240 Version 1.3.10 (2013-04-30)
241 o Lightweight BIRD client for embedded environments.
242 o Dynamic IPv6 router advertisements.
243 o New 'next hop keep' option for BGP.
244 o Smart default routing table for 'show route export/preexport/protocol'.
245 o Automatic router ID selection could be configured to use address of loopback.
246 o Allows configured global addresses of NBMA neighbors in OSPFv3.
247 o Allows BIRD commands from UNIX shell even in restricted mode.
248 o Route limits inherited from templates can be disabled.
249 o Symbol names enclosed by apostrophes can contain dots.
252 Version 1.3.9 (2013-01-11)
253 o BIRD can be configured to keep and show filtered routes.
254 o Separate receive and import limits.
255 o Several new reconfiguration cmd options (undo, timeout, check).
256 o Configurable automatic router ID selection.
257 o Dragonfly BSD support.
258 o Fixed OSPFv3 vlinks.
259 o Several minor bugfixes.
261 Version 1.3.8 (2012-08-07)
262 o Generalized import and export route limits.
263 o RDNSS and DNSSL support for RAdv.
264 o Include in config file support wildcards.
265 o History deduplication in BIRD client.
266 o New route attributes krt_source, krt_metric.
267 o Different instance ID support for OSPFv3.
268 o Real broadcast mode for OSPFv2.
269 o Several minor bugfixes.
271 Version 1.3.7 (2012-03-22)
272 o Route Origin Authorization basics.
273 o RIPng working again.
274 o Extended clist operations in filters.
275 o Fixes several bugs in BSD iface handling.
276 o Several minor bugfixes and enhancements.
278 Version 1.3.6 (2012-01-20)
279 o Important bugfix in BGP.
281 Version 1.3.5 (2012-01-10)
282 o Protocol templates.
283 o Deterministic MED option for BGP.
284 o Support for link-local addresses in BGP and static protocols.
287 Version 1.3.4 (2011-10-10)
288 o Static recursive routes.
291 Version 1.3.3 (2011-09-11)
293 o BGP extended communities.
295 o Configuration option "include" added (based on patch from Alexander V. Chernikov).
296 o Some minor bugfixes.
298 Version 1.3.2 (2011-07-08)
299 o Allows run with restricted privileges.
300 o Community list filter operation.
301 o Fixes several problems in filter syntax:
302 - Fixes several conflicts in the grammar.
303 - Fixes a bug in (a..b, c) pair patterns.
304 - Makes pair patterns orthogonal.
305 - Allows term expressions in pair patterns without additional ( ).
306 - Allows several comma separated values in switch cases.
309 Version 1.3.1 (2011-05-02)
310 o Added Linux kernel route attributes krt_prefsrc and krt_realm.
311 o Added BGP option 'med metric' related to MED handling.
312 o Allows to use constants from /etc/iproute2/rt_* files.
315 Version 1.3.0 (2011-03-31)
316 o Proper iBGP (can be used with IGP).
317 o Multipath support (OSPF and static).
318 o L2 link state detection.
319 o IPv6 router advertisements.
320 o Much improved OSPF reconfiguration.
321 o Point-to-MultiPoint interfaces (OSPF).
322 o Minor changes and improvements in config file grammar.
323 o Better community list matching.
324 o Changes default behavior of BGP IPv6 socket to v6only.
325 Use 'listen bgp dual' for the old behavior.
326 o Changes default for handling missing link-local addresses on
327 route servers. Use 'missing lladdr drop' for the old behavior.
328 o Important bugfix for OSPF.
329 o Several minor bugfixes.
331 Version 1.2.5 (2010-10-10)
332 o Several mostly minor bugfixes.
334 Version 1.2.4 (2010-08-03)
335 o Added 'show memory' command.
336 o Important bugfix in IPv6 BGP.
337 o Several minor bugfixes.
339 Version 1.2.3 (2010-06-01)
340 o Pattern matching for community lists.
341 o Many fixes in OSPF protocol (esp. in multi-areas and vlinks).
342 o Several minor bugfixes.
344 Version 1.2.2 (2010-04-10)
345 o Much better BSD kernel support (IPv6, alien routes, ...).
346 o Deep OSPF socket changes, fixes OSPFv2/v3 behavior on BSD.
347 o OSPFv2 in Linux now supports more non-stub IP prefixes
348 on one physical iface.
349 o Export of device routes to the kernel is more restricted.
350 o Routes with strange scope not allowed in BIRD routing tables.
351 o New filterable route attributes bgp_originator_id,
352 bgp_cluster_list and ospf_router_id.
353 o Restricted read-only CLI (option -r).
354 o Pattern matching for 'show protocols' command.
355 o BGP protocol details in 'show protocols all' command.
356 o Configurable syslog name (and default on IPv6 changed).
357 o Statistic counters for pipes were fixed.
358 o Many bugfixes in BGP, OSPF, filters, ...
360 Version 1.2.1 (2010-02-11)
361 o Option 'interpret communities' allows to override implicit handling
362 of well-known communities.
363 o 'configure' command uses route reload when filters change.
364 o Adds router ID of advertising router as OSPF route attribute.
365 o 'show route' command indicates primary route and shows OSPF Router ID.
366 o Configurable date/time formats.
367 o Symbol names can be enclosed by '' and so include hyphen and start with number.
368 o Several minor bugfixes.
370 Version 1.2.0 (2010-01-05)
371 o Implements OSPFv3 (IPv6 support for OSPF). Because the code is
372 shared with OSPFv2 and there were deep changes in it, we suggest
373 caution during upgrade to OSPF users. Some advanced features
374 (like NSSA, vlinks and authentication) are not yet implemented.
375 o Implements MRTdump - binary logging protocol compatible with other
376 routing daemons. Only BGP part of MRTdump is yet implemented.
377 o Changes default value of BGP attribute LOCAL_PREF from 0 to 100.
378 Use 'default bgp_local_pref 0' BGP protocol option for the old
379 behavior. The new value is suggested by RFC 4277.
380 o Changes default mode of pipes from opaque to transparent.
381 Use 'mode opaque' protocol option if the old behavior is needed.
382 Opaque pipe mode is deprecated and might be removed in the future.
384 Version 1.1.7 (2009-12-20)
385 o Implements BGP Route Refresh (RFC 2918).
386 o Implements route reload command.
387 o Deep changes and bugfixes in pipe protocol.
388 o Bugfix in OSPF premature aging of LSA.
389 o Bugfix in OSPF next hop calculation.
390 o Bugfix in core related to route withdraws.
391 o Several minor bugfixes.
393 Version 1.1.6 (2009-11-19)
394 o Implements RFC 5004 - prefer older external routes.
395 o There is a change how route servers handle missing IPv6 link
396 local addresses in next hop atribute - see 'missing lladdr'
398 o Several minor features (description field, parse check option).
399 o Several minor bugfixes.
401 Version 1.1.5 (2009-10-29)
402 o Better scalability of BGP.
403 o New accessors for AS path - first and last.
404 o Allows to set protocol-specific router ID.
405 o Allows import kernel 'onlink' routes.
406 o Endianity check in buildsystem changed.
408 Version 1.1.4 (2009-10-02)
409 o BGP passive option.
410 o Several minor bugfixes.
412 Version 1.1.3 (2009-09-11)
414 o Bugfix in BGP related to AS2->AS4 conversion.
416 Version 1.1.2 (2009-08-23)
417 o Allow more kernel routing tables in IPv6.
420 Version 1.1.1 (2009-08-14)
421 o 'more' style paging in BIRD client.
422 o Important core bug fixed.
423 o Portability to non-x86 related bugfixes.
424 o As usual, miscellaneous bugfixes.
426 Version 1.1.0 (2009-06-28)
427 o Parametrized pair and path mask expressions in the filter language.
428 o Transparent pipe mode allows to implement BGP route server with
429 independent route policy for each peer.
430 o Kernel route table synchronization does not allow overwriting
432 o Configurable BGP import route limits.
433 o During BGP error delay, incoming connections are rejected.
434 o BGP route statistics.
435 o Better support for multiple network addresses on OSPF interfaces.
436 o As usual, miscellaneous bugfixes.
438 Version 1.0.15 (2009-05-25)
439 o FreeBSD and NetBSD port renewed. OpenBSD port introduced.
440 o import/preimport 'show route' modifiers was renamed to export/preexport
441 for consistency with filters.
442 o Minor change in the grammar of 'interface' config option.
443 o Many bugfixes in IPv6 BGP.
444 o As usual, miscellaneous bugfixes.
446 Version 1.0.14 (2009-04-28)
447 o A lot of bugfixes in BGP, OSPF and core.
448 o A bugfix in filters in the pipe protocol. It is recommended to
449 check whether the new behavior of used pipe filters is consistent
451 o Reimplementation of prefix sets and a slight change in the meaning
452 of some prefix set patterns.
454 Version 1.0.13 (2009-03-14)
455 o A lot of bugfixes in BGP, OSPF and core
456 o A new syntax for BGP masks
458 Version 1.0.12 (2008-11-12)
459 o new BGP features: BGP MD5, ASN32, BGP route reflector
464 Version 1.0.9 (2004-07-15)
465 o Minor bugfix in RIP
466 o A lot of OSPF code rewritten, OSPF supports multiple areas,
467 virtual links, MD5 authentication. It is fully compatible
470 Version 1.0.8 (2004-06-07)
471 o A lot of bug fixes in RIP, OSPF and BGP (thanx to Andreas Steinmetz)
472 o FreeBSD and NetBSD port introduced
473 o Complete code clean up
475 Version 1.0.7 (2003-08-20)
478 Version 1.0.6 (2003-04-06)
480 o No more byte order problems in RIP authentication. Thanks to
481 Eric Leblond <eleblond@init-sys.com> for a patch.
482 o Fixed interoperability problems with Cisco and Zebra when talking
484 o Handle more primary addresses with different scopes gracefully.
486 o Comparison of prefixes in filters doesn't ignore their lengts.
487 o As usually, OSPF bug fixes.
488 o Documentation building tools now work with recent linuxdoc-tools.
490 Version 1.0.5 (2001-06-09)
492 o Minor cleanups in the libraries.
493 o Removed a couple of warnings when compiling with newer glibc.
496 Version 1.0.4 (2000-09-04)
498 o Fixed a serious bug in 1.0.3.
500 Version 1.0.3 (2000-09-03)
502 o OSPF works better on NBMA networks. Some configuration tags added.
504 Version 1.0.2 (2000-08-24)
506 o Minor bug fixes to OSPF.
508 Version 1.0.1 (2000-06-22)
510 o Updated documentation and fixed a couple of bugs.
512 Version 1.0.0 (2000-06-09)
514 o First stable release.
516 Version 0.0.0 (2000-05-13)
518 o First public development release.