summaryrefslogtreecommitdiffstats
path: root/doc/user/eigrpd.rst
diff options
context:
space:
mode:
Diffstat (limited to 'doc/user/eigrpd.rst')
-rw-r--r--doc/user/eigrpd.rst200
1 files changed, 200 insertions, 0 deletions
diff --git a/doc/user/eigrpd.rst b/doc/user/eigrpd.rst
new file mode 100644
index 0000000..fa157c4
--- /dev/null
+++ b/doc/user/eigrpd.rst
@@ -0,0 +1,200 @@
+.. _eigrp:
+
+*****
+EIGRP
+*****
+
+.. glossary::
+
+ DUAL
+ The *Diffusing Update ALgorithm*, a :term:`Bellman-Ford` based routing
+ algorithm used by EIGRP.
+
+EIGRP -- Routing Information Protocol is widely deployed interior gateway
+routing protocol. EIGRP was developed in the 1990's. EIGRP is a
+:term:`distance-vector` protocol and is based on the :term:`DUAL` algorithms.
+As a distance-vector protocol, the EIGRP router send updates to its
+neighbors as networks change, thus allowing the convergence to a
+known topology.
+
+*eigrpd* supports EIGRP as described in RFC7868
+
+.. _starting-and-stopping-eigrpd:
+
+Starting and Stopping eigrpd
+============================
+
+The default configuration file name of *eigrpd*'s is :file:`eigrpd.conf`. When
+invocation *eigrpd* searches directory |INSTALL_PREFIX_ETC|. If
+:file:`eigrpd.conf` is not there next search current directory. If an
+integrated config is specified configuration is written into :file:`frr.conf`.
+
+The EIGRP protocol requires interface information maintained by *zebra* daemon.
+So running *zebra* is mandatory to run *eigrpd*. Thus minimum sequence for
+running EIGRP is:
+
+::
+
+ # zebra -d
+ # eigrpd -d
+
+
+Please note that *zebra* must be invoked before *eigrpd*.
+
+To stop *eigrpd*, please use::
+
+ kill `cat /var/run/frr/eigrpd.pid`
+
+Certain signals have special meanings to *eigrpd*.
+
++------------------+-----------------------------------------------------------+
+| Signal | Meaning |
++==================+===========================================================+
+| SIGHUP & SIGUSR1 | Rotate the log file |
++------------------+-----------------------------------------------------------+
+| SIGINT & SIGTERM | Sweep all installed EIGRP routes and gracefully terminate |
++------------------+-----------------------------------------------------------+
+
+
+*eigrpd* invocation options. Common options that can be specified
+(:ref:`common-invocation-options`).
+
+.. program:: eigrpd
+
+.. _eigrp-configuration:
+
+EIGRP Configuration
+===================
+
+.. clicmd:: router eigrp (1-65535) [vrf NAME]
+
+ The `router eigrp` command is necessary to enable EIGRP. To disable EIGRP,
+ use the `no router eigrp (1-65535)` command. EIGRP must be enabled before
+ carrying out any of the EIGRP commands. Specify vrf NAME if you want
+ eigrp to work within the specified vrf.
+
+.. clicmd:: network NETWORK
+
+ Set the EIGRP enable interface by `network`. The interfaces which
+ have addresses matching with `network` are enabled.
+
+ This group of commands either enables or disables EIGRP interfaces between
+ certain numbers of a specified network address. For example, if the
+ network for 10.0.0.0/24 is EIGRP enabled, this would result in all the
+ addresses from 10.0.0.0 to 10.0.0.255 being enabled for EIGRP. The `no
+ network` command will disable EIGRP for the specified network.
+
+ Below is very simple EIGRP configuration. Interface `eth0` and
+ interface which address match to `10.0.0.0/8` are EIGRP enabled.
+
+ .. code-block:: frr
+
+ !
+ router eigrp 1
+ network 10.0.0.0/8
+ !
+
+
+.. clicmd:: passive-interface (IFNAME|default)
+
+
+ This command sets the specified interface to passive mode. On passive mode
+ interface, all receiving packets are ignored and eigrpd does not send either
+ multicast or unicast EIGRP packets except to EIGRP neighbors specified with
+ `neighbor` command. The interface may be specified as `default` to make
+ eigrpd default to passive on all interfaces.
+
+ The default is to be passive on all interfaces.
+
+.. _how-to-announce-eigrp-route:
+
+How to Announce EIGRP route
+===========================
+
+Redistribute routes into EIGRP:
+
+.. clicmd:: redistribute <babel|bgp|connected|isis|kernel|openfabric|ospf|rip|sharp|static|table> [metric (1-4294967295) (0-4294967295) (0-255) (1-255) (1-65535)]
+
+ The ``redistribute`` family of commands imports routing information from
+ other sources into EIGRP's tables. Redistribution may be disabled with the
+ ``no`` form of the commands.
+
+ Note that connected routes on interfaces EIGRP is enabled on are announced
+ by default.
+
+ Optionally, various EIGRP metrics may be specified. These metrics will be
+ applied to the imported routes.
+
+
+.. _show-eigrp-information:
+
+Show EIGRP Information
+======================
+
+.. clicmd:: show ip eigrp [vrf NAME] topology
+
+ Display current EIGRP status.
+
+ ::
+
+ eigrpd> **show ip eigrp topology**
+ # show ip eigrp topo
+
+ EIGRP Topology Table for AS(4)/ID(0.0.0.0)
+
+ Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply
+ r - reply Status, s - sia Status
+
+ P 10.0.2.0/24, 1 successors, FD is 256256, serno: 0
+ via Connected, enp0s3
+
+.. clicmd:: show ip eigrp [vrf NAME] interface
+
+ Display the list of interfaces associated with a particular eigrp
+ instance.
+
+.. clicmd:: show ip eigrp [vrf NAME] neighbor
+
+ Display the list of neighbors that have been established within
+ a particular eigrp instance.
+
+EIGRP Debug Commands
+====================
+
+Debug for EIGRP protocol.
+
+.. clicmd:: debug eigrp packets
+
+ Debug eigrp packets
+
+ ``debug eigrp`` will show EIGRP packets that are sent and received.
+
+.. clicmd:: debug eigrp transmit
+
+ Debug eigrp transmit events
+
+ ``debug eigrp transmit`` will display detailed information about the EIGRP
+ transmit events.
+
+.. clicmd:: show debugging eigrp
+
+ Display *eigrpd*'s debugging option.
+
+ ``show debugging eigrp`` will show all information currently set for eigrpd
+ debug.
+
+
+Sample configuration
+====================
+
+.. code-block:: frr
+
+ hostname eigrpd
+ password zebra
+ enable password please-set-at-here
+ !
+ router eigrp 4453
+ network 192.168.1.0/24
+ !
+ log stdout
+