NEWS 18.3 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
Version 2.0.3 (2019-01-05)
  o MRT table dumps (RFC 6396)
  o BGP Long-lived graceful restart
  o BGP: Optional import table (Adj-RIB-In)
  o BGP: Extend 'next hop keep' and 'next hop self' options
  o BGP: Improved VRF support
  o OSPF: Authentication trailer for OSPFv3 (RFC 7166)
  o Babel: New option to randomize router ID
  o Filter: Custom route attributes
  o Filter: Support for src accessor to SADR source prefix
  o Filter: Support for VPN_RD sets
  o Filter: Make ifname attribute modifiable
  o Perf: Protocol to measure BIRD performance internally
  o More verbose error messages in config processing
  o Log file size limit / log rotation
  o Many bugfixes


  Export of routes to RS EBGP (route server) sessions from other sources than
  RS EBGP sessions was changed that ASN is no longer prepended to BGP_PATH in
  that case. The change does not affect regular BGP configurations or regular
  route servers that have only RS EBGP peers.

  For BGP route servers and route reflectors, the default value of option
  'next hop keep' was changed to a more appropriate value.

  Attributes for OSPF and Babel metrics are no longer reset when exported to
  these protocols and could be set anywhere in BIRD. As a result, OSPF metric is
  kept when a route is reannounced between OSPF instances. Also, when route is
  exported to OSPF with both ospf_metric1 and ospf_metric2 attributes it is now
  propagated as OSPF-E2 route instead of as OSPF-E1 route.

  Compiling BIRD with --enable-debug no longer automatically activates debug
  mode (-d option) nor local mode (-l option). Also, debug mode with output to
  file (-D option) no longer not forces foreground mode (-f option).

  The configure script now uses standard option --runstatedir, the old option
  --with-runtimedir is deprecated.

Ondřej Filip's avatar
Ondřej Filip committed
Version 2.0.2 (2018-03-22)
43 44 45 46 47 48 49 50 51 52 53
  o Source-specific routing support for Linux kernel and Babel
  o BGP: New option 'disable after cease'
  o Filter: Allow silent filter execution
  o Filter: Fixed stack overflow in BGP mask expressions.
  o Several bugfixes


  Syntax prefix:netmask for IPv4 prefixes was dropped. Just use prefix/pxlen.

Version 2.0.1 (2018-01-16)
55 56
  o Linux MPLS kernel support
  o Better handling of channels inherited from templates
  o Default EBGP Route Propagation Behavior without Policies (RFC 8212)
58 59
  o Many bugfixes

Ondřej Zajíček's avatar
Ondřej Zajíček committed
60 61 62 63 64 65

  To satisfy requirements of RFC 8212, external BGP protocols now require
  explicit configuration of import and export policies.

66 67
Version 2.0.0 (2017-12-11)
  o Integrated IPv4 + IPv6 design
  o Support for MPLS next hops
69 70 71 72 73 74 75 76 77
  o Support for VPNv4 and VPNv6 networks
  o Microsecond timers infrastructure
  o Basic VRF support
  o Babel: Support for dual-stack IPv4/IPv6
  o Babel: Many improvements and bugfixes
  o Major BGP protocol redesign
  o Full support for Multiprotocol BGP
  o BGP multicast support (SAFI 2)
  o BGP flowspec support (RFC 5575)
78 79 80 81 82
  o BGP with MPLS labels (RFC 3107)
  o BGP MPLS/VPN support (RFC 4364)
  o BGP 6PE - IPv6 NLRI over IPv4 MPLS (RFC 4798)
  o BGP IPv4 NLRI with an IPv6 Next Hop (RFC 5549)
  o BGP Confederations (RFC 5065)
  o BGP Shutdown communication (RFC 8203)
84 85
  o BGP: Allow exchanging LOCAL_PREF with eBGP peers
  o BGP: Allow to specify interface for regular sessions
86 87 88 89 90 91 92
  o OSPF: Support of address families in OSPFv3
  o OSPF: Enable ECMP and Link detection by default
  o RAdv: Support for more specific routes (RFC 4191)
  o RAdv: Proper handling of prefix retraction
  o RIP: Enable ECMP and Link detection by default
  o Redesign of RPKI handling
  o New RPKI-Router protocol
  o Static: Minor overhaul
94 95 96
  o Static: Support for all new route types
  o Kenrel: Default Linux kernel metric changed to 32
  o Kernel: Fix IPv6 ECMP handling with Linux 4.11+
  o Update of show route command
  o BIRD client persistent history
99 100
  o New build system
  o Unit tests
  o ...
102 103 104


105 106 107 108
  Tables are now defined with appropriate net type keyword. Protocols and tables
  are now connected by explicit channels, most related protocol options (table,
  import, export, ...) are now channel options. See doc/bird.conf.example2 for
  configuration examples. Some options were removed/replaced.
109 110

111 112 113 114 115 116 117
Version 1.6.3 (2016-12-21)
  o Large BGP communities
  o BFD authentication (MD5, SHA1)
  o SHA1 and SHA2 authentication for RIP and OSPF
  o Improved documentation
  o Several bug fixes

118 119 120
Version 1.6.2 (2016-09-29)
  o Fixes serious bug introduced in the previous version

121 122 123 124 125 126 127 128 129 130 131 132 133
Version 1.6.1 (2016-09-22)
  o Support for IPv6 ECMP
  o Better handling of IPv6 tentative addresses
  o Several updates and fixes in Babel protocol
  o Filter: New !~ operator
  o Filter: ASN ranges in bgpmask
  o KRT: New kernel protocol option 'metric'
  o KRT: New route attribute 'krt_scope'
  o Improved BIRD help messages
  o Fixes memory leak in BGP multipath
  o Fixes handling of empty path segments in BGP AS_PATH
  o Several bug fixes

134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150
Version 1.6.0 (2016-04-29)
  o Major RIP protocol redesign
  o New Babel routing protocol
  o BGP multipath support
  o KRT: Add support for plenty of kernel route metrics
  o KRT: Allow more than 256 routing tables
  o Static: Allow to specify attributes for static routes
  o Static: Support for BFD controlled static routes
  o FreeBSD: Setup password for BGP MD5 authentication
  o IO: Remove socket number limit
  o Plenty of bug fixes

  Upgrade notes:

  For RIP, most protocol options were moved to interface blocks.

151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179
Version 1.5.0 (2015-04-20)
  o Major OSPF protocol redesign.
  o OSPFv2 multi-instance extension (RFC 6549).
  o BGP AS-wide unique router ID (RFC 6286).
  o BGP enhanced route refresh (RFC 7313).
  o Link state support in BGP.
  o Latency tracking and internal watchdog.
  o Uses high port range for BFD on BSD.
  o Increase max symbol length to 64.
  o Allows to define unnamed protocols from templates.
  o Fixes two serious bugs in BGP.
  o Several bugfixes and minor improvements.
  o Several minor option changes:
     - OSPF: Protocol-wide 'instance id' option added.
     - BGP: Parameters to option 'neighbor' extended.
     - BGP: Separate option 'interface' added.
     - BGP: Option 'start delay time' renamed to 'connect delay time'.
     - BGP: Option 'route limit' deprecated.

  Upgrade notes:

  For OSPF, there are deep internal changes, but user-visible changes
  are limited to log messages and minor changes in formatting of command

  For BGP, version 1.5.0 is essentially a minor release. There are two
  deprecated options ('start delay time' and 'route limit') and some
  minor formatting changes.

Ondřej Filip's avatar
Ondřej Filip committed

181 182 183 184 185 186 187
Version 1.4.5 (2014-10-06)
  o New 'show route noexport' command option.
  o Port option for BGP sessions.
  o Better constant handling in set literals.
  o Better rate filtering of log messages.
  o Several minor bugfixes.

188 189 190 191 192 193 194
Version 1.4.4 (2014-07-09)
  o Extended OSPF multipath support.
  o Default router preference for RAdv.
  o Significant changes in socket layer.
  o Important bugfix in BGP.
  o Several minor bugfixes.

195 196 197
Version 1.4.3 (2014-04-14)
  o Important bugfix in IPv6 BGP.

198 199 200
Version 1.4.2 (2014-04-02)
  o Important bugfix in BFD.

201 202 203 204 205 206 207 208
Version 1.4.1 (2014-03-31)
  o BGP add-path support (RFC draft).
  o BGP graceful restart (RFC 4724).
  o OSPF: many changes in socket layer.
  o OSPF: support for secondary addresses in BSD.
  o OSPF: names for vlink pseudointerfaces (vlinkX).
  o Several bugfixes.

Ondřej Filip's avatar
Ondřej Filip committed
Version 1.4.0 (2013-11-25)
210 211 212 213 214 215
  o BFD protocol (RFC 5880).
  o BFD support for OSPF and BGP.
  o New 'allow local as' option for BGP.
  o Filters allows setting gw, ifname and ifindex.
  o Filter operator 'delete/filter' extended to bgp_paths.
  o Filter operator 'len' extended to [e]clists.
216 217
  o BIRD client now allows shorthands for noninteractive commands.
  o Flag -P for PID file support.
Ondřej Filip's avatar
Ondřej Filip committed
218 219
  o Flag -f added to force BIRD to run in foreground.
  o Protocol export/import/receive limits are checked during reconfiguration.
220 221 222 223 224 225 226 227 228
  o Several bugfixes and minor improvements.
  o Several minor but incompatible changes:
     - IBGP is multihop by default.
     - Changes primary address selection on BSD to the first one.
     - Integers in filters are handled as unsigned.
     - ISO 8601 time formats used by default.
     - Import of device routes from kernel protocol allowed.
     - Last state change now tracks just protocol state change.
     - Minor changes to default router ID calculation.

230 231 232 233 234 235 236 237 238 239
Version 1.3.11 (2013-07-27)
  o OSPF stub router option (RFC 3137).
  o TTL security for OSPF and RIP.
  o Protocol packet priority and traffic class handling.
  o Multiple routing tables support for FreeBSD and OpenBSD.
  o Extends constants to all filter data types.
  o Implements eval command.
  o 'bgppath ~ int set' filter operation.
  o Several bugfixes.

240 241 242 243 244 245 246 247 248 249 250 251
Version 1.3.10 (2013-04-30)
  o Lightweight BIRD client for embedded environments.
  o Dynamic IPv6 router advertisements.
  o New 'next hop keep' option for BGP.
  o Smart default routing table for 'show route export/preexport/protocol'.
  o Automatic router ID selection could be configured to use address of loopback.
  o Allows configured global addresses of NBMA neighbors in OSPFv3.
  o Allows BIRD commands from UNIX shell even in restricted mode.
  o Route limits inherited from templates can be disabled.
  o Symbol names enclosed by apostrophes can contain dots.
  o Several bugfixes.

Ondřej Zajíček's avatar
Ondřej Zajíček committed
Version 1.3.9 (2013-01-11)
  o BIRD can be configured to keep and show filtered routes.
Ondřej Zajíček's avatar
Ondřej Zajíček committed
254 255 256
  o Separate receive and import limits.
  o Several new reconfiguration cmd options (undo, timeout, check).
  o Configurable automatic router ID selection.
257 258 259 260
  o Dragonfly BSD support.
  o Fixed OSPFv3 vlinks.
  o Several minor bugfixes.

261 262 263 264 265 266 267 268 269
Version 1.3.8 (2012-08-07)
  o Generalized import and export route limits.
  o RDNSS and DNSSL support for RAdv.
  o Include in config file support wildcards.
  o History deduplication in BIRD client.
  o New route attributes krt_source, krt_metric.
  o Different instance ID support for OSPFv3.
  o Real broadcast mode for OSPFv2.
  o Several minor bugfixes.

Ondřej Filip's avatar
Ondřej Filip committed
Version 1.3.7 (2012-03-22)
  o Route Origin Authorization basics.
Ondřej Filip's avatar
Ondřej Filip committed
  o RIPng working again.
  o Extended clist operations in filters.
275 276 277
  o Fixes several bugs in BSD iface handling.
  o Several minor bugfixes and enhancements.

278 279 280
Version 1.3.6 (2012-01-20)
  o Important bugfix in BGP.

281 282 283 284 285 286
Version 1.3.5 (2012-01-10)
  o Protocol templates.
  o Deterministic MED option for BGP.
  o Support for link-local addresses in BGP and static protocols.
  o Several bugfixes.

287 288 289 290
Version 1.3.4 (2011-10-10)
  o Static recursive routes.
  o Several bugfixes.

Ondřej Filip's avatar
Ondřej Filip committed
Version 1.3.3 (2011-09-11)
292 293 294 295
  o BGP extended communities.
  o BGP TTL security.
  o Configuration option "include" added (based on patch from Alexander V. Chernikov).
296 297
  o Some minor bugfixes.

298 299 300 301 302 303 304 305 306 307 308
Version 1.3.2 (2011-07-08)
  o Allows run with restricted privileges.
  o Community list filter operation.
  o Fixes several problems in filter syntax:
     - Fixes several conflicts in the grammar.
     - Fixes a bug in (a..b, c) pair patterns.
     - Makes pair patterns orthogonal.
     - Allows term expressions in pair patterns without additional ( ).
     - Allows several comma separated values in switch cases.
  o Many bugfixes.

309 310 311 312 313 314
Version 1.3.1 (2011-05-02)
  o Added Linux kernel route attributes krt_prefsrc and krt_realm.
  o Added BGP option 'med metric' related to MED handling.
  o Allows to use constants from /etc/iproute2/rt_* files.
  o Several bugfixes.

Version 1.3.0 (2011-03-31)
Ondrej 'Feela' Filip's avatar
Ondrej 'Feela' Filip committed
  o Proper iBGP (can be used with IGP).
317 318 319 320 321 322
  o Multipath support (OSPF and static).
  o L2 link state detection.
  o IPv6 router advertisements.
  o Much improved OSPF reconfiguration.
  o Point-to-MultiPoint interfaces (OSPF).
  o Minor changes and improvements in config file grammar.
  o Better community list matching.
324 325 326 327 328 329 330 331 332 333 334 335 336 337 338
  o Changes default behavior of BGP IPv6 socket to v6only.
    Use 'listen bgp dual' for the old behavior.
  o Changes default for handling missing link-local addresses on
    route servers. Use 'missing lladdr drop' for the old behavior.
  o Important bugfix for OSPF.
  o Several minor bugfixes.

Version 1.2.5 (2010-10-10)
  o Several mostly minor bugfixes.

Version 1.2.4 (2010-08-03)
  o Added 'show memory' command.
  o Important bugfix in IPv6 BGP.
  o Several minor bugfixes.

339 340 341 342 343
Version 1.2.3 (2010-06-01)
  o Pattern matching for community lists.
  o Many fixes in OSPF protocol (esp. in multi-areas and vlinks).
  o Several minor bugfixes.

344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359
Version 1.2.2 (2010-04-10)
  o Much better BSD kernel support (IPv6, alien routes, ...).
  o Deep OSPF socket changes, fixes OSPFv2/v3 behavior on BSD.
  o OSPFv2 in Linux now supports more non-stub IP prefixes
    on one physical iface.
  o Export of device routes to the kernel is more restricted.
  o Routes with strange scope not allowed in BIRD routing tables.
  o New filterable route attributes bgp_originator_id,
    bgp_cluster_list and ospf_router_id.
  o Restricted read-only CLI (option -r).
  o Pattern matching for 'show protocols' command.
  o BGP protocol details in 'show protocols all' command.
  o Configurable syslog name (and default on IPv6 changed).
  o Statistic counters for pipes were fixed.
  o Many bugfixes in BGP, OSPF, filters, ...

360 361 362 363 364 365 366
Version 1.2.1 (2010-02-11)
  o Option 'interpret communities' allows to override implicit handling
    of well-known communities.
  o 'configure' command uses route reload when filters change.
  o Adds router ID of advertising router as OSPF route attribute.
  o 'show route' command indicates primary route and shows OSPF Router ID.
  o Configurable date/time formats.
Ondrej Filip's avatar
Ondrej Filip committed
  o Symbol names can be enclosed by '' and so include hyphen and start with number.
368 369
  o Several minor bugfixes.

370 371 372 373 374 375 376 377 378 379 380 381 382 383
Version 1.2.0 (2010-01-05)
  o Implements OSPFv3 (IPv6 support for OSPF). Because the code is
    shared with OSPFv2 and there were deep changes in it, we suggest
    caution during upgrade to OSPF users. Some advanced features
    (like NSSA, vlinks and authentication) are not yet implemented.
  o Implements MRTdump - binary logging protocol compatible with other
    routing daemons. Only BGP part of MRTdump is yet implemented.
  o Changes default value of BGP attribute LOCAL_PREF from 0 to 100.
    Use 'default bgp_local_pref 0' BGP protocol option for the old
    behavior. The new value is suggested by RFC 4277.
  o Changes default mode of pipes from opaque to transparent.
    Use 'mode opaque' protocol option if the old behavior is needed.
    Opaque pipe mode is deprecated and might be removed in the future.

Ondrej 'Feela' Filip's avatar
Ondrej 'Feela' Filip committed
Version 1.1.7 (2009-12-20)
  o Implements BGP Route Refresh (RFC 2918).
Ondrej 'Feela' Filip's avatar
Ondrej 'Feela' Filip committed
  o Implements route reload command.
387 388 389 390 391 392
  o Deep changes and bugfixes in pipe protocol.
  o Bugfix in OSPF premature aging of LSA.
  o Bugfix in OSPF next hop calculation.
  o Bugfix in core related to route withdraws.
  o Several minor bugfixes.

Version 1.1.6 (2009-11-19)
Ondřej Zajíček's avatar
Ondřej Zajíček committed
  o Implements RFC 5004 - prefer older external routes.
395 396 397
  o There is a change how route servers handle missing IPv6 link
    local addresses in next hop atribute - see 'missing lladdr'
Ondřej Zajíček's avatar
Ondřej Zajíček committed
398 399 400
  o Several minor features (description field, parse check option).
  o Several minor bugfixes.

Ondřej Zajíček's avatar
Ondřej Zajíček committed
401 402 403 404 405 406 407
Version 1.1.5 (2009-10-29)
  o Better scalability of BGP.
  o New accessors for AS path - first and last.
  o Allows to set protocol-specific router ID.
  o Allows import kernel 'onlink' routes.
  o Endianity check in buildsystem changed.

Ondřej Zajíček's avatar
Ondřej Zajíček committed
408 409 410 411
Version 1.1.4 (2009-10-02)
  o BGP passive option.
  o Several minor bugfixes.

Ondrej Filip's avatar
Ondrej Filip committed
412 413 414 415
Version 1.1.3 (2009-09-11)
  o Bugfix in core
  o Bugfix in BGP related to AS2->AS4 conversion.

Ondrej Filip's avatar
Ondrej Filip committed
416 417 418 419
Version 1.1.2 (2009-08-23)
  o Allow more kernel routing tables in IPv6.
  o Bugfix in core

420 421 422 423 424 425
Version 1.1.1 (2009-08-14)
  o 'more' style paging in BIRD client.
  o Important core bug fixed.
  o Portability to non-x86 related bugfixes.
  o As usual, miscellaneous bugfixes.

Ondrej Filip's avatar
Ondrej Filip committed
Version 1.1.0 (2009-06-28)
Ondrej Filip's avatar
Ondrej Filip committed
  o Parametrized pair and path mask expressions in the filter language.
428 429 430 431
  o Transparent pipe mode allows to implement BGP route server with
    independent route policy for each peer.
  o Kernel route table synchronization does not allow overwriting
    of alien routes.
Ondrej Filip's avatar
Ondrej Filip committed
  o Configurable BGP import route limits.
433 434
  o During BGP error delay, incoming connections are rejected.
  o BGP route statistics.
Ondrej Filip's avatar
Ondrej Filip committed
  o Better support for multiple network addresses on OSPF interfaces.
436 437
  o As usual, miscellaneous bugfixes.

Ondřej Zajíček's avatar
Ondřej Zajíček committed
438 439 440 441 442 443 444 445
Version 1.0.15 (2009-05-25)
  o FreeBSD and NetBSD port renewed. OpenBSD port introduced.
  o import/preimport 'show route' modifiers was renamed to export/preexport
    for consistency with filters.
  o Minor change in the grammar of 'interface' config option.
  o Many bugfixes in IPv6 BGP.
  o As usual, miscellaneous bugfixes.

446 447 448 449 450 451 452 453
Version 1.0.14 (2009-04-28)
  o A lot of bugfixes in BGP, OSPF and core.
  o A bugfix in filters in the pipe protocol. It is recommended to
    check whether the new behavior of used pipe filters is consistent
    with expectations.
  o Reimplementation of prefix sets and a slight change in the meaning
    of some prefix set patterns.

Ondřej Zajíček's avatar
Ondřej Zajíček committed
Version 1.0.13 (2009-03-14)
Ondřej Zajíček's avatar
Ondřej Zajíček committed
455 456 457 458 459 460 461 462 463
  o A lot of bugfixes in BGP, OSPF and core
  o A new syntax for BGP masks

Version 1.0.12 (2008-11-12)
  o new BGP features: BGP MD5, ASN32, BGP route reflector
  o BGP bugfixes


Ondřej Filip's avatar
Ondřej Filip committed
464 465 466 467 468 469
Version 1.0.9 (2004-07-15)
  o  Minor bugfix in RIP
  o  A lot of OSPF code rewritten, OSPF supports multiple areas,
     virtual links, MD5 authentication. It is fully compatible
     with rfc2329.

Ondřej Filip's avatar
Ondřej Filip committed
470 471 472 473 474 475 476 477
Version 1.0.8 (2004-06-07)
  o  A lot of bug fixes in RIP, OSPF and BGP (thanx to Andreas Steinmetz)
  o  FreeBSD and NetBSD port introduced
  o  Complete code clean up

Version 1.0.7 (2003-08-20)
  o  OSPF bug fixes

Martin Mareš's avatar
Martin Mareš committed
Version 1.0.6 (2003-04-06)
Martin Mareš's avatar
Martin Mareš committed
479 480 481 482 483 484 485 486 487

  o  No more byte order problems in RIP authentication. Thanks to
     Eric Leblond <> for a patch.
  o  Fixed interoperability problems with Cisco and Zebra when talking
     IPv6 BGP.
  o  Handle more primary addresses with different scopes gracefully.
     IPv6 needs that.
  o  Comparison of prefixes in filters doesn't ignore their lengts.
  o  As usually, OSPF bug fixes.
Martin Mareš's avatar
Martin Mareš committed
  o  Documentation building tools now work with recent linuxdoc-tools.
Martin Mareš's avatar
Martin Mareš committed
489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518

Version 1.0.5 (2001-06-09)

  o  Minor cleanups in the libraries.
  o  Removed a couple of warnings when compiling with newer glibc.
  o  OSPF bug fixes.

Version 1.0.4 (2000-09-04)

  o  Fixed a serious bug in 1.0.3.

Version 1.0.3 (2000-09-03)

  o  OSPF works better on NBMA networks. Some configuration tags added.

Version 1.0.2 (2000-08-24)

  o  Minor bug fixes to OSPF.

Version 1.0.1 (2000-06-22)

  o  Updated documentation and fixed a couple of bugs.

Version 1.0.0 (2000-06-09)

  o  First stable release.

Version 0.0.0 (2000-05-13)

  o  First public development release.