mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-08 07:37:29 +00:00
doc: clean up overview.rst, installation.rst
Just reading through the docs and fixing bugs as I go. Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
This commit is contained in:
parent
dc1046f726
commit
44f2550ef3
@ -5,24 +5,24 @@ Installation
|
|||||||
************
|
************
|
||||||
|
|
||||||
.. index:: How to install FRR
|
.. index:: How to install FRR
|
||||||
|
|
||||||
.. index:: Installation
|
.. index:: Installation
|
||||||
|
|
||||||
.. index:: Installing FRR
|
.. index:: Installing FRR
|
||||||
|
|
||||||
.. index:: Building the system
|
.. index:: Building the system
|
||||||
|
|
||||||
.. index:: Making FRR
|
.. index:: Making FRR
|
||||||
|
|
||||||
There are three steps for installing the software: configuration,
|
Several distributions provide packages for FRR. Check your distribution's
|
||||||
compilation, and installation.
|
respositories to find out if a suitable version is available.
|
||||||
|
|
||||||
The easiest way to get FRR running is to issue the following
|
If you wish to build FRR yourself, please see the `Building`_ appendix.
|
||||||
commands:
|
|
||||||
|
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:
|
||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
% configure
|
% ./bootstrap.sh
|
||||||
|
% ./configure
|
||||||
% make
|
% make
|
||||||
% make install
|
% make install
|
||||||
|
|
||||||
|
@ -4,11 +4,9 @@
|
|||||||
Overview
|
Overview
|
||||||
********
|
********
|
||||||
|
|
||||||
.. index:: Overview
|
`FRR`_ is a routing software package that provides TCP/IP based
|
||||||
|
|
||||||
`FRR <|PACKAGE_URL|>`_ is a routing software package that provides TCP/IP based
|
|
||||||
routing services with routing protocols support such as RIPv1, RIPv2, RIPng,
|
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
|
OSPFv2, OSPFv3, IS-IS, BGP-4, and BGP-4+ (:ref:`supported-rfcs`). FRR also
|
||||||
supports special BGP Route Reflector and Route Server behavior. In addition to
|
supports special BGP Route Reflector and Route Server behavior. In addition to
|
||||||
traditional IPv4 routing protocols, FRR also supports IPv6 routing protocols.
|
traditional IPv4 routing protocols, FRR also supports IPv6 routing protocols.
|
||||||
With SNMP daemon which supports SMUX and AgentX protocol, FRR provides routing
|
With SNMP daemon which supports SMUX and AgentX protocol, FRR provides routing
|
||||||
@ -22,11 +20,11 @@ can use FRR library as your program's client user interface.
|
|||||||
|
|
||||||
FRR is distributed under the GNU General Public License.
|
FRR is distributed under the GNU General Public License.
|
||||||
|
|
||||||
|
.. _About-FRR:
|
||||||
|
|
||||||
About FRR
|
About FRR
|
||||||
=========
|
=========
|
||||||
|
|
||||||
.. index:: About FRR
|
|
||||||
|
|
||||||
Today, TCP/IP networks are covering all of the world. The Internet has
|
Today, TCP/IP networks are covering all of the world. The Internet has
|
||||||
been deployed in many countries, companies, and to the home. When you
|
been deployed in many countries, companies, and to the home. When you
|
||||||
connect to the Internet your packet will pass many routers which have TCP/IP
|
connect to the Internet your packet will pass many routers which have TCP/IP
|
||||||
@ -65,7 +63,6 @@ currently being prepared for merging. Implementations of BFD and PIM-SSM
|
|||||||
The ultimate goal of the FRR project is making a productive, quality, free
|
The ultimate goal of the FRR project is making a productive, quality, free
|
||||||
TCP/IP routing software package.
|
TCP/IP routing software package.
|
||||||
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
|
|
||||||
System Architecture
|
System Architecture
|
||||||
===================
|
===================
|
||||||
@ -98,7 +95,6 @@ architecture creates new possibilities for the routing system.
|
|||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
@group
|
|
||||||
+----+ +----+ +-----+ +-----+
|
+----+ +----+ +-----+ +-----+
|
||||||
|bgpd| |ripd| |ospfd| |zebra|
|
|bgpd| |ripd| |ospfd| |zebra|
|
||||||
+----+ +----+ +-----+ +-----+
|
+----+ +----+ +-----+ +-----+
|
||||||
@ -110,7 +106,6 @@ architecture creates new possibilities for the routing system.
|
|||||||
+------------------------------+
|
+------------------------------+
|
||||||
|
|
||||||
FRR System Architecture
|
FRR System Architecture
|
||||||
@end group
|
|
||||||
|
|
||||||
|
|
||||||
Multi-process architecture brings extensibility, modularity and
|
Multi-process architecture brings extensibility, modularity and
|
||||||
@ -125,12 +120,11 @@ UNIX domain socket and then works as a proxy for user input.
|
|||||||
|
|
||||||
FRR was planned to use multi-threaded mechanism when it runs with a
|
FRR was planned to use multi-threaded mechanism when it runs with a
|
||||||
kernel that supports multi-threads. But at the moment, the thread library
|
kernel that supports multi-threads. But at the moment, the thread library
|
||||||
which comes with @sc{gnu}/Linux or FreeBSD has some problems with running
|
which comes with GNU/Linux or FreeBSD has some problems with running
|
||||||
reliable services such as routing software, so we don't use threads at all.
|
reliable services such as routing software, so we don't use threads at all.
|
||||||
Instead we use the *select(2)* system call for multiplexing the
|
Instead we use the *select(2)* system call for multiplexing the
|
||||||
events.
|
events.
|
||||||
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
|
|
||||||
Supported Platforms
|
Supported Platforms
|
||||||
===================
|
===================
|
||||||
@ -143,7 +137,7 @@ Supported Platforms
|
|||||||
|
|
||||||
.. index:: Operating systems that support FRR
|
.. index:: Operating systems that support FRR
|
||||||
|
|
||||||
Currently FRR supports @sc{gnu}/Linux and BSD. Porting FRR
|
Currently FRR supports GNU/Linux and BSD. Porting FRR
|
||||||
to other platforms is not too difficult as platform dependent code should
|
to other platforms is not too difficult as platform dependent code should
|
||||||
most be limited to the *zebra* daemon. Protocol daemons are mostly
|
most be limited to the *zebra* daemon. Protocol daemons are mostly
|
||||||
platform independent. Please let us know when you find out FRR runs on a
|
platform independent. Please let us know when you find out FRR runs on a
|
||||||
@ -153,213 +147,154 @@ The list of officially supported platforms are listed below. Note that
|
|||||||
FRR may run correctly on other platforms, and may run with partial
|
FRR may run correctly on other platforms, and may run with partial
|
||||||
functionality on further platforms.
|
functionality on further platforms.
|
||||||
|
|
||||||
@sp 1
|
- GNU/Linux
|
||||||
|
- FreeBSD
|
||||||
*
|
- NetBSD
|
||||||
@sc{gnu}/Linux
|
- OpenBSD
|
||||||
*
|
|
||||||
FreeBSD
|
|
||||||
*
|
|
||||||
NetBSD
|
|
||||||
*
|
|
||||||
OpenBSD
|
|
||||||
|
|
||||||
Versions of these platforms that are older than around 2 years from the point
|
Versions of these platforms that are older than around 2 years from the point
|
||||||
of their original release (in case of @sc{gnu}/Linux, this is since the kernel's
|
of their original release (in case of GNU/Linux, this is since the kernel's
|
||||||
release on kernel.org) may need some work. Similarly, the following platforms
|
release on https://kernel.org/) may need some work. Similarly, the following platforms
|
||||||
may work with some effort:
|
may work with some effort:
|
||||||
|
|
||||||
@sp 1
|
- Solaris
|
||||||
|
- MacOS
|
||||||
*
|
|
||||||
Solaris
|
|
||||||
*
|
|
||||||
Mac OSX
|
|
||||||
|
|
||||||
Also note that, in particular regarding proprietary platforms, compiler
|
Also note that, in particular regarding proprietary platforms, compiler
|
||||||
and C library choice will affect FRR. Only recent versions of the
|
and C library choice will affect FRR. Only recent versions of the
|
||||||
following C compilers are well-tested:
|
following C compilers are well-tested:
|
||||||
|
|
||||||
@sp 1
|
- GNU's GCC
|
||||||
|
- LLVM's clang
|
||||||
|
- Intel's ICC
|
||||||
|
|
||||||
*
|
|
||||||
@sc{gnu}'s GCC
|
|
||||||
*
|
|
||||||
LLVM's clang
|
|
||||||
*
|
|
||||||
Intel's ICC
|
|
||||||
|
|
||||||
@comment node-name, next, previous, up
|
.. _supported-rfcs:
|
||||||
|
|
||||||
Supported RFCs
|
Supported RFCs
|
||||||
==============
|
==============
|
||||||
|
|
||||||
Below is the list of currently supported RFC's.
|
FRR implements the following RFCs:
|
||||||
|
|
||||||
|
- :rfc:`1058`
|
||||||
|
:t:`Routing Information Protocol. C.L. Hedrick. Jun-01-1988.`
|
||||||
|
- :rfc:`2082`
|
||||||
|
:t:`RIP-2 MD5 Authentication. F. Baker, R. Atkinson. January 1997.`
|
||||||
|
- :rfc:`2453`
|
||||||
|
:t:`RIP Version 2. G. Malkin. November 1998.`
|
||||||
|
- :rfc:`2080`
|
||||||
|
:t:`RIPng for IPv6. G. Malkin, R. Minnear. January 1997.`
|
||||||
|
- :rfc:`2328`
|
||||||
|
:t:`OSPF Version 2. J. Moy. April 1998.`
|
||||||
|
- :rfc:`2370`
|
||||||
|
:t:`The OSPF Opaque LSA Option R. Coltun. July 1998.`
|
||||||
|
- :rfc:`3101`
|
||||||
|
:t:`The OSPF Not-So-Stubby Area (NSSA) Option P. Murphy. January 2003.`
|
||||||
|
- :rfc:`2740`
|
||||||
|
:t:`OSPF for IPv6. R. Coltun, D. Ferguson, J. Moy. December 1999.`
|
||||||
|
- :rfc:`1771`
|
||||||
|
:t:`A Border Gateway Protocol 4 (BGP-4). Y. Rekhter & T. Li. March 1995.`
|
||||||
|
- :rfc:`1965`
|
||||||
|
:t:`Autonomous System Confederations for BGP. P. Traina. June 1996.`
|
||||||
|
- :rfc:`1997`
|
||||||
|
:t:`BGP Communities Attribute. R. Chandra, P. Traina & T. Li. August 1996.`
|
||||||
|
- :rfc:`2545`
|
||||||
|
:t:`Use of BGP-4 Multiprotocol Extensions for IPv6 Inter-Domain Routing. P.
|
||||||
|
Marques, F. Dupont. March 1999.`
|
||||||
|
- :rfc:`2796`
|
||||||
|
:t:`BGP Route Reflection An alternative to full mesh IBGP. T. Bates & R.
|
||||||
|
Chandrasekeran. June 1996.`
|
||||||
|
- :rfc:`2858`
|
||||||
|
:t:`Multiprotocol Extensions for BGP-4. T. Bates, Y. Rekhter, R. Chandra, D.
|
||||||
|
Katz. June 2000.`
|
||||||
|
- :rfc:`2842`
|
||||||
|
:t:`Capabilities Advertisement with BGP-4. R. Chandra, J. Scudder. May 2000.`
|
||||||
|
- :rfc:`3137`
|
||||||
|
:t:`OSPF Stub Router Advertisement, A. Retana, L. Nguyen, R. White, A. Zinin,
|
||||||
|
D. McPherson. June 2001`
|
||||||
|
|
||||||
|
**When SNMP support is enabled, the following RFCs are also supported:**
|
||||||
|
|
||||||
*@asis{RFC1058}*
|
- :rfc:`1227`
|
||||||
@cite{Routing Information Protocol. C.L. Hedrick. Jun-01-1988.}
|
:t:`SNMP MUX protocol and MIB. M.T. Rose. May-01-1991.`
|
||||||
|
- :rfc:`1657`
|
||||||
|
:t:`Definitions of Managed Objects for the Fourth Version of the Border
|
||||||
*@asis{RF2082}*
|
Gateway Protocol (BGP-4) using SMIv2. S. Willis, J. Burruss, J. Chu, Editor.
|
||||||
@cite{RIP-2 MD5 Authentication. F. Baker, R. Atkinson. January 1997.}
|
July 1994.`
|
||||||
|
- :rfc:`1724`
|
||||||
|
:t:`RIP Version 2 MIB Extension. G. Malkin & F. Baker. November 1994.`
|
||||||
*@asis{RFC2453}*
|
- :rfc:`1850`
|
||||||
@cite{RIP Version 2. G. Malkin. November 1998.}
|
:t:`OSPF Version 2 Management Information Base. F. Baker, R. Coltun.
|
||||||
|
November 1995.`
|
||||||
|
- :rfc:`2741`
|
||||||
*@asis{RFC2080}*
|
:t:`Agent Extensibility (AgentX) Protocol. M. Daniele, B. Wijnen. January 2000.`
|
||||||
@cite{RIPng for IPv6. G. Malkin, R. Minnear. January 1997.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC2328}*
|
|
||||||
@cite{OSPF Version 2. J. Moy. April 1998.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC2370}*
|
|
||||||
@cite{The OSPF Opaque LSA Option R. Coltun. July 1998.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC3101}*
|
|
||||||
@cite{The OSPF Not-So-Stubby Area (NSSA) Option P. Murphy. January 2003.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC2740}*
|
|
||||||
@cite{OSPF for IPv6. R. Coltun, D. Ferguson, J. Moy. December 1999.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC1771}*
|
|
||||||
@cite{A Border Gateway Protocol 4 (BGP-4). Y. Rekhter & T. Li. March 1995.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC1965}*
|
|
||||||
@cite{Autonomous System Confederations for BGP. P. Traina. June 1996.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC1997}*
|
|
||||||
@cite{BGP Communities Attribute. R. Chandra, P. Traina & T. Li. August 1996.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC2545}*
|
|
||||||
@cite{Use of BGP-4 Multiprotocol Extensions for IPv6 Inter-Domain Routing. P. Marques, F. Dupont. March 1999.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC2796}*
|
|
||||||
@cite{BGP Route Reflection An alternative to full mesh IBGP. T. Bates & R. Chandrasekeran. June 1996.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC2858}*
|
|
||||||
@cite{Multiprotocol Extensions for BGP-4. T. Bates, Y. Rekhter, R. Chandra, D. Katz. June 2000.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC2842}*
|
|
||||||
@cite{Capabilities Advertisement with BGP-4. R. Chandra, J. Scudder. May 2000.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC3137}*
|
|
||||||
@cite{OSPF Stub Router Advertisement, A. Retana, L. Nguyen, R. White, A. Zinin, D. McPherson. June 2001}
|
|
||||||
|
|
||||||
When SNMP support is enabled, below RFC is also supported.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC1227}*
|
|
||||||
@cite{SNMP MUX protocol and MIB. M.T. Rose. May-01-1991.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC1657}*
|
|
||||||
@cite{Definitions of Managed Objects for the Fourth Version of the
|
|
||||||
Border Gateway Protocol (BGP-4) using SMIv2. S. Willis, J. Burruss,
|
|
||||||
J. Chu, Editor. July 1994.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC1724}*
|
|
||||||
@cite{RIP Version 2 MIB Extension. G. Malkin & F. Baker. November 1994.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC1850}*
|
|
||||||
@cite{OSPF Version 2 Management Information Base. F. Baker, R. Coltun.
|
|
||||||
November 1995.}
|
|
||||||
|
|
||||||
|
|
||||||
*@asis{RFC2741}*
|
|
||||||
@cite{Agent Extensibility (AgentX) Protocol. M. Daniele, B. Wijnen. January 2000.}
|
|
||||||
|
|
||||||
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
|
|
||||||
How to get FRR
|
How to get FRR
|
||||||
==============
|
==============
|
||||||
|
|
||||||
The official FRR web-site is located at:
|
The official FRR website is located at |PACKAGE_URL| and contains further
|
||||||
|
information, as well as links to additional resources.
|
||||||
|
|
||||||
`|PACKAGE_URL| <|PACKAGE_URL|>`_
|
FRR is a fork of `Quagga <http://www.quagga.net/>`_.
|
||||||
|
|
||||||
and contains further information, as well as links to additional
|
Mailing Lists
|
||||||
resources.
|
=============
|
||||||
|
|
||||||
FRR is a fork of Quagga, whose website is located at:
|
|
||||||
|
|
||||||
`http://www.quagga.net/ <http://www.quagga.net/>`_.
|
|
||||||
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
|
|
||||||
Mailing List
|
|
||||||
============
|
|
||||||
|
|
||||||
.. index:: How to get in touch with FRR
|
.. index:: How to get in touch with FRR
|
||||||
|
|
||||||
.. index:: Mailing FRR
|
|
||||||
|
|
||||||
.. index:: Contact information
|
.. index:: Contact information
|
||||||
|
|
||||||
.. index:: Mailing lists
|
.. index:: Mailing lists
|
||||||
|
|
||||||
There is a mailing list for discussions about FRR. If you have any
|
|
||||||
comments or suggestions to FRR, please subscribe to:
|
|
||||||
|
|
||||||
`https://lists.frrouting.org/listinfo/frog <https://lists.frrouting.org/listinfo/frog>`_.
|
Italicized lists are private.
|
||||||
|
|
||||||
The `FRR <|PACKAGE_URL|>`_ site has further information on
|
+--------------------------------+------------------------------+
|
||||||
the available mailing lists, see:
|
| Topic | List |
|
||||||
|
+================================+==============================+
|
||||||
|
| Development | dev@lists.frrouting.org |
|
||||||
|
+--------------------------------+------------------------------+
|
||||||
|
| Users & Operators | frog@lists.frrouting.org |
|
||||||
|
+--------------------------------+------------------------------+
|
||||||
|
| Announcements | announce@lists.frrouting.org |
|
||||||
|
+--------------------------------+------------------------------+
|
||||||
|
| *Security* | security@lists.frrouting.org |
|
||||||
|
+--------------------------------+------------------------------+
|
||||||
|
| *Technical Steering Committee* | tsc@lists.frrouting.org |
|
||||||
|
+--------------------------------+------------------------------+
|
||||||
|
|
||||||
`https://lists.frrouting.org/ <https://lists.frrouting.org/>`_
|
The Development list is used to discuss and document general issues related to
|
||||||
|
project development and governance. The public `Slack instance
|
||||||
|
<https://frrouting.slack.com>`_, and weekly technical meetings provide a higher
|
||||||
|
bandwidth channel for discussions. The results of such discussions are
|
||||||
|
reflected in updates, as appropriate, to code (i.e., merges), `GitHub
|
||||||
|
<https://github.com/FRRouting/frr/issues>`_ tracked issues, and for governance
|
||||||
|
or process changes, updates to the Development list and either this file or
|
||||||
|
information posted at https://frrouting.org/.
|
||||||
|
|
||||||
Bug Reports
|
Bug Reports
|
||||||
===========
|
===========
|
||||||
|
|
||||||
.. index:: Bug Reports
|
.. index:: Bug Reports
|
||||||
|
|
||||||
.. index:: Bug hunting
|
.. index:: Bug hunting
|
||||||
|
|
||||||
.. index:: Found a bug?
|
.. index:: Found a bug?
|
||||||
|
|
||||||
.. index:: Reporting bugs
|
.. index:: Reporting bugs
|
||||||
|
|
||||||
.. index:: Reporting software errors
|
.. index:: Reporting software errors
|
||||||
|
|
||||||
.. index:: Errors in the software
|
.. index:: Errors in the software
|
||||||
|
|
||||||
If you think you have found a bug, please send a bug report to:
|
If you think you have found a bug, please file a bug report on our
|
||||||
|
`GitHub issues`_ page.
|
||||||
`http://github.com/frrouting/frr/issues <http://github.com/frrouting/frr/issues>`_
|
|
||||||
|
|
||||||
When you send a bug report, please be careful about the points below.
|
When you send a bug report, please be careful about the points below.
|
||||||
|
|
||||||
*
|
- Please note what kind of OS you are using. If you use the IPv6 stack
|
||||||
Please note what kind of OS you are using. If you use the IPv6 stack
|
|
||||||
please note that as well.
|
please note that as well.
|
||||||
*
|
- Please show us the results of `netstat -rn` and `ifconfig -a`.
|
||||||
Please show us the results of `netstat -rn` and `ifconfig -a`.
|
|
||||||
Information from zebra's VTY command `show ip route` will also be
|
Information from zebra's VTY command `show ip route` will also be
|
||||||
helpful.
|
helpful.
|
||||||
*
|
- Please send your configuration file with the report. If you specify
|
||||||
Please send your configuration file with the report. If you specify
|
|
||||||
arguments to the configure script please note that too.
|
arguments to the configure script please note that too.
|
||||||
|
|
||||||
Bug reports are very important for us to improve the quality of FRR.
|
Bug reports help us improve FRR and are very much appreciated.
|
||||||
FRR is still in the development stage, but please don't hesitate to
|
|
||||||
send a bug report to `http://github.com/frrouting/frr/issues <http://github.com/frrouting/frr/issues>`_.
|
|
||||||
|
|
||||||
|
.. _FRR: |PACKAGE_URL|
|
||||||
|
.. _GitHub: http://github.com/frrouting/frr/
|
||||||
|
.. _GitHub issues: http://github.com/frrouting/frr/
|
||||||
|
Loading…
Reference in New Issue
Block a user