a double-stack routing protocol, meaning that a single Babel instance
is able to perform routing for both IPv4 and IPv6.
-FRR imlements Babel as described in :t:`RFC6126`.
+FRR implements Babel as described in :rfc:`6126`.
.. _Configuring_babeld:
:abbr:`BGP` stands for a Border Gateway Protocol. The lastest BGP version is 4.
It is referred as BGP-4. BGP-4 is one of the Exterior Gateway Protocols and
de-fact standard of Inter Domain routing protocol. BGP-4 is described in
-:t:`RFC1771, A Border Gateway Protocol 4 (BGP-4)`.
+:rfc:`1771`.
-Many extensions have been added to :t:`RFC1771`. :t:`RFC2858, Multiprotocol
-Extensions for BGP-4` provides multiprotocol support to BGP-4.
+Many extensions have been added to :rfc:`1771`. :rfc:`2858` provides
+multiprotocol support to BGP-4.
.. _Starting_BGP:
This command enables BGP route-flap dampening and specifies dampening parameters.
-
*@asis{half-life}*
Half-life time for the penalty
*@asis{max-suppress}*
Maximum duration to suppress a stable route
- The route-flap damping algorithm is compatible with :t:`RFC2439`. The use of this command
- is not recommended nowadays, see `http://www.ripe.net/ripe/docs/ripe-378,,RIPE-378 <http://www.ripe.net/ripe/docs/ripe-378,,RIPE-378>`_.
+ The route-flap damping algorithm is compatible with :rfc:`2439`. The use of this command
+ is not recommended nowadays, see http://www.ripe.net/ripe/docs/ripe-378,,RIPE-378 <http://www.ripe.net/ripe/docs/ripe-378,,RIPE-378>.
.. _BGP_MED:
BGP MED
=======
-The BGP MED (Multi_Exit_Discriminator) attribute has properties which can
+The BGP :abbr:`MED (Multi Exit Discriminator)` attribute has properties which can
cause subtle convergence problems in BGP. These properties and problems
have proven to be hard to understand, at least historically, and may still
not be widely understood. The following attempts to collect together and
present what is known about MED, to help operators and FRR users in
designing and configuring their networks.
-The BGP :abbr:`MED ( Multi_Exit_Discriminator)` attribute is intended to
-allow one AS to indicate its preferences for its ingress points to another
-AS. The MED attribute will not be propagated on to another AS by the
-receiving AS - it is 'non-transitive' in the BGP sense.
+The BGP :abbr:`MED` attribute is intended to allow one AS to indicate its
+preferences for its ingress points to another AS. The MED attribute will not be
+propagated on to another AS by the receiving AS - it is 'non-transitive' in the
+BGP sense.
E.g., if AS X and AS Y have 2 different BGP peering points, then AS X
might set a MED of 100 on routes advertised at one and a MED of 200 at the
Identifier (AFI), namely IPv4 and IPv6. Support is also provided for
multiple sets of per-AFI information via Subsequent Address Family
Identifiers (SAFI). In addition to unicast information, VPN information
-:t:`RFC4364` and :t:`RFC4659`, and Encapsulation information
-:t:`RFC5512` is supported.
+:rfc:`4364` and :rfc:`4659`, and Encapsulation information
+:rfc:`5512` is supported.
.. index:: show ip bgp vpnv4 all
were some proposals. :abbr:`IETF (Internet Engineering Task Force)`
:abbr:`IDR ( Inter Domain Routing)` :abbr:`IDR ( Inter Domain Routing)` adopted
a proposal called Multiprotocol Extension for BGP. The specification
-is described in :t:`RFC2283`. The protocol does not define new protocols.
+is described in :rfc:`2283`. The protocol does not define new protocols.
It defines new attributes to existing BGP. When it is used exchanging
IPv6 routing information it is called BGP-4+. When it is used for
exchanging multicast routing information it is called MBGP.
Several distributions provide packages for FRR. Check your distribution's
respositories to find out if a suitable version is available.
-If you wish to build FRR yourself, please see the `Building`_ appendix.
+FRR depends on various libraries depending on your operating system.
-FRR depends on various libraries depending on your operationg system.
-
-After installing these dependencies, change to the frr source directory and issue the following commands:
+After installing these dependencies, change to the frr source directory and
+issue the following commands:
::
- % ./bootstrap.sh
- % ./configure
- % make
- % make install
+ $ ./bootstrap.sh
+ $ ./configure
+ $ make
+ $ make install
.. _Configure_the_Software:
delegate this group to individual users, or to run vtysh setgid to
this group.
-The default user and group which will be configured is 'frr' if no user
-or group is specified. Note that this user or group requires write access to
-the local state directory (see `--localstatedir`) and requires at least read
-access, and write access if you wish to allow daemons to write out their
-configuration, to the configuration directory (see `--sysconfdir`).
+The default user and group which will be configured is 'frr' if no user or
+group is specified. Note that this user or group requires write access to the
+local state directory (see :option:`--localstatedir`) and requires at least
+read access, and write access if you wish to allow daemons to write out their
+configuration, to the configuration directory (see :option:`--sysconfdir`).
On systems which have the 'libcap' capabilities manipulation library (currently
only Linux), FRR will retain only minimal capabilities required and will only
do exist.
-- CONFIG_NETLINK
+- :makevar:`CONFIG_NETLINK`
Kernel/User netlink socket. This is a brand new feature which enables an
advanced interface between the Linux kernel and zebra (:ref:`Kernel_Interface`).
-- CONFIG_RTNETLINK
+- :makevar:`CONFIG_RTNETLINK`
Routing messages.
This makes it possible to receive netlink routing messages. If you
specify this option, *zebra* can detect routing information
updates directly from the kernel (:ref:`Kernel_Interface`).
-- CONFIG_IP_MULTICAST
+- :makevar:`CONFIG_IP_MULTICAST`
IP: multicasting.
This option should be specified when you use *ripd* (:ref:`RIP`) or
*ospfd* (:ref:`OSPFv2`) because these protocols use multicast.
included. The `inet-apps` can be found at
`ftp://ftp.inner.net/pub/ipv6/ <ftp://ftp.inner.net/pub/ipv6/>`_.
-
*net-tools*
- The `net-tools` package provides an IPv6 enabled interface and
- routing utility. It contains *ifconfig*, *route*,
- *netstat*, and other tools. `net-tools` may be found at
- `http://www.tazenda.demon.co.uk/phil/net-tools/ <http://www.tazenda.demon.co.uk/phil/net-tools/>`_.
-
+ The `net-tools` package provides an IPv6 enabled interface and routing
+ utility. It contains *ifconfig*, *route*, *netstat*, and other tools.
+ `net-tools` may be found at http://www.tazenda.demon.co.uk/phil/net-tools/.
.. _Build_the_Software:
Simply issue the command *make* in the root of the source directory and the
software will be compiled. Cliff Notes versions of different compilation
examples can be found in the Developer's Manual Appendix. If you have *any*
-problems at this stage, please send a bug report :ref:`Bug_Reports`.
+problems at this stage, please send a bug report :ref:`Bug-Reports`.
::
Overview
********
+big booty bizitches
+
+ ballsack
+
+show ip bgp sum
+
+ example
+
`FRR`_ is a routing software package that provides TCP/IP based
routing services with routing protocols support such as RIPv1, RIPv2, RIPng,
OSPFv2, OSPFv3, IS-IS, BGP-4, and BGP-4+ (:ref:`supported-rfcs`). FRR also
or process changes, updates to the Development list and either this file or
information posted at https://frrouting.org/.
-Bug Reports
-===========
-
.. index:: Bug Reports
.. index:: Bug hunting
.. index:: Found a bug?
.. index:: Reporting software errors
.. index:: Errors in the software
+.. _Bug-Reports:
+
+Bug Reports
+===========
+
If you think you have found a bug, please file a bug report on our
`GitHub issues`_ page.
To stop *ripd*. Please use @command{kill `cat
/var/run/ripd.pid`}. Certain signals have special meaningss to *ripd*.
-
-
-*SIGHUP*
- Reload configuration file :file:`ripd.conf`. All configurations are
- reseted. All routes learned so far are cleared and removed from routing
- table.
-
-*SIGUSR1*
- Rotate *ripd* logfile.
-
-*SIGINT*
-
-*SIGTERM*
- *ripd* sweeps all installed RIP routes then terminates properly.
+ +-------------+------------------------------------------------------+
+ | Signal | Action |
+ +=============+======================================================+
+ | ``SIGHUP`` | Reload configuration file :file:`ripd.conf`. |
+ | | All configurations are reset. All routes learned |
+ | | so far are cleared and removed from routing table. |
+ +-------------+------------------------------------------------------+
+ | ``SIGUSR1`` | Rotate the *ripd* logfile. |
+ +-------------+------------------------------------------------------+
+ | ``SIGINT`` | |
+ | ``SIGTERM`` | Sweep all installed routes and gracefully terminate. |
+ +-------------+------------------------------------------------------+
*ripd* invocation options. Common options that can be specified
(:ref:`Common_Invocation_Options`).
+.. option:: -r
+.. option:: --retain
-
-*-r*
-
-*--retain*
- When the program terminates, retain routes added by *ripd*.
+ When the program terminates, retain routes added by *ripd*.
.. _RIP_netmask: