summaryrefslogtreecommitdiffstats
path: root/yang (follow)
Commit message (Collapse)AuthorAgeFilesLines
* yang: Fix the ipv6 multicast pattern in frr-route-typesMobashshera Rasool2022-03-081-3/+1
| | | | | | | | The pattern defined for ipv6-multicast-group-prefix is wrong. This is leading to mismatch for all the valid ipv6 multicast addresses. Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
* bgpd: evpn route-map match esr type-4 route-typeChirag Shah2022-02-171-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Testing: After fix: bharat(config-route-map)# match evpn route-type 1 EAD (Type-1) route 2 MAC-IP (Type-2) route 3 Multicast (Type-3) route 4 Ethernet Segment (Type-4) route <---- 5 Prefix (Type-5) route ead EAD (Type-1) route es Ethernet Segment (Type-4) route macip MAC-IP (Type-2) route multicast Multicast (Type-3) route prefix Prefix (Type-5) route bharat(config-route-map)# match evpn route-type 4 bharat(config-route-map)# do show running-config Building configuration... ... ! route-map ALLOW_EVPN_R permit 10 match evpn route-type es <---- exit BGP: route-map: ALLOW_EVPN_R Invoked: 0 Optimization: enabled Processed Change: false permit, sequence 10 Invoked 0 Match clauses: evpn route-type es <----- Set clauses: Call clause: Action: Exit routemap Signed-off-by: Chirag Shah <chirag@nvidia.com>
* bgpd: evpn route-map match ead type-1 route-typeChirag Shah2022-02-171-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add evpn mh route type-1 (EAD) to match clause of route-map. Ticket: issue#10461 Reviewed By: Testing Done: With fix: vtep1(config-route-map)# match evpn route-type 1 EAD (Type-1) route 2 MAC-IP (Type-2) route 3 Multicast (Type-3) route 5 Prefix (Type-5) route ead EAD (Type-1) route macip MAC-IP (Type-2) route multicast Multicast (Type-3) route prefix Prefix (Type-5) route vtep1# show running-config bgpd .... route-map HOST_ALLOW_1 permit 1 match evpn route-type ead vtep1# show route-map HOST_ALLOW_1 BGP: route-map: HOST_ALLOW_1 Invoked: 6 Optimization: disabled Processed Change: false permit, sequence 1 Invoked 6 Match clauses: ip address prefix-list LOCAL_HOST_VRF1 evpn route-type ead Signed-off-by: Chirag Shah <chirag@nvidia.com>
* yang: Fix spelling mistakeDonald Sharp2022-02-141-1/+1
| | | | Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* bfdd,yang: optimize nb with YANGanlan_cs2022-01-251-4/+12
| | | | | | | | | A few optimizations for bfd NB: - Remove unuseful checks for parameters with the same values - Replace checking values of bfd parameters with YANG's "range" - Append "required-echo-receive-interval" with 0 for it can be disabled Signed-off-by: anlan_cs <vic.lan@pica8.com>
* yang: fix "minimum-ttl" missing default valueanlan_cs2022-01-241-3/+4
| | | | | | | | | | Just like other parameters of bfd, "minimum-ttl" should also have a default value. Parameters with default value will not be displayed in running configuration. Additionly adjust the other "range" with double quotation marks. Signed-off-by: anlan_cs <vic.lan@pica8.com>
* Merge pull request #9938 from Orange-OpenSource/isis_lsRuss White2022-01-181-0/+11
|\ | | | | isisd: Add Link State Traffic Engineering support
| * isisd: Add Link State Traffic Engineering supportOlivier Dugeon2021-11-301-0/+6
| | | | | | | | | | | | | | | | | | | | | | Add Link State TED features to isis_te.c and new CLI to export LS TED and show LS TED to IS-IS. IS-IS LSPs are parse each time a new LSP event occurs in order to update accordingly the Link State Traffic Engineering Database. LS TED could be exported through the ZAPI Opaque message (see sharpd as example). Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
| * isisd: Add support for RFC6119 (IPv6 TE in IS-IS)Olivier Dugeon2021-11-301-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add advertisement of Global IPv6 address in IIH pdu - Add new CLI to set IPv6 Router ID - Add advertisement of IPv6 Router ID - Correctly advertise IPv6 local and neighbor addresses in Extended IS and MT Reachability TLVs - Correct output of Neighbor IPv6 address in 'show isis database detail' - Manage IPv6 addresses advertisement and corresponiding Adjacency SID when IS-IS is not using Multi-Topology by introducing a new ISIS_MT_DISABLE value for mtid (== 4096 i.e. first reserved flag set to 1) Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
* | pim: Keeping list of address-family under gmp containersarita patra2022-01-172-24/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Renamed frr-igmp.yang to frr-gmp.yang, igmp to gmp container. to support IGMP and MLD protocol. frr-gmp.yang, created a list of address family under mgmd container. For PIMV4 the key is IPV4, where as for PIMV6 the key is IPV6. This is done for PIMV6 development. This commit will have all the northbound changes to support IPV4 address family. Signed-off-by: sarita patra <saritap@vmware.com>
* | pim: Northbound changes accomodating IPV4 address familysarita patra2022-01-131-77/+76
| | | | | | | | | | | | | | | | | | | | | | frr-pim.yang, created a list of address family under pim container. For PIMV4 the key is IPV4, where as for PIMV6 the key is IPV6. This is done for PIMV6 development. This commit will have all the northbound changes to support IPV4 address family. Signed-off-by: sarita patra <saritap@vmware.com>
* | Merge pull request #10110 from idryzhov/if-yang-remove-vrfRuss White2021-12-022-19/+4
|\ \ | |/ |/| lib, yang: remove vrf from the interface list key
| * lib, yang: remove vrf from the interface list keyIgor Ryzhov2021-11-232-19/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is needed for the following two reasons: 1. To be able to remove the northbound HACK in if_update_to_new_vrf. It is totally wrong to rewrite the configuration datastore when some operational state changes. It is a hard blocker for storing a configuration data in a management daemon which knows nothing about the operational state. 2. To allow changing the VRF of the interface using FRR CLI or any other frontend in the future. If the VRF is a part of the key, it can't be changed. If the VRF is a simple leaf, it becomes possible to change it and thus move the interface between VRFs. For now I mark the leaf as a "config false" as it's not yet possible to control it from FRR. But we can't simply remove the VRF from the key, because it is needed to distinguish interfaces when using netns based VRFs, as it is possible to have multiple interfaces with the same name in different namespaces. To handle this, I came up with an idea to store both VRF and an interface name in the "name" leaf using the pattern "vrfname:ifname". For example, if there's an interface "eth0" in VRF "red" then its "name" leaf will be "red:eth0". Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* | Merge pull request #9798 from abuibrahim/masterQuentin Young2021-11-308-5/+51
|\ \ | | | | | | fix broken northbound confd
| * | yang: fix frr-routing prefixRuslan Babayev2021-11-121-1/+1
| | | | | | | | | | | | Signed-off-by: Ruslan Babayev <ruslan@babayev.com>
| * | yang, ospfd: build frr-ospfd.yang when ospfd is enabledRuslan Babayev2021-11-121-0/+4
| | | | | | | | | | | | Signed-off-by: Ruslan Babayev <ruslan@babayev.com>
| * | yang, bgpd: add missing includesRuslan Babayev2021-11-124-0/+12
| | | | | | | | | | | | Signed-off-by: Ruslan Babayev <ruslan@babayev.com>
| * | yang, ripd, ripngd: fix annotate statementsRuslan Babayev2021-11-122-4/+8
| | | | | | | | | | | | | | | | | | Add missing annotate-statement for the 'instance' list. Signed-off-by: Ruslan Babayev <ruslan@babayev.com>
| * | yang: confd: compile yang modules to fxsRuslan Babayev2021-11-121-0/+26
| |/ | | | | | | Signed-off-by: Ruslan Babayev <ruslan@babayev.com>
* | bgpd: Add an ability to match ipv6 next-hop by prefix-listDonatas Abraitis2021-11-241-0/+7
| | | | | | | | Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
* | bgpd: Add an ability to match ipv6 next-hop by access-listDonatas Abraitis2021-11-231-0/+7
|/ | | | Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
* yang: replace an empty pattern with a zero-length restrictionIgor Ryzhov2021-10-051-1/+1
| | | | | | | No functional difference, but `length "0"` is more comprehensible. Suggested-by: Christian Hopps <chopps@labn.net> Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* Merge pull request #9439 from ton31337/feature/set_ext_community_to_noneRuss White2021-09-011-0/+16
|\ | | | | bgpd: Route-map `set extcommunity none`
| * bgpd: Add an ability to set extcommunity to none in route-mapsDonatas Abraitis2021-08-181-0/+16
| | | | | | | | Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
* | pimd: change ranges to 1..max, type align with IETF YANG.Christian Hopps2021-08-192-28/+28
|/ | | | | | | | | | | | | While defaults are good picks for "reasonable" guesses, min and max range values really aren't. Operators and experimenters often like to configure "unreasonable" values to stress test, tests boundary conditions and explore innovations. With that in mind, change all ranges to 1..max (of type). While we're here add optional ignored values in the "no" CLI forms. Signed-off-by: Christian Hopps <chopps@labn.net>
* yang: mark a couple of prefix-list/access-list leafs as mandatoryIgor Ryzhov2021-08-101-1/+5
| | | | | | | | | | | | | The code assumes that these leafs always exist when their complementary leafs exist. For example, when processing `ipv4-exact-match`, the code always expects to have access to `ipv4-prefix`. If those leafs are not provided, code crashes. It doesn't happen when using the CLI because it always does the right thing, but it can happen when using other frontends. Also fix incorrect description for prefix-list sequence leaf. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* pimd: Allow join prune intervals to be as small as 5 secondsDonald Sharp2021-07-261-1/+1
| | | | | | | | | | Allow the join-prune interval to be as small as 5 seconds instead of limiting the value to 60. This can and will come at a price of being able to converge less mroutes. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* Merge pull request #8983 from mobash-rasool/pim-upstreaming-activityDonald Sharp2021-07-221-2/+2
|\ | | | | pimd: Minor fixes for BSM Show CLI and Hold Timer CLI
| * pimd: make pim interface hold interval range 1-630github login name2021-07-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Making the interface holdtime range to 3.5 times the hello-time As per 7761, Section 4.11: The Holdtime in a Hello message should be set to (3.5 * Hello_Period), giving a default value of 105 seconds. Therefore providing the user also to configure max upto 3.5 times the hello timer interval. Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
* | bgpd: Add route-map `match alias` commandDonatas Abraitis2021-07-211-1/+14
|/ | | | | | | Will be handy to filter BGP prefixes by using BGP community alias instead of numerical community values. Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
* yang: add MSDP timer configurationRafael Zalamena2021-07-011-0/+49
| | | | | | Allow users to configure global MSDP timers. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
* yang: simplify MSDP peer handlingRafael Zalamena2021-06-251-0/+1
| | | | | | | | Make the source address mandatory since it doesn't work without it. The CLI already mandated it before so it makes sense to change this here as well. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
* Merge pull request #6695 from adharkar/frr-master-gateway_ipPatrick Ruddy2021-06-231-0/+32
|\ | | | | EVPN route type-5 gateway IP overlay Index
| * bgpd: Add "set evpn gateway-ip" clause for route-mapAmeya Dharkar2021-06-081-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add following set clause for route-maps "set evpn gateway-ip <ipv4|ipv6 >A.B.C.D|X:X::X:X" - When this route-map is applied as outboubd policy in BGP, it will set the gateway-ip in BGP attribute For EVPN type-5 routes. Example configuration: route-map RMAP-EVPN_GWIP permit 5 set evpn gateway-ip ipv4 50.0.2.12 set evpn gateway-ip ipv6 50:0:2::12 router bgp 101 bgp router-id 10.100.0.1 neighbor 10.0.1.2 remote-as 102 ! address-family l2vpn evpn neighbor 10.0.1.2 activate neighbor 10.0.1.2 route-map RMAP-EVPN_GWIP out advertise-all-vni exit-address-family Signed-off-by: Ameya Dharkar <adharkar@vmware.com>
* | yang: rework PIM MSDP mesh groupRafael Zalamena2021-06-091-12/+22
|/ | | | | | | Allow PIM MSDP configuration to support multiple MSDP mesh groups per PIM instance. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
* bfdd: forbid setting interface for multihop sessionsIgor Ryzhov2021-06-011-6/+1
| | | | Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* bgpd: fix default for extended-nexthop-capabilityChristian Hopps2021-05-233-2/+10
| | | | | | | | | The default for extended-nexthop-capability is true for unnumbered (interface) neighbors, false for other types. Break the inner grouping out of the outer neighbor-parameters grouping so that we can refine the default in that uses case. Signed-off-by: Christian Hopps <chopps@gmail.com>
* yang: fix BGP multicast prefix typeRafael Zalamena2021-05-211-10/+10
| | | | | | | Fix many of the commands in the `address-family ipv4 multicast` to use the proper type to avoid wrong YANG model validation failures. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
* yang: move multicast prefix type definitionRafael Zalamena2021-05-212-36/+40
| | | | | | | Move the multicast prefix type to a common YANG model so other models can use it. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
* bgpd, yang: fix replace-as yang leafIgor Ryzhov2021-05-141-1/+1
| | | | | | | The leaf is called "no-replace-as" in the model but is used reversed in all the code. Let's rename it to comply with the actual behavior. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* lib: adapt to version 2 of libyangChristian Hopps2021-05-1315-103/+107
| | | | | | | | | Compile with v2.0.0 tag of `libyang2` branch of: https://github.com/CESNET/libyang staticd init load time of 10k routes now 6s vs ly1 time of 150s Signed-off-by: Christian Hopps <chopps@labn.net>
* pathd. TED support . Validation of candidate path - [part 2/4]Javier Garcia2021-05-101-42/+67
| | | | | | | | | | | | | | - Explicit segment list nai will be resolved to corresponded sid. - Dynamic segment list (from pce) will be validated. - If segment list could not be resolved or validated won't be used. - Now this new config is supported segment-list sl-1 index 10 nai prefix 10.1.2.1/32 iface 1 index 30 nai adjacency 10.2.5.2 10.2.5.5 index 40 nai prefix 10.10.10.5/32 algorithm 0 Signed-off-by: Javier Garcia <javier.garcia@voltanet.io>
* isisd: link protection optional fallback in ti-lfaFredi Raspall2021-05-031-0/+7
| | | | | | | | | | | | | | | | The current implementation of TI-LFA computes link-protecting repair paths (even when node protection is enabled) to have repair paths to all destinations when no node-protecting repair has been found. This may be desired or not. E.g. the link-protecting paths may use the protected node and be, therefore, useless if the node fails. Also, computing link-protecting repairs incurs extra calculations. With this patch, when node protection is enabled, link protecting repair paths are only computed if "link-fallback" is specified in the configuration, on a per interface and IS-IS level. Signed-off-by: Fredi Raspall <fredi@voltanet.io>
* isisd, yang: remove vrf leaf from isis interface nodeIgor Ryzhov2021-04-291-7/+0
| | | | | | | This is very confusing and incorrect. We can and should use vrf leaf of the interface itself instead. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* isisd: fix ldp-sync configurationIgor Ryzhov2021-04-291-4/+4
| | | | | | | | | | | YANG model and CLI commands allow user to configure LDP-sync per area. But the actual implementation is incorrect - all commands are changing the config for the whole VRF instead of a single area. This commit fixes this issue by actually implementing per area configuration. Fixes #8578. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* yang: add PIM BFD profile supportRafael Zalamena2021-04-231-0/+6
| | | | | | Allow users to configure BFD profile for the peers in a interface. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
* Merge pull request #8389 from idryzhov/route-map-optimization-nbRenato Westphal2021-04-131-0/+5
|\ | | | | lib: convert route-map optimization to NB
| * lib: convert route-map optimization to NBIgor Ryzhov2021-04-061-0/+5
| | | | | | | | Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* | Merge pull request #8348 from chiragshah6/mdevIgor Ryzhov2021-04-051-0/+4
|\ \ | | | | | | yang, bgpd: add northbound transactional callbacks for neighbor route-map for af l2vpn-evpn
| * | yang: add policy support for l2vpn-evpn nbr treeChirag Shah2021-03-261-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add bgp routing policy support for unnumbered and peer-group. For numbered peer the policy support is already present. +--rw bgp! +--rw neighbors | +--rw unnumbered-neighbor* [interface] | +--rw afi-safis | +--rw afi-safi* [afi-safi-name] +--rw l2vpn-evpn | | | +--rw filter-config | | | +--rw rmap-import? frr-route-map:route-map-ref | | | +--rw rmap-export? frr-route-map:route-map-ref | | | +--rw plist-import? frr-bgp-types:plist-ref | | | +--rw plist-export? frr-bgp-types:plist-ref | | | +--rw access-list-import? frr-bgp-types:access-list-ref | | | +--rw access-list-export? frr-bgp-types:access-list-ref | | | +--rw as-path-filter-list-import? frr-bgp-types:as-path-filter-ref | | | +--rw as-path-filter-list-export? frr-bgp-types:as-path-filter-ref | | | +--rw unsuppress-map-import? frr-route-map:route-map-ref | | | +--rw unsuppress-map-export? frr-route-map:route-map-ref ... +--rw peer-groups +--rw peer-group* [peer-group-name] | +--rw afi-safis | +--rw afi-safi* [afi-safi-name] +--rw l2vpn-evpn | | | +--rw filter-config | | | +--rw rmap-import? frr-route-map:route-map-ref | | | +--rw rmap-export? frr-route-map:route-map-ref | | | +--rw plist-import? frr-bgp-types:plist-ref | | | +--rw plist-export? frr-bgp-types:plist-ref | | | +--rw access-list-import? frr-bgp-types:access-list-ref | | | +--rw access-list-export? frr-bgp-types:access-list-ref | | | +--rw as-path-filter-list-import? frr-bgp-types:as-path-filter-ref | | | +--rw as-path-filter-list-export? frr-bgp-types:as-path-filter-ref | | | +--rw unsuppress-map-import? frr-route-map:route-map-ref | | | +--rw unsuppress-map-export? frr-route-map:route-map-ref ... Signed-off-by: Chirag Shah <chirag@nvidia.com>