The FRRouting Protocol Suite
Find a file
Nathan Bahr 3b323fc441 pimd,yang: Implement AutoRP CLI and NB config path
New CLI commands added:
router pim [vrf NAME]
  autorp discovery
  autorp announce RP-ADDR [GROUP | group-list PREFIX-LIST]
  autorp announce {scope (1-255) | interval (1-65535) | holdtime (0-65535)}

autorp discovery
  Enables Auto RP discovery for learning dynamic RP information using the
  AutoRP protocol.

autorp announce RP-ADDR [GROUP | group-list PREFIX-LIST]
  Enable announcements of a candidate RP with the given group range, or
  prefix list of group ranges, to an AutoRP mapping agent.

autorp announce {scope (1-255) | interval (1-65535) | holdtime (0-65535)}
  Configure the parameters of the AutoRP announcement messages.
  The scope sets the packet TTL.
  The interval sets the time between TX of announcements.
  The holdtime sets the hold time in the message, the time the mapping
  agent should wait before invalidating the candidate RP information.

debug pim autorp
  Enable debug logging of the AutoRP protocol

show ip pim [vrf NAME] autorp [json]
  Show details of the AutoRP protocol.
  To view learned RP info, use the existing command 'show ip pim rp-info'

Extend pim yang for new configuration:
  augment /frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/frr-pim:pim/frr-pim:address-family:
    +--rw rp
       +--rw auto-rp
          +--rw discovery-enabled?   boolean
          +--rw announce-scope?      uint8
          +--rw announce-interval?   uint16
          +--rw announce-holdtime?   uint16
          +--rw candidate-rp-list* [rp-address]
             +--rw rp-address           inet:ip-address
             +--rw (group-or-prefix-list)?
                +--:(group)
                |  +--rw group?         frr-route-types:ip-multicast-group-prefix
                +--:(prefix-list)
                   +--rw prefix-list?   plist-ref

Signed-off-by: Nathan Bahr <nbahr@atcorp.com>
2024-09-24 16:39:17 +00:00
.github ci: do apt-get update before installing required modules 2024-06-08 17:29:19 -04:00
alpine docker: Set ABUILD_APK_INDEX_OPTS for frr build 2024-06-14 16:33:32 +03:00
babeld babeld: changes for code maintainability 2024-09-06 07:02:51 +05:30
bfdd bfdd: remove control socket obsolete code 2024-07-25 10:37:11 -03:00
bgpd Merge pull request #16906 from opensourcerouting/fix/match_peer_self 2024-09-24 10:16:35 -04:00
debian debian: Add option to build pkg with grpc support 2024-06-20 12:14:48 +02:00
doc doc: add documentation for ip igmp proxy cli 2024-09-23 11:43:40 -07:00
docker docker: Set ABUILD_APK_INDEX_OPTS for libyang 2024-06-14 11:37:23 +03:00
eigrpd *: Modify agentx to be allowed to be called 2024-05-10 10:16:29 -04:00
fpm *: add XREF_SETUP() to libraries and utilites 2024-05-02 23:03:08 +02:00
gdb
grpc build: throw in a few more XREF_SETUP 2024-05-09 18:02:49 +02:00
include build: include our own copy of if.h and dependencies 2024-04-26 17:11:53 +02:00
isisd Merge pull request #16855 from zhou-run/202409131731 2024-09-24 11:25:13 -04:00
ldpd ldpd: fix wrong gtsm count 2024-06-15 23:30:18 +08:00
lib lib: Load built-in Lua functions 2024-09-24 13:13:50 +03:00
m4 build: add recursion limit for AX_RECURSIVE_EVAL 2024-01-27 19:01:19 +01:00
mgmtd mgmtd: add ietf-yang-library support 2024-09-17 22:27:36 -04:00
mlag build: throw in a few more XREF_SETUP 2024-05-09 18:02:49 +02:00
nhrpd Merge pull request #16788 from LabNConsulting/jmuthii/nhrpd-retry-resolution 2024-09-24 11:07:21 -05:00
ospf6d ospf6d: apply CI style suggestions 2024-09-16 18:38:17 +10:00
ospfclient tools, ospfclient: add a config option to skip installing python scripts 2024-08-22 13:46:30 -05:00
ospfd Merge pull request #16853 from Shbinging/no_ip_ospf_dead_interval_minimal 2024-09-24 10:03:29 -04:00
pathd *: Create termtable specific temp memory 2024-09-01 13:07:46 -04:00
pbrd lib: common debug status output 2024-08-27 09:53:02 -04:00
pceplib Merge pull request #15215 from donaldsharp/pceplib_fixup 2024-01-25 09:59:59 +02:00
pimd pimd,yang: Implement AutoRP CLI and NB config path 2024-09-24 16:39:17 +00:00
pkgsrc build: homologize path handling 2024-01-27 19:02:52 +01:00
python vtysh, lib: preprocess CLI graphs 2024-07-31 08:08:53 -04:00
qpb *: add XREF_SETUP() to libraries and utilites 2024-05-02 23:03:08 +02:00
redhat redhat: Add option to build pkg with grpc support 2024-06-20 12:14:56 +02:00
ripd ripd: fix show run output for distribute-list 2024-08-08 01:25:02 +03:00
ripngd ripngd: adjust header for display command 2024-07-05 09:31:39 +08:00
sharpd sharpd: Eliminate leaked list for locator-chunks 2024-08-08 14:24:59 -04:00
snapcraft bfdd: remove control socket obsolete code 2024-07-25 10:37:11 -03:00
staticd lib: common debug status output 2024-08-27 09:53:02 -04:00
tests Merge pull request #16861 from btrent98/igmp-proxy2 2024-09-24 12:32:15 -04:00
tools Merge pull request #16733 from gtataranni/fix/regex-string 2024-09-04 08:13:19 +03:00
vrrpd *: Create termtable specific temp memory 2024-09-01 13:07:46 -04:00
vtysh Merge pull request #16664 from mjstapp/igor_debug_simplify 2024-08-29 11:51:53 -04:00
watchfrr build: homologize path handling 2024-01-27 19:02:52 +01:00
yang pimd,yang: Implement AutoRP CLI and NB config path 2024-09-24 16:39:17 +00:00
zebra Merge pull request #16882 from mjstapp/fix_if_table_unlock 2024-09-23 10:24:52 +02:00
.clang-format tools: Ignore ALIAS_* macros for clang-formatter 2024-07-17 08:10:13 +03:00
.dockerignore
.flake8
.git-blame-ignore-revs tools: Add black formatting commit to .git-blame-ignore-revs 2024-04-28 12:50:51 +03:00
.gitignore python: add tool to expand typesafe definitions 2024-04-29 17:37:49 +02:00
.isort.cfg
.pylintrc
.travis.yml
bootstrap.sh
buildtest.sh build: update packaging & docs for dir changes 2024-01-27 19:01:19 +01:00
config.version.in
configure.ac Merge pull request #16610 from Jafaral/no-py 2024-08-27 10:38:09 -04:00
COPYING
Makefile.am build: homologize path handling 2024-01-27 19:02:52 +01:00
README.md
stamp-h.in
version.h

Icon

FRRouting

FRR is free software that implements and manages various IPv4 and IPv6 routing protocols. It runs on nearly all distributions of Linux and BSD and supports all modern CPU architectures.

FRR currently supports the following protocols:

  • BGP
  • OSPFv2
  • OSPFv3
  • RIPv1
  • RIPv2
  • RIPng
  • IS-IS
  • PIM-SM/MSDP
  • LDP
  • BFD
  • Babel
  • PBR
  • OpenFabric
  • VRRP
  • EIGRP (alpha)
  • NHRP (alpha)

Installation & Use

For source tarballs, see the releases page.

For Debian and its derivatives, use the APT repository at https://deb.frrouting.org/.

Instructions on building and installing from source for supported platforms may be found in the developer docs.

Once installed, please refer to the user guide for instructions on use.

Community

The FRRouting email list server is located here and offers the following public lists:

Topic List
Development dev@lists.frrouting.org
Users & Operators frog@lists.frrouting.org
Announcements announce@lists.frrouting.org

For chat, we currently use Slack. You can join by clicking the "Slack" link under the Participate section of our website.

Contributing

FRR maintains developer's documentation which contains the project workflow and expectations for contributors. Some technical documentation on project internals is also available.

We welcome and appreciate all contributions, no matter how small!

Security

To report security issues, please use our security mailing list:

security [at] lists.frrouting.org