summaryrefslogtreecommitdiffstats
path: root/doc (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Doc: Update URL to freerangerouting.orgMartin Winter2017-01-192-10/+10
| | | | Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
* lib: Update ZAPI to version 4 and HEADER_MARKER to 254Donald Sharp2017-01-041-2/+5
| | | | | | | | | | Update the ZEBRA_HEADER_MARKER to 254. This will differentiate ourselves from Quagga. Zebra should not listen to people not properly using the right programs now. Update the ZAPI version number to 4. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* doc: Fixup quagga -> frrDonald Sharp2017-01-0427-225/+227
| | | | | | Modify the documentation so that it talks about FRR instead of Quagga. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* watchfrr: Rename watchquagga -> watchfrrDonald Sharp2017-01-043-21/+21
| | | | Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* Merge pull request #37 from LabNConsulting/working/2.0/patch-set-170102aDavid Lamparter2017-01-031-2/+2
|\ | | | | Working/2.0/patch set 170102a
| * BGP: deal with vnc related string ambiguities (issue #9)G. Paul Ziemba2017-01-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | - "redist foo" parsing modified to check for foo==vnc and foo==vnc-direct instead of just leading 'v' character - string designating ZEBRA_ROUTE_VNC_DIRECT changed from "vpn" to "vnc-direct" - route_types.pl parser recognizes 7th field to restrict availability of a route type in the redist command to specific daemons - restrict "vnc-direct" to bgpd only (doesn't make sense elsewhere) - vnc documentation updated to match Signed-off-by: Lou Berger <lberger@labn.net>
* | doc: use config values from configure in manpagesDavid Lamparter2016-12-2014-130/+131
| | | | | | | | | | | | | | This makes the actual change to the manpages to get ./configure effects applied into them. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* | doc: rename manpages to ".in" for autoconfDavid Lamparter2016-12-2014-2/+15
|/ | | | | | | | | | The manpages contain references to installation paths and thus should be preprocessed by ./configure to get the actual paths. This commit is an exact-rename so the changes for the preprocessing are easier to review (diffs in renames are hard to read...) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* build: COMMUNITY.md: add git branch diagramDavid Lamparter2016-12-011-0/+3
| | | | Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* doc: vtysh doc updatesDavid Lamparter2016-11-102-37/+138
|
* doc: generic updatesDavid Lamparter2016-11-102-21/+9
|
* bgpd: add L3/L2VPN Virtual Network Control featureLou Berger2016-10-0324-6/+7336
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This feature adds an L3 & L2 VPN application that makes use of the VPN and Encap SAFIs. This code is currently used to support IETF NVO3 style operation. In NVO3 terminology it provides the Network Virtualization Authority (NVA) and the ability to import/export IP prefixes and MAC addresses from Network Virtualization Edges (NVEs). The code supports per-NVE tables. The NVE-NVA protocol used to communicate routing and Ethernet / Layer 2 (L2) forwarding information between NVAs and NVEs is referred to as the Remote Forwarder Protocol (RFP). OpenFlow is an example RFP. For general background on NVO3 and RFP concepts see [1]. For information on Openflow see [2]. RFPs are integrated with BGP via the RF API contained in the new "rfapi" BGP sub-directory. Currently, only a simple example RFP is included in Quagga. Developers may use this example as a starting point to integrate Quagga with an RFP of their choosing, e.g., OpenFlow. The RFAPI code also supports the ability import/export of routing information between VNC and customer edge routers (CEs) operating within a virtual network. Import/export may take place between BGP views or to the default zebera VRF. BGP, with IP VPNs and Tunnel Encapsulation, is used to distribute VPN information between NVAs. BGP based IP VPN support is defined in RFC4364, BGP/MPLS IP Virtual Private Networks (VPNs), and RFC4659, BGP-MPLS IP Virtual Private Network (VPN) Extension for IPv6 VPN . Use of both the Encapsulation Subsequent Address Family Identifier (SAFI) and the Tunnel Encapsulation Attribute, RFC5512, The BGP Encapsulation Subsequent Address Family Identifier (SAFI) and the BGP Tunnel Encapsulation Attribute, are supported. MAC address distribution does not follow any standard BGB encoding, although it was inspired by the early IETF EVPN concepts. The feature is conditionally compiled and disabled by default. Use the --enable-bgp-vnc configure option to enable. The majority of this code was authored by G. Paul Ziemba <paulz@labn.net>. [1] http://tools.ietf.org/html/draft-ietf-nvo3-nve-nva-cp-req [2] https://www.opennetworking.org/sdn-resources/technical-library Now includes changes needed to merge with cmaster-next.
* doc: add blurb on use of protobuf with FPMAvneesh Sachdev2016-09-231-2/+26
| | | | | | | Add text about using protobuf as an alternative format for the FPM interface. Signed-off-by: Avneesh Sachdev <avneesh@sproute.com>
* build: fix package generation on CentOS 7Renato Westphal2016-09-231-1/+1
| | | | Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* ldpd: adapt the code for QuaggaRenato Westphal2016-09-233-1/+795
| | | | Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* doc: Get isisd.text included properlyDonald Sharp2016-09-131-1/+1
| | | | | | | | When building from a 'make dist' allow the proper distribution of the new isisd.texi to build documentation properly. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* bgpd: Add flag to not change e{u,g}id on startup and run as unprivileged userLou Berger2016-09-091-1/+4
| | | | | * bgp_main.c: add -S / --skip_runas flag to not change effective user/group on start up. Enables bgpd to be run by unprivileged user.
* quagga: remove refix directory from git statusDonald Sharp2016-09-091-0/+1
| | | | | | | | | During one of our build processes we are getting a refix directory in some places. Remove these from files that git considers Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> (cherry picked from commit 844cbf5d6cdfc6961e99e1c9ed35b826f3aa7562)
* Update documentation for Traffic EngineeringOlivier Dugeon2016-09-037-8/+729
| | | | Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
* ospfd: Impl. per interface 'ip ospf area' commandJoakim Tjernlund2016-08-181-0/+5
| | | | | | | | | | | | | | | | | | Use with interface command: interface ppp0 ip ospf area 0.0.0.0 This will enable OSPF on ppp0 with area 0.0.0.0 Remove with "no ip ospf area" * ospf_vty.c: add "ip ospf area (A.B.C.D|<0-4294967295>)" interface command * ospfd.c: (ospf_interface_{un,}set) new helper function to enable/disable OSPF on a specific interface. (ospf_if_update) 2 possible paths now to deal with interface updates. Acked-by: Donald Sharp <sharpd@cumulusnetworks.com> [DL: this restores the tree to deccaf9...]
* Revert "per-interface ospf enable and area set command."David Lamparter2016-08-181-5/+0
| | | | | | | | | | | | This reverts commit e723861da171fd811f499665e5432dce4e364ee6. The code is from Joakim Tjernlund; this is just to fix the history (and attribution) of it. The last commit will restore the exact same tree state. THIS COMMIT WILL PROBABLY NOT COMPILE. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* doc: Add quagga.1 to the distributionDonald Sharp2016-06-061-1/+1
| | | | | | | | The quagga.1 file was not part of the distribution and was not being included in the dist tar ball which caused rpm builds to fail. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* lib: change command logging to be off by default, and add 'log_commands' to ↵Lou Berger2016-06-091-0/+7
| | | | enable it.
* doc: older versions of texinfo seem to be sensitive to location of unmacroPaul Jakma2016-05-261-3/+0
| | | | | | | | * bgpd.texi: The unmacro of mprec seems to be disliked by older texinfos. Moving it to after the section fixes it. Even easier, just don't undef the macro. (cherry picked from commit f8113a2b10a97ba0d5e915b318cebea283d03169)
* doc: Add AFI/SAFI show commands to manualLou Berger2016-05-261-0/+25
| | | | | Signed-off-by: Lou Berger <lberger@labn.net> (cherry picked from commit 544ec70f66d0ec081dadde79bec1f25c2241f57f)
* docs: Update bgpd docs, inc. on decision process, and with a section on MED.Paul Jakma2016-05-262-6/+368
| | | | | | | | | | | | | | | | * bgpd.texi: Document the -l argument. Update the 'BGP decision process' table to reflect what /actually/ is implemented. Add docs on 'compare-routerid' in the bestpath section. Add a section on MED, to highlight the issues it has by default, and to highlight that it is terminally broken for its original purpose in many modern iBGP topologies. Mention the potential workarounds and fixes. * routemap.texi: set an anchor on 'set metric' so bgpd.texi can reference it. (cherry picked from commit d5062d218994885710fe02f516f0c06025b4fc9a)
* doc: Add 'OSPF Fundamentals' section to OSPF docsPaul Jakma2016-05-263-1/+586
| | | | | | | | | | | * ospf_fundamentals.texi: New section explaining the fundamentals of OSPF for system admins, to help them debug their networks. * {Makefile.am,ospfd.texi}: include and build previous Conflicts: doc/Makefile.am (cherry picked from commit e56aab94a615a2b676473fbd09145b444a348029)
* doc: fix some warningsDavid Lamparter2016-05-263-5/+5
| | | | | | Signed-off-by: David Lamparter <equinox@opensourcerouting.org> Acked-by: Paul Jakma <paul@jakma.org> (cherry picked from commit f16195c173f8e2e17ea35f143b6ffcd50c0619fb)
* doc: Document 'set as-path prepend' and 'set as-path prepend last-as'Paul Jakma2016-05-261-0/+5
| | | | (cherry picked from commit 5e4ba81dc212b172e715afa7b6ea668cddd8485d)
* docs: defines.texi include seems to want to be after setfilenamePaul Jakma2016-05-261-4/+3
| | | | | | | | | * quagga.texi: I'm getting warnings about stuff in defines.texi not being defined when building quagga.info. Seems to be fixed by moving the include of defines.texi to the end of the header. Also, the Texinfo docs suggest setfilename must go first. (cherry picked from commit 384d7ad98c109e92eaf65bf10a3256e5657639c3)
* pimd: merge pimd as of 2015-01-19David Lamparter2016-05-263-1/+131
| | | | | | | | | | | | | | | | | | | | | Welcome pimd to the Quagga daemon zoo! This is a merge of commit 77ae369 ("pimd: Log ifindex found for an interface when zebra lib reports a new connected address."), with the intermediate "reconnect" changes removed (c9adf00...d274381). d274381 is replaced with b162ab7, which includes some changes. In addition, 4 reconnect-related changes and 1 cosmetic one have been bumped out. The rebase command used to produce the branch that is merged here is: git rebase --onto b162ab7 c9adf00 77ae369 Note that 3 patches had their author rewritten from "Anonymous SR#108542 <>" (which is not a valid git author ID) to: "Savannah SR#108542 <nbahr@atcorp.com>" (which is the e-mail address listed in the associated Savannah ticket) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* doc: explain rpf lookup default modeDavid Lamparter2016-05-261-0/+5
| | | | | Reported-by: Alexis Rosen <quagga-users@alexis.users.panix.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* doc: zebra multicast RIB commandsDavid Lamparter2016-05-261-0/+76
| | | | Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* doc: Update man page for Quagga systemctl scriptDonald Sharp2016-03-102-1/+66
| | | | | | | | Create the man page for the quagga systemctl script. Ticket: CM-9748 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Reviewed-by: Don Slice <dslice@cumulusnetworks.com>
* quagga: remove babelDaniel Walton2016-02-114-122/+2
| | | | | | | | Ticket: CM-9274 Reviewed By: sharpd@cumulusnetworks.com Testing Done: <DETAILED DESCRIPTION (REPLACE)>
* doc, vtysh: Fixup of history handlingDonald Sharp2016-01-131-0/+3
| | | | | | | | | | | This fix does two things: 1) If the ${HOME}/.history_quagga file does not exist, create it for history storing. 2) Allow vtysh -c "..." commands to be stored in history file as well Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* BGP: Update dump to allow Extended Time FormatAlexis Fasquel2015-11-172-8/+43
| | | | | | | | | | | Allow the bgp dump functionality to handle the Extended Time format as specified in RFC 6396. Fixes a segmentation fault with multiple dump rules as well. Signed-off-by: Alexis Fasquel <alexis@pch.net> Acked-by: Donald Sharp <sharpd@cumulusnetworks.com> Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* Quagga: Man pages have wrong pathsDonald Sharp2015-10-298-16/+16
| | | | | | | | | Ticket: CM-8027 Testing: See bug The man pages have the wrong paths listed. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* per-interface ospf enable and area set command.Donald Sharp2015-05-201-0/+5
|
* bgpd: bgpd-ibgp-policy-out-allow-mods.patchDonald Sharp2015-05-201-0/+6
| | | | | | | | | | BGPd: Allow route-map policy modifications to also affect route reflectors. By default, attribute modification via route-map policy out is ignored on reflected routes. This patch provides an option to allow this modification to occur. Once enabled, it affects all reflected routes. Signed-off-by: Dinesh G Dutt <ddutt@cumulusnetworks.com>
* bgpd: bgpd-routemap-match-localpref.patchDonald Sharp2015-05-201-0/+4
| | | | | | | BGPd: Support matching on local preference in route-map This patch adds support for matching on local preference in BGP route-map.
* bgpd: bgpd-table-map.patchDonald Sharp2015-05-201-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | COMMAND: table-map <route-map-name> DESCRIPTION: This feature is used to apply a route-map on route updates from BGP to Zebra. All the applicable match operations are allowed, such as match on prefix, next-hop, communities, etc. Set operations for this attach-point are limited to metric and next-hop only. Any operation of this feature does not affect BGPs internal RIB. Supported for ipv4 and ipv6 address families. It works on multi-paths as well, however, metric setting is based on the best-path only. IMPLEMENTATION NOTES: The route-map application at this point is not supposed to modify any of BGP route's attributes (anything in bgp_info for that matter). To achieve that, creating a copy of the bgp_attr was inevitable. Implementation tries to keep the memory footprint low, code comments do point out the rationale behind a few choices made. bgp_zebra_announce() was already a big routine, adding this feature would extend it further. Patch has created a few smaller routines/macros whereever possible to keep the size of the routine in check without compromising on the readability of the code/flow inside this routine. For updating a partially filtered route (with its nexthops), BGP to Zebra replacement semantic of the next-hops serves the purpose well. However, with this patch there could be some redundant withdraws each time BGP announces a route thats (all the nexthops) gets denied by the route-map application. Handling of this case could be optimized by keeping state with the prefix and the nexthops in BGP. The patch doesn't optimizing that case, as even with the redundant withdraws the total number of updates to zebra are still be capped by the total number of routes in the table. Signed-off-by: Vipin Kumar <vipin@cumulusnetworks.com> Reviewed-by: Pradosh Mohapatra <pmohapat@cumulusnetworks.com>
* nexthop-tracking.patchDonald Sharp2015-05-201-0/+326
| | | | | | | | | | quagga: nexthop-tracking.patch Add next hop tracking support to Quagga. Complete documentation in doc/next-hop-tracking.txt. Signed-off-by: Pradosh Mohapatra <pmohapat@cumulusnetworks.com> Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Signed-off-by: Dinesh Dutt <ddutt@cumulusnetworks.com>
* bgpd: bgpd-update-delay.patchDonald Sharp2015-05-201-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | COMMAND: 'update-delay <max-delay in seconds> [<establish-wait in seconds>]' DESCRIPTION: This feature is used to enable read-only mode on BGP process restart or when BGP process is cleared using 'clear ip bgp *'. When applicable, read-only mode would begin as soon as the first peer reaches Established state and a timer for <max-delay> seconds is started. During this mode BGP doesn't run any best-path or generate any updates to its peers. This mode continues until: 1. All the configured peers, except the shutdown peers, have sent explicit EOR (End-Of-RIB) or an implicit-EOR. The first keep-alive after BGP has reached Established is considered an implicit-EOR. If the <establish-wait> optional value is given, then BGP will wait for peers to reach establish from the begining of the update-delay till the establish-wait period is over, i.e. the minimum set of established peers for which EOR is expected would be peers established during the establish-wait window, not necessarily all the configured neighbors. 2. max-delay period is over. On hitting any of the above two conditions, BGP resumes the decision process and generates updates to its peers. Default <max-delay> is 0, i.e. the feature is off by default. This feature can be useful in reducing CPU/network used as BGP restarts/clears. Particularly useful in the topologies where BGP learns a prefix from many peers. Intermediate bestpaths are possible for the same prefix as peers get established and start receiving updates at different times. This feature should offer a value-add if the network has a high number of such prefixes. IMPLEMENTATION OBJECTIVES: Given this is an optional feature, minimized the code-churn. Used existing constructs wherever possible (existing queue-plug/unplug were used to achieve delay and resume of best-paths/update-generation). As a result, no new data-structure(s) had to be defined and allocated. When the feature is disabled, the new node is not exercised for the most part. Signed-off-by: Vipin Kumar <vipin@cumulusnetworks.com> Reviewed-by: Pradosh Mohapatra <pmohapat@cumulusnetworks.com> Dinesh Dutt <ddutt@cumulusnetworks.com>
* bgpd: implement "next-hop-self all"Timo Teräs2014-06-251-3/+5
| | | | | | | | | | | | | As specified in: http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/iproute_bgp/command/irg-cr-book/bgp-m1.html#wp4972925610 This allows overriding next-hop for ibgp learned routes on an RR for reflected routes. Especially useful for using iBGP in DMVPN setups. See: http://blog.ipspace.net/2014/04/changes-in-ibgp-next-hop-processing.html Signed-off-by: Timo Teräs <timo.teras@iki.fi>
* *: nuke ^L (page feed)David Lamparter2014-06-041-4/+4
| | | | | | | | | | | | | | Quagga sources have inherited a slew of Page Feed (^L, \xC) characters from ancient history. Among other things, these break patchwork's XML-RPC API because \xC is not a valid character in XML documents. Nuke them from high orbit. Patches can be adapted simply by: sed -e 's%^L%%' -i filename.patch (you can type page feeds in some environments with Ctrl-V Ctrl-L) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* ripd: fix "show ip rip status" documentationJoachim Nilsson2014-06-031-2/+2
| | | | | | | The command was mis-named in the documentation as "show ip protocols". Signed-off-by: Joachim Nilsson <troglobit@gmail.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* bgpd: support TTL-security with iBGPPradosh Mohapatra2014-05-191-0/+8
| | | | | | | | | | | | | | | | | | Traditionally, ttl-security feature has been associated with EBGP sessions as those identify directly connected external peers. The GTSM RFC (rfc 5082) does not make any restrictions on type of peering. In fact, it is beneficial to support ttl-security for both EBGP and IBGP sessions. Specifically, in data centers, there are directly connected IBGP peerings that will benefit from the protection ttl-security provides. Signed-off-by: Dinesh G Dutt <ddutt@cumulusnetworks.com> Reviewed-by: Pradosh Mohapatra <pmohapat@cumulusnetworks.com> [DL: function refactoring split out into previous 2 patches. changes: - bgp_set_socket_ttl(): ret type int -> void - is_ebgp_multihop_configured(): stripped peer == NULL check - comments/whitespace] Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* bgpd: add 'bgp bestpath as-path multipath-relax'Pradosh Mohapatra2014-05-151-0/+6
| | | | | | | | | | Compute multipath in BGP based on AS_PATH hop count match. If the knob is turned on, it is not required to have an exact match of AS_PATHs (provided other multipath conditions are met, of course). Signed-off-by: Pradosh Mohapatra <pmohapat at cumulusnetworks.com> Reviewed-by: Dinesh G Dutt <ddutt at cumulusnetworks.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* build: remove now-useless --{en, dis}able-testsDavid Lamparter2014-04-011-6/+0
| | | | | | | | | | | | | commit d771020 "don't build tests unless make check is run" has made the --{en,dis}able-tests switch completely useless. The differentiation is now made by running "make check" or not doing so. The only effect of the switch is an "empty" excursion of make into the tests/ directory. (well, and it turns "make check" useless from the main directory if --disable-tests is given, which I don't think makes sense either) Acked-by: Greg Troxel <gdt@ir.bbn.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>