summaryrefslogtreecommitdiff
path: root/doc/bird.sgml
AgeCommit message (Collapse)Author
2017-12-07Merge commit '1e8721e2aeccfbc3f533e8b8abc07582cee77e9a' into int-newOndrej Zajicek (work)
2017-12-07Merge commit '7b2c5f3d2826e3175bf31b1c36056c9efc587a2b' into int-newOndrej Zajicek (work)
2017-12-07Merge commit '98bb80a243b58c43453e9be69d19d0350286549c' into int-newOndrej Zajicek (work)
2017-12-07Babel: Revamp cost computation and run route selection when cost changeOndrej Zajicek (work)
Also fix several minor bugs and add 'limit' option for k-out-of-j link sensing strategy. Change default from 8-of-16 to 12-of-16. Change IHU expiry factor from 1.5 to 3.5 (as in RFC 6126).
2017-12-07Timers: Parse and format functions for microsecond timesOndrej Zajicek (work)
Date/time output (e.g. in logs, show commands) can use %f to specify subsecond time. By default, millisecond precision is used in output.
2017-10-10OSPF: Add option to disable OSPFv3-AFOndrej Zajicek (work)
2017-10-10Doc: Fix referenceOndrej Zajicek (work)
2017-10-10RAdv: Documentation for more specific routesMichal 'vorner' Vaner
2017-09-13Doc: Document 'empty' operatorOndrej Zajicek (work)
Thanks to Alexander Zubkov for the notification.
2017-09-06Basic VRF supportOndrej Zajicek (work)
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.
2017-08-30RAdv: Some style nitpicksOndrej Zajicek (work)
2017-08-30RAdv: Configure how long a dead prefix is advertisedMichal 'vorner' Vaner
2017-06-09Babel: Add documentation for dual-stack operation and optionsOndrej Zajicek (work)
This updates the documentation for the Babel protocol to mention the fact that it now supports dual-stack operation, and adds documentation for the new next hop options. Thanks to Toke Høiland-Jørgensen <toke@toke.dk> for the patch.
2017-04-28Merge master into int-newOndrej Zajicek (work)
2017-04-26Flowspec: Max tcp mask length is 12 bitsOndrej Zajicek (work)
2017-04-25Nest: Update of show route cmdOndrej Zajicek (work)
Some code cleanup, multiple bugfixes, allows to specify also channel for 'show route export'. Interesting how such apparenty simple thing like show route cmd has plenty of ugly corner cases.
2017-04-12Client: multitable version of show routeJan Moskyto Matejka
2017-03-29Netlink: Change default kernel metric to 32Ondrej Zajicek (work)
This avoids collisions with non-BIRD routes in kernel tables.
2017-03-29BGP: Update list of supported standardsOndrej Zajicek (work)
2017-03-22Merge branch 'nexthop-merged' into int-newJan Moskyto Matejka
2017-03-22Filter: Check whether IP is 4 or 6Jan Moskyto Matejka
2017-03-14Minor cleanupsOndrej Zajicek (work)
BTW, 'prefices' is hypercorrection, as 'prefix' is from 'praefixum' with plural 'praefixa'.
2017-03-14BGP: Allow to specify interface for regular sessionsOndrej Zajicek (work)
This may be useful if multple interfaces share the same network range. Thanks to Fritz Grimpen for the original patch.
2017-03-13Filters: VPN Route Distinguishers, Prefix Type, Docs UpdateJan Moskyto Matejka
2017-03-08Update OSPF and RIP protocol names and related documentationOndrej Zajicek (work)
2017-02-23BGP: Allow exchanging LOCAL_PREF with eBGP peersOndrej Zajicek (work)
Adds option 'allow bgp_local_pref' to override the usual restriction of LOCAL_PREF on eBGP sessions. Thanks to Lennert Buytenhek for the patch.
2017-02-22Merge branch 'int-new' into nexthop-mergedJan Moskyto Matejka
2017-02-20Several minor fixesOndrej Zajicek (work)
2017-02-19Doc: Fix RIP exampleOndrej Zajicek (work)
Thanks to Steve Leung for the bugreport.
2017-02-07BGP: Minor cleanupsOndrej Zajicek (work)
2017-01-22BGP: Support for AS confederations (RFC 5065)Ondrej Zajicek (work)
2016-12-22Static: Protocol rework wrt. struct nexthop changes; MPLS label supportJan Moskyto Matejka
2016-12-07Basic flow specification support (RFC 5575)Ondrej Zajicek (work)
Add flow4/flow6 network and rt-table type and operations, config grammar and static protocol support. Squashed flowspec branch from Pavel Tvrdik.
2016-12-07Merge branch 'int-new-rpki-squashed' (early part) into int-newJan Moskyto Matejka
2016-12-07RPKI protocol with one cache server per protocolPavel Tvrdík
The RPKI protocol (RFC 6810) using the RTRLib (http://rpki.realmv6.org/) that is integrated inside the BIRD's code. Implemeted transports are: - unprotected transport over TCP - secure transport over SSHv2 Example configuration of bird.conf: ... roa4 table r4; roa6 table r6; protocol rpki { debug all; # Import both IPv4 and IPv6 ROAs roa4 { table r4; }; roa6 { table r6; }; # Set cache server (validator) address, # overwrite default port 323 remote "rpki-validator.realmv6.org" port 8282; # Overwrite default time intervals retry 10; # Default 600 seconds refresh 60; # Default 3600 seconds expire 600; # Default 7200 seconds } protocol rpki { debug all; # Import only IPv4 routes roa4 { table r4; }; # Set cache server address to localhost, # use default ports tcp => 323 or ssh => 22 remote 127.0.0.1; # Use SSH transport instead of unprotected transport over TCP ssh encryption { bird private key "/home/birdgeek/.ssh/id_rsa"; remote public key "/home/birdgeek/.ssh/known_hosts"; user "birdgeek"; }; } ...
2016-11-09 Unit Testing for BIRDOndrej Zajicek (work)
- Unit Testing Framework (BirdTest) - Integration of BirdTest into the BIRD build system - Tests for several BIRD modules Based on squashed Pavel Tvrdik's int-test branch, updated for current int-new branch.
2016-11-02BFD: AuthenticationOndrej Zajicek (work)
Implement BFD authentication (part of RFC 5880). Supports plaintext passwords and cryptographic MD5 / SHA-1 authentication. Based on former commit from Pavel Tvrdik
2016-11-02DOC: Password algorithm optionPavel Tvrdík
2016-10-12Doc: Change debug to { flag1|flag2|flag3 [, ...] } stylePavel Tvrdik
Thanks to Micah Anderson for bug report and Ondrej Zajicek for the idea!
2016-10-11Doc: Add tag for links to RFCsPavel Tvrdik
2016-10-11Doc: Use [table t] or [table name]Pavel Tvrdik
2016-10-11Doc: Fix unnecessary special charsPavel Tvrdik
2016-10-11Doc: Daemon command-line options alphabet orderPavel Tvrdik
2016-10-11Doc: Add command-line options --version, --helpPavel Tvrdik
2016-10-11Doc: Add labels to all chapters and optionsPavel Tvrdik
2016-10-04Doc: Documentation for large communitiesOndrej Zajicek (work)
2016-09-29Docs: fix BFD labelPavel Tvrdik
BFD headline will appear in Table of Contents again.
2016-09-21Add !~ operator to filter grammarPavel Tvrdik
2016-09-19KRT: Add krt_scope attributeOndrej Zajicek (work)
Add a new route attribute, krt_scope, to expose the Linux kernel route scope. Constants from /etc/iproute2/rt_scopes (prefixed by "ips_") are expected to be used with the attribute. Both import and export are supported. Also, the patch fixes device route export to the kernel, by setting link scope automatically.
2016-09-15KRT: Add kernel metric protocol optionOndrej Zajicek (work)
Kernel routes with different metrics do not clash with each other, therefore using dedicated metric value is a reliable way to avoid overwriting routes from other sources (e.g. kernel device routes). Although kernel route metric could already be set as a route attribute by filters, that is not consistent with the way how Linux kernel handles route metric - not just a route attribute, but a part of a route key.