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