]> git.proxmox.com Git - mirror_frr.git/blob - yang/frr-bgp.yang
doc: Add `show ipv6 rpf X:X::X:X` command to docs
[mirror_frr.git] / yang / frr-bgp.yang
1 module frr-bgp {
2 yang-version 1.1;
3 namespace "http://frrouting.org/yang/bgp";
4 prefix frr-bgp;
5
6 import frr-routing {
7 prefix frr-rt;
8 }
9
10 import ietf-inet-types {
11 prefix inet;
12 }
13
14 import frr-interface {
15 prefix frr-interface;
16 }
17
18 import frr-bgp-types {
19 prefix frr-bt;
20 }
21
22 import frr-route-types {
23 prefix frr-route-types;
24 }
25
26 include "frr-bgp-common";
27
28 include "frr-bgp-common-structure";
29
30 include "frr-bgp-common-multiprotocol";
31
32 include "frr-bgp-neighbor";
33
34 include "frr-bgp-peer-group";
35
36 include "frr-bgp-bmp";
37
38 organization
39 "FRRouting";
40 contact
41 "FRR Users List: <mailto:frog@lists.frrouting.org> FRR Development
42 List: <mailto:dev@lists.frrouting.org>";
43 description
44 "This module defines a model for managing FRR bgpd daemon.
45
46 Copyright 2020 FRRouting
47
48 Redistribution and use in source and binary forms, with or without
49 modification, are permitted provided that the following conditions
50 are met:
51
52 1. Redistributions of source code must retain the above copyright notice,
53 this list of conditions and the following disclaimer.
54
55 2. Redistributions in binary form must reproduce the above copyright
56 notice, this list of conditions and the following disclaimer in the
57 documentation and/or other materials provided with the distribution.
58
59 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
60 \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
61 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
62 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
63 HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
64 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
65 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
66 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
67 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
68 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
69 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.";
70
71 revision 2019-12-03 {
72 description
73 "Initial revision.";
74 }
75
76 identity bgp {
77 base frr-rt:routing-protocol;
78 description
79 "BGP protocol.";
80 }
81
82 grouping mp-afi-unicast-common {
83 uses global-group-use-multiple-paths;
84
85 uses global-redistribute;
86
87 uses admin-distance;
88 }
89
90 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol" {
91 container bgp {
92 when "../frr-rt:type = 'frr-bgp:bgp'" {
93 description
94 "BGP protocol augmentation of ietf-routing module
95 control-plane-protocol.";
96 }
97 presence "Enables configuration of BGP";
98 description
99 "Top-level configuration for the BGP router.";
100 container global {
101 description
102 "Global configuration for the BGP router.";
103 leaf local-as {
104 type inet:as-number;
105 mandatory true;
106 description
107 "Local autonomous system number of the router. Uses
108 the 32-bit as-number type from the model in RFC 6991.";
109 }
110
111 uses frr-rt:router-id;
112
113 container confederation {
114 description
115 "Configuration options specifying parameters when the
116 local router is within an autonomous system which is
117 part of a BGP confederation.";
118 leaf identifier {
119 type inet:as-number;
120 description
121 "Confederation identifier for the autonomous system.";
122 }
123
124 leaf-list member-as {
125 type inet:as-number;
126 description
127 "Remote autonomous systems that are to be treated
128 as part of the local confederation.";
129 }
130 }
131
132 uses med-config;
133
134 uses route-reflector-config;
135
136 uses route-selection-options;
137
138 uses global-neighbor-config;
139
140 container graceful-restart {
141 description
142 "Parameters relating the graceful restart mechanism for
143 BGP.";
144 uses graceful-restart-config;
145 }
146
147 uses global-update-group-config;
148
149 uses global-config-timers;
150
151 uses global-bgp-config;
152
153 uses global-network-config;
154
155 uses global-graceful-shutdown;
156
157 uses global-bmp-config;
158
159 container afi-safis {
160 description
161 "List of address-families associated with the BGP
162 instance.";
163 list afi-safi {
164 key "afi-safi-name";
165 description
166 "AFI, SAFI configuration available for the
167 neighbour or group.";
168 uses mp-afi-safi-config;
169
170 uses mp-all-afi-safi-list-contents;
171 }
172 }
173 }
174
175 container neighbors {
176 description
177 "Configuration for BGP neighbors.";
178 list neighbor {
179 key "remote-address";
180 description
181 "List of BGP neighbors configured on the local system,
182 uniquely identified by remote IPv[46] address.";
183 leaf remote-address {
184 type inet:ip-address;
185 description
186 "The remote IP address of this entry's BGP peer.";
187 }
188
189 leaf local-interface {
190 type frr-interface:interface-ref {
191 require-instance false;
192 }
193 description
194 "Neighbor's interface name.";
195 }
196
197 leaf local-port {
198 type inet:port-number {
199 range "0..65535";
200 }
201 description
202 "Neighbor's BGP TCP port number.";
203 }
204
205 leaf peer-group {
206 type leafref {
207 path "../../../peer-groups/peer-group/peer-group-name";
208 }
209 description
210 "The peer-group with which this neighbor is associated.";
211 }
212
213 container neighbor-remote-as {
214 leaf remote-as-type {
215 type frr-bt:as-type;
216 mandatory true;
217 description
218 "Remote AS type.";
219 }
220
221 leaf remote-as {
222 when "../remote-as-type = 'as-specified'";
223 type inet:as-number;
224 description
225 "The remote autonomous system number received in
226 the BGP OPEN message.";
227 reference
228 "RFC 4271";
229 }
230 }
231
232 uses neighbor-parameters;
233
234 uses structure-neighbor-group-capability-options;
235 }
236
237 list unnumbered-neighbor {
238 key "interface";
239 description
240 "List of BGP neighbors configured on the local system,
241 uniquely identified by interfaces.";
242 leaf interface {
243 type frr-interface:interface-ref {
244 require-instance false;
245 }
246 description
247 "The local interface of this entry's BGP peer.";
248 }
249
250 leaf v6only {
251 type boolean;
252 default "false";
253 description
254 "When set to 'true' it will create a neighbor with v6
255 link local only.";
256 }
257
258 leaf peer-group {
259 type leafref {
260 path "../../../peer-groups/peer-group/peer-group-name";
261 }
262 description
263 "The peer-group with which this neighbor is associated.";
264 }
265
266 uses neighbor-remote-as;
267
268 uses neighbor-parameters;
269
270 uses structure-neighbor-group-capability-options {
271 refine "frr-bgp:capability-options/extended-nexthop-capability" {
272 default "true";
273 }
274 }
275 }
276 }
277
278 container peer-groups {
279 description
280 "Configuration for BGP peer-groups.";
281 uses bgp-peer-group-list;
282 }
283 }
284 }
285
286 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/afi-safis/afi-safi/ipv4-unicast" {
287 list network-config {
288 key "prefix";
289 description
290 "A list of network routes.";
291 leaf prefix {
292 type inet:ipv4-prefix;
293 description
294 "IPv4 destination prefix.";
295 }
296
297 leaf backdoor {
298 type boolean;
299 default "false";
300 description
301 "Specify a BGP backdoor route.";
302 }
303
304 uses mp-afi-safi-network-config;
305 }
306
307 list aggregate-route {
308 key "prefix";
309 description
310 "A list of aggregated routes.";
311 leaf prefix {
312 type inet:ipv4-prefix;
313 description
314 "IPv4 destination prefix.";
315 }
316
317 uses mp-afi-safi-agg-route-config;
318 }
319
320 list admin-distance-route {
321 key "prefix";
322 description
323 "A list of routes with a particular admin distance.";
324 leaf prefix {
325 type inet:ipv4-prefix;
326 description
327 "IPv4 destination prefix.";
328 }
329
330 uses distance-per-route-config;
331 }
332
333 uses route-flap-dampening;
334
335 uses mp-afi-unicast-common;
336
337 uses global-filter-config;
338
339 uses global-afi-safi-vpn-config;
340 }
341
342 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/afi-safis/afi-safi/ipv6-unicast" {
343 list network-config {
344 key "prefix";
345 description
346 "A list of network routes.";
347 leaf prefix {
348 type inet:ipv6-prefix;
349 description
350 "IPv6 destination prefix.";
351 }
352
353 leaf backdoor {
354 type boolean;
355 default "false";
356 description
357 "Specify a BGP backdoor route.";
358 }
359
360 uses mp-afi-safi-network-config;
361 }
362
363 list aggregate-route {
364 key "prefix";
365 description
366 "A list of aggregated routes.";
367 leaf prefix {
368 type inet:ipv6-prefix;
369 description
370 "IPv6 destination prefix.";
371 }
372
373 uses mp-afi-safi-agg-route-config;
374 }
375
376 list admin-distance-route {
377 key "prefix";
378 description
379 "A list of routes with a particular admin distance.";
380 leaf prefix {
381 type inet:ipv6-prefix;
382 description
383 "IPv6 destination prefix.";
384 }
385
386 uses distance-per-route-config;
387 }
388
389 uses route-flap-dampening;
390
391 uses mp-afi-unicast-common;
392
393 uses global-filter-config;
394
395 uses global-afi-safi-vpn-config;
396 }
397
398 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/afi-safis/afi-safi/ipv4-labeled-unicast" {
399 uses global-group-use-multiple-paths;
400
401 uses route-flap-dampening;
402 }
403
404 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/afi-safis/afi-safi/ipv6-labeled-unicast" {
405 uses global-group-use-multiple-paths;
406
407 uses route-flap-dampening;
408 }
409
410 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/afi-safis/afi-safi/ipv4-multicast" {
411 list network-config {
412 key "prefix";
413 description
414 "A list of network routes.";
415 leaf prefix {
416 type frr-route-types:ipv4-multicast-group-prefix;
417 description
418 "IPv4 multicast destination prefix.";
419 }
420
421 leaf backdoor {
422 type boolean;
423 default "false";
424 description
425 "Specify a BGP backdoor route.";
426 }
427
428 uses mp-afi-safi-network-config;
429 }
430
431 list aggregate-route {
432 key "prefix";
433 description
434 "A list of aggregated routes.";
435 leaf prefix {
436 type frr-route-types:ipv4-multicast-group-prefix;
437 description
438 "IPv4 multicast destination prefix.";
439 }
440
441 uses mp-afi-safi-agg-route-config;
442 }
443
444 list admin-distance-route {
445 key "prefix";
446 description
447 "A list of routes with a particular admin distance.";
448 leaf prefix {
449 type frr-route-types:ipv4-multicast-group-prefix;
450 description
451 "IPv4 multicast destination prefix.";
452 }
453
454 uses distance-per-route-config;
455 }
456
457 uses admin-distance;
458
459 uses route-flap-dampening;
460
461 uses global-filter-config;
462 }
463
464 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/afi-safis/afi-safi/ipv6-multicast" {
465 list network-config {
466 key "prefix";
467 description
468 "A list of network routes.";
469 leaf prefix {
470 type frr-route-types:ipv6-multicast-group-prefix;
471 description
472 "IPv6 multicast destination prefix.";
473 }
474
475 leaf backdoor {
476 type boolean;
477 default "false";
478 description
479 "Specify a BGP backdoor route.";
480 }
481
482 uses mp-afi-safi-network-config;
483 }
484
485 list aggregate-route {
486 key "prefix";
487 description
488 "A list of aggregated routes.";
489 leaf prefix {
490 type frr-route-types:ipv6-multicast-group-prefix;
491 description
492 "IPv6 multicast destination prefix.";
493 }
494
495 uses mp-afi-safi-agg-route-config;
496 }
497
498 list admin-distance-route {
499 key "prefix";
500 description
501 "A list of routes with a particular admin distance.";
502 leaf prefix {
503 type frr-route-types:ipv6-multicast-group-prefix;
504 description
505 "IPv6 multicast destination prefix.";
506 }
507
508 uses distance-per-route-config;
509 }
510
511 uses route-flap-dampening;
512
513 uses admin-distance;
514 }
515
516 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/afi-safis/afi-safi/ipv4-flowspec" {
517 uses flow-spec-config;
518 }
519
520 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/afi-safis/afi-safi/l3vpn-ipv4-unicast" {
521 uses global-afi-safi-vpn-network-config;
522 }
523
524 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/afi-safis/afi-safi/l3vpn-ipv6-unicast" {
525 uses global-afi-safi-vpn-network-config;
526 }
527
528 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/bmp-config/target-list/afi-safis/afi-safi/ipv4-unicast" {
529 uses bmp-afi-safi-common-config;
530 }
531
532 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/bmp-config/target-list/afi-safis/afi-safi/ipv4-multicast" {
533 uses bmp-afi-safi-common-config;
534 }
535
536 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/bmp-config/target-list/afi-safis/afi-safi/ipv6-unicast" {
537 uses bmp-afi-safi-common-config;
538 }
539
540 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/global/bmp-config/target-list/afi-safis/afi-safi/ipv6-multicast" {
541 uses bmp-afi-safi-common-config;
542 }
543
544 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/neighbor/afi-safis/afi-safi/ipv4-unicast" {
545 uses structure-neighbor-group-add-paths;
546
547 uses structure-neighbor-group-as-path-options;
548
549 uses structure-neighbor-default-originate-options;
550
551 uses structure-neighbor-prefix-limit;
552
553 uses structure-neighbor-nexthop-self;
554
555 uses structure-neighbor-private-as;
556
557 uses structure-neighbor-weight;
558
559 uses structure-neighbor-route-reflector;
560
561 uses structure-neighbor-route-server;
562
563 uses structure-neighbor-send-community;
564
565 uses structure-neighbor-group-soft-reconfiguration;
566
567 uses structure-neighbor-group-attr-unchanged;
568
569 uses structure-neighbor-group-orf-capability;
570
571 uses structure-neighbor-group-filter-config;
572 }
573
574 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/neighbor/afi-safis/afi-safi/ipv6-unicast" {
575 leaf nexthop-local-unchanged {
576 type boolean;
577 default "false";
578 description
579 "Configure treatment of outgoing link-local nexthop attribute.
580 When set to 'true' it leaves link-local nexthop unchanged
581 for this peer.";
582 }
583
584 uses structure-neighbor-group-add-paths;
585
586 uses structure-neighbor-group-as-path-options;
587
588 uses structure-neighbor-default-originate-options;
589
590 uses structure-neighbor-group-attr-unchanged;
591
592 uses structure-neighbor-group-orf-capability;
593
594 uses structure-neighbor-prefix-limit;
595
596 uses structure-neighbor-nexthop-self;
597
598 uses structure-neighbor-private-as;
599
600 uses structure-neighbor-route-reflector;
601
602 uses structure-neighbor-route-server;
603
604 uses structure-neighbor-send-community;
605
606 uses structure-neighbor-group-soft-reconfiguration;
607
608 uses structure-neighbor-weight;
609
610 uses structure-neighbor-group-filter-config;
611 }
612
613 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/neighbor/afi-safis/afi-safi/ipv4-multicast" {
614 uses structure-neighbor-group-add-paths;
615
616 uses structure-neighbor-group-as-path-options;
617
618 uses structure-neighbor-default-originate-options;
619
620 uses structure-neighbor-group-attr-unchanged;
621
622 uses structure-neighbor-group-orf-capability;
623
624 uses structure-neighbor-prefix-limit;
625
626 uses structure-neighbor-nexthop-self;
627
628 uses structure-neighbor-private-as;
629
630 uses structure-neighbor-route-reflector;
631
632 uses structure-neighbor-route-server;
633
634 uses structure-neighbor-send-community;
635
636 uses structure-neighbor-group-soft-reconfiguration;
637
638 uses structure-neighbor-weight;
639
640 uses structure-neighbor-group-filter-config;
641 }
642
643 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/neighbor/afi-safis/afi-safi/ipv6-multicast" {
644 uses structure-neighbor-group-add-paths;
645
646 uses structure-neighbor-group-as-path-options;
647
648 uses structure-neighbor-default-originate-options;
649
650 uses structure-neighbor-group-attr-unchanged;
651
652 uses structure-neighbor-group-orf-capability;
653
654 uses structure-neighbor-prefix-limit;
655
656 uses structure-neighbor-nexthop-self;
657
658 uses structure-neighbor-private-as;
659
660 uses structure-neighbor-route-reflector;
661
662 uses structure-neighbor-route-server;
663
664 uses structure-neighbor-send-community;
665
666 uses structure-neighbor-group-soft-reconfiguration;
667
668 uses structure-neighbor-weight;
669
670 uses structure-neighbor-group-filter-config;
671 }
672
673 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/neighbor/afi-safis/afi-safi/ipv4-labeled-unicast" {
674 uses structure-neighbor-group-add-paths;
675
676 uses structure-neighbor-group-as-path-options;
677
678 uses structure-neighbor-default-originate-options;
679
680 uses structure-neighbor-group-attr-unchanged;
681
682 uses structure-neighbor-group-orf-capability;
683
684 uses structure-neighbor-prefix-limit;
685
686 uses structure-neighbor-nexthop-self;
687
688 uses structure-neighbor-private-as;
689
690 uses structure-neighbor-route-reflector;
691
692 uses structure-neighbor-route-server;
693
694 uses structure-neighbor-send-community;
695
696 uses structure-neighbor-group-soft-reconfiguration;
697
698 uses structure-neighbor-weight;
699
700 uses structure-neighbor-group-filter-config;
701 }
702
703 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/neighbor/afi-safis/afi-safi/ipv6-labeled-unicast" {
704 uses structure-neighbor-group-add-paths;
705
706 uses structure-neighbor-group-as-path-options;
707
708 uses structure-neighbor-default-originate-options;
709
710 uses structure-neighbor-group-attr-unchanged;
711
712 uses structure-neighbor-group-orf-capability;
713
714 uses structure-neighbor-prefix-limit;
715
716 uses structure-neighbor-nexthop-self;
717
718 uses structure-neighbor-private-as;
719
720 uses structure-neighbor-route-reflector;
721
722 uses structure-neighbor-route-server;
723
724 uses structure-neighbor-send-community;
725
726 uses structure-neighbor-group-soft-reconfiguration;
727
728 uses structure-neighbor-weight;
729
730 uses structure-neighbor-group-filter-config;
731 }
732
733 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/neighbor/afi-safis/afi-safi/l3vpn-ipv4-unicast" {
734 uses structure-neighbor-group-add-paths;
735
736 uses structure-neighbor-group-as-path-options;
737
738 uses structure-neighbor-group-attr-unchanged;
739
740 uses structure-neighbor-prefix-limit;
741
742 uses structure-neighbor-nexthop-self;
743
744 uses structure-neighbor-private-as;
745
746 uses structure-neighbor-route-reflector;
747
748 uses structure-neighbor-route-server;
749
750 uses structure-neighbor-send-community;
751
752 uses structure-neighbor-group-soft-reconfiguration;
753
754 uses structure-neighbor-weight;
755
756 uses structure-neighbor-group-filter-config;
757 }
758
759 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/neighbor/afi-safis/afi-safi/l3vpn-ipv6-unicast" {
760 uses structure-neighbor-group-add-paths;
761
762 uses structure-neighbor-group-as-path-options;
763
764 uses structure-neighbor-group-attr-unchanged;
765
766 uses structure-neighbor-prefix-limit;
767
768 uses structure-neighbor-nexthop-self;
769
770 uses structure-neighbor-private-as;
771
772 uses structure-neighbor-route-reflector;
773
774 uses structure-neighbor-route-server;
775
776 uses structure-neighbor-send-community;
777
778 uses structure-neighbor-group-soft-reconfiguration;
779
780 uses structure-neighbor-weight;
781
782 uses structure-neighbor-group-filter-config;
783 }
784
785 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/neighbor/afi-safis/afi-safi/l2vpn-evpn" {
786 uses structure-neighbor-group-as-path-options;
787
788 uses structure-neighbor-group-attr-unchanged;
789
790 uses structure-neighbor-nexthop-self;
791
792 uses structure-neighbor-route-reflector;
793
794 uses structure-neighbor-route-server;
795
796 uses structure-neighbor-group-soft-reconfiguration;
797
798 uses structure-neighbor-group-filter-config;
799 }
800
801 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/neighbor/afi-safis/afi-safi/ipv4-flowspec" {
802 uses structure-neighbor-route-reflector;
803
804 uses structure-neighbor-route-server;
805
806 uses structure-neighbor-group-soft-reconfiguration;
807
808 uses structure-neighbor-group-filter-config;
809 }
810
811 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/neighbor/afi-safis/afi-safi/ipv6-flowspec" {
812 uses structure-neighbor-route-reflector;
813
814 uses structure-neighbor-route-server;
815
816 uses structure-neighbor-group-soft-reconfiguration;
817
818 uses structure-neighbor-group-filter-config;
819 }
820
821 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-unicast" {
822 uses structure-neighbor-group-add-paths;
823
824 uses structure-neighbor-group-as-path-options;
825
826 uses structure-neighbor-default-originate-options;
827
828 uses structure-neighbor-prefix-limit;
829
830 uses structure-neighbor-nexthop-self;
831
832 uses structure-neighbor-private-as;
833
834 uses structure-neighbor-weight;
835
836 uses structure-neighbor-route-reflector;
837
838 uses structure-neighbor-route-server;
839
840 uses structure-neighbor-send-community;
841
842 uses structure-neighbor-group-soft-reconfiguration;
843
844 uses structure-neighbor-group-attr-unchanged;
845
846 uses structure-neighbor-group-orf-capability;
847
848 uses structure-neighbor-group-filter-config;
849 }
850
851 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv6-unicast" {
852 leaf nexthop-local-unchanged {
853 type boolean;
854 default "false";
855 description
856 "Configure treatment of outgoing link-local nexthop attribute.
857 When set to 'true' it leaves link-local nexthop unchanged
858 for this peer.";
859 }
860
861 uses structure-neighbor-group-add-paths;
862
863 uses structure-neighbor-group-as-path-options;
864
865 uses structure-neighbor-default-originate-options;
866
867 uses structure-neighbor-group-attr-unchanged;
868
869 uses structure-neighbor-group-orf-capability;
870
871 uses structure-neighbor-prefix-limit;
872
873 uses structure-neighbor-nexthop-self;
874
875 uses structure-neighbor-private-as;
876
877 uses structure-neighbor-route-reflector;
878
879 uses structure-neighbor-route-server;
880
881 uses structure-neighbor-send-community;
882
883 uses structure-neighbor-group-soft-reconfiguration;
884
885 uses structure-neighbor-weight;
886
887 uses structure-neighbor-group-filter-config;
888 }
889
890 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-multicast" {
891 uses structure-neighbor-group-add-paths;
892
893 uses structure-neighbor-group-as-path-options;
894
895 uses structure-neighbor-default-originate-options;
896
897 uses structure-neighbor-group-attr-unchanged;
898
899 uses structure-neighbor-group-orf-capability;
900
901 uses structure-neighbor-prefix-limit;
902
903 uses structure-neighbor-nexthop-self;
904
905 uses structure-neighbor-private-as;
906
907 uses structure-neighbor-route-reflector;
908
909 uses structure-neighbor-route-server;
910
911 uses structure-neighbor-send-community;
912
913 uses structure-neighbor-group-soft-reconfiguration;
914
915 uses structure-neighbor-weight;
916
917 uses structure-neighbor-group-filter-config;
918 }
919
920 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv6-multicast" {
921 uses structure-neighbor-group-add-paths;
922
923 uses structure-neighbor-group-as-path-options;
924
925 uses structure-neighbor-default-originate-options;
926
927 uses structure-neighbor-group-attr-unchanged;
928
929 uses structure-neighbor-group-orf-capability;
930
931 uses structure-neighbor-prefix-limit;
932
933 uses structure-neighbor-nexthop-self;
934
935 uses structure-neighbor-private-as;
936
937 uses structure-neighbor-route-reflector;
938
939 uses structure-neighbor-route-server;
940
941 uses structure-neighbor-send-community;
942
943 uses structure-neighbor-group-soft-reconfiguration;
944
945 uses structure-neighbor-weight;
946
947 uses structure-neighbor-group-filter-config;
948 }
949
950 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-labeled-unicast" {
951 uses structure-neighbor-group-add-paths;
952
953 uses structure-neighbor-group-as-path-options;
954
955 uses structure-neighbor-default-originate-options;
956
957 uses structure-neighbor-group-attr-unchanged;
958
959 uses structure-neighbor-group-orf-capability;
960
961 uses structure-neighbor-prefix-limit;
962
963 uses structure-neighbor-nexthop-self;
964
965 uses structure-neighbor-private-as;
966
967 uses structure-neighbor-route-reflector;
968
969 uses structure-neighbor-route-server;
970
971 uses structure-neighbor-send-community;
972
973 uses structure-neighbor-group-soft-reconfiguration;
974
975 uses structure-neighbor-weight;
976
977 uses structure-neighbor-group-filter-config;
978 }
979
980 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv6-labeled-unicast" {
981 uses structure-neighbor-group-add-paths;
982
983 uses structure-neighbor-group-as-path-options;
984
985 uses structure-neighbor-default-originate-options;
986
987 uses structure-neighbor-group-attr-unchanged;
988
989 uses structure-neighbor-group-orf-capability;
990
991 uses structure-neighbor-prefix-limit;
992
993 uses structure-neighbor-nexthop-self;
994
995 uses structure-neighbor-private-as;
996
997 uses structure-neighbor-route-reflector;
998
999 uses structure-neighbor-route-server;
1000
1001 uses structure-neighbor-send-community;
1002
1003 uses structure-neighbor-group-soft-reconfiguration;
1004
1005 uses structure-neighbor-weight;
1006 }
1007
1008 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/l3vpn-ipv4-unicast" {
1009 uses structure-neighbor-group-add-paths;
1010
1011 uses structure-neighbor-group-as-path-options;
1012
1013 uses structure-neighbor-group-attr-unchanged;
1014
1015 uses structure-neighbor-prefix-limit;
1016
1017 uses structure-neighbor-nexthop-self;
1018
1019 uses structure-neighbor-private-as;
1020
1021 uses structure-neighbor-route-reflector;
1022
1023 uses structure-neighbor-route-server;
1024
1025 uses structure-neighbor-send-community;
1026
1027 uses structure-neighbor-group-soft-reconfiguration;
1028
1029 uses structure-neighbor-weight;
1030 }
1031
1032 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/l3vpn-ipv6-unicast" {
1033 uses structure-neighbor-group-add-paths;
1034
1035 uses structure-neighbor-group-as-path-options;
1036
1037 uses structure-neighbor-group-attr-unchanged;
1038
1039 uses structure-neighbor-prefix-limit;
1040
1041 uses structure-neighbor-nexthop-self;
1042
1043 uses structure-neighbor-private-as;
1044
1045 uses structure-neighbor-route-reflector;
1046
1047 uses structure-neighbor-route-server;
1048
1049 uses structure-neighbor-send-community;
1050
1051 uses structure-neighbor-group-soft-reconfiguration;
1052
1053 uses structure-neighbor-weight;
1054 }
1055
1056 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/l2vpn-evpn" {
1057 uses structure-neighbor-group-as-path-options;
1058
1059 uses structure-neighbor-group-attr-unchanged;
1060
1061 uses structure-neighbor-nexthop-self;
1062
1063 uses structure-neighbor-route-reflector;
1064
1065 uses structure-neighbor-route-server;
1066
1067 uses structure-neighbor-group-soft-reconfiguration;
1068
1069 uses structure-neighbor-group-filter-config;
1070 }
1071
1072 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-flowspec" {
1073 uses structure-neighbor-route-reflector;
1074
1075 uses structure-neighbor-route-server;
1076
1077 uses structure-neighbor-group-soft-reconfiguration;
1078
1079 uses structure-neighbor-group-filter-config;
1080 }
1081
1082 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv6-flowspec" {
1083 uses structure-neighbor-route-reflector;
1084
1085 uses structure-neighbor-route-server;
1086
1087 uses structure-neighbor-group-soft-reconfiguration;
1088
1089 uses structure-neighbor-group-filter-config;
1090 }
1091
1092 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv4-unicast" {
1093 uses structure-neighbor-group-add-paths;
1094
1095 uses structure-neighbor-group-as-path-options;
1096
1097 uses structure-neighbor-default-originate-options;
1098
1099 uses structure-neighbor-prefix-limit;
1100
1101 uses structure-neighbor-nexthop-self;
1102
1103 uses structure-neighbor-private-as;
1104
1105 uses structure-neighbor-weight;
1106
1107 uses structure-neighbor-route-reflector;
1108
1109 uses structure-neighbor-route-server;
1110
1111 uses structure-neighbor-send-community;
1112
1113 uses structure-neighbor-group-soft-reconfiguration;
1114
1115 uses structure-neighbor-group-attr-unchanged;
1116
1117 uses structure-neighbor-group-orf-capability;
1118
1119 uses structure-neighbor-group-filter-config;
1120 }
1121
1122 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv6-unicast" {
1123 leaf nexthop-local-unchanged {
1124 type boolean;
1125 default "false";
1126 description
1127 "Configure treatment of outgoing link-local nexthop attribute.
1128 When set to 'true' it leaves link-local nexthop unchanged
1129 for this peer.";
1130 }
1131
1132 uses structure-neighbor-group-add-paths;
1133
1134 uses structure-neighbor-group-as-path-options;
1135
1136 uses structure-neighbor-default-originate-options;
1137
1138 uses structure-neighbor-group-attr-unchanged;
1139
1140 uses structure-neighbor-group-orf-capability;
1141
1142 uses structure-neighbor-prefix-limit;
1143
1144 uses structure-neighbor-nexthop-self;
1145
1146 uses structure-neighbor-private-as;
1147
1148 uses structure-neighbor-route-reflector;
1149
1150 uses structure-neighbor-route-server;
1151
1152 uses structure-neighbor-send-community;
1153
1154 uses structure-neighbor-group-soft-reconfiguration;
1155
1156 uses structure-neighbor-weight;
1157
1158 uses structure-neighbor-group-filter-config;
1159 }
1160
1161 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv4-multicast" {
1162 uses structure-neighbor-group-add-paths;
1163
1164 uses structure-neighbor-group-as-path-options;
1165
1166 uses structure-neighbor-default-originate-options;
1167
1168 uses structure-neighbor-group-attr-unchanged;
1169
1170 uses structure-neighbor-group-orf-capability;
1171
1172 uses structure-neighbor-prefix-limit;
1173
1174 uses structure-neighbor-nexthop-self;
1175
1176 uses structure-neighbor-private-as;
1177
1178 uses structure-neighbor-route-reflector;
1179
1180 uses structure-neighbor-route-server;
1181
1182 uses structure-neighbor-send-community;
1183
1184 uses structure-neighbor-group-soft-reconfiguration;
1185
1186 uses structure-neighbor-weight;
1187
1188 uses structure-neighbor-group-filter-config;
1189 }
1190
1191 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv6-multicast" {
1192 uses structure-neighbor-group-add-paths;
1193
1194 uses structure-neighbor-group-as-path-options;
1195
1196 uses structure-neighbor-default-originate-options;
1197
1198 uses structure-neighbor-group-attr-unchanged;
1199
1200 uses structure-neighbor-group-orf-capability;
1201
1202 uses structure-neighbor-prefix-limit;
1203
1204 uses structure-neighbor-nexthop-self;
1205
1206 uses structure-neighbor-private-as;
1207
1208 uses structure-neighbor-route-reflector;
1209
1210 uses structure-neighbor-route-server;
1211
1212 uses structure-neighbor-send-community;
1213
1214 uses structure-neighbor-group-soft-reconfiguration;
1215
1216 uses structure-neighbor-weight;
1217
1218 uses structure-neighbor-group-filter-config;
1219 }
1220
1221 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv4-labeled-unicast" {
1222 uses structure-neighbor-group-add-paths;
1223
1224 uses structure-neighbor-group-as-path-options;
1225
1226 uses structure-neighbor-default-originate-options;
1227
1228 uses structure-neighbor-group-attr-unchanged;
1229
1230 uses structure-neighbor-group-orf-capability;
1231
1232 uses structure-neighbor-prefix-limit;
1233
1234 uses structure-neighbor-nexthop-self;
1235
1236 uses structure-neighbor-private-as;
1237
1238 uses structure-neighbor-route-reflector;
1239
1240 uses structure-neighbor-route-server;
1241
1242 uses structure-neighbor-send-community;
1243
1244 uses structure-neighbor-group-soft-reconfiguration;
1245
1246 uses structure-neighbor-weight;
1247
1248 uses structure-neighbor-group-filter-config;
1249 }
1250
1251 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv6-labeled-unicast" {
1252 uses structure-neighbor-group-add-paths;
1253
1254 uses structure-neighbor-group-as-path-options;
1255
1256 uses structure-neighbor-default-originate-options;
1257
1258 uses structure-neighbor-group-attr-unchanged;
1259
1260 uses structure-neighbor-group-orf-capability;
1261
1262 uses structure-neighbor-prefix-limit;
1263
1264 uses structure-neighbor-nexthop-self;
1265
1266 uses structure-neighbor-private-as;
1267
1268 uses structure-neighbor-route-reflector;
1269
1270 uses structure-neighbor-route-server;
1271
1272 uses structure-neighbor-send-community;
1273
1274 uses structure-neighbor-group-soft-reconfiguration;
1275
1276 uses structure-neighbor-weight;
1277
1278 uses structure-neighbor-group-filter-config;
1279 }
1280
1281 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/peer-groups/peer-group/afi-safis/afi-safi/l3vpn-ipv4-unicast" {
1282 uses structure-neighbor-group-add-paths;
1283
1284 uses structure-neighbor-group-as-path-options;
1285
1286 uses structure-neighbor-group-attr-unchanged;
1287
1288 uses structure-neighbor-prefix-limit;
1289
1290 uses structure-neighbor-nexthop-self;
1291
1292 uses structure-neighbor-private-as;
1293
1294 uses structure-neighbor-route-reflector;
1295
1296 uses structure-neighbor-route-server;
1297
1298 uses structure-neighbor-send-community;
1299
1300 uses structure-neighbor-group-soft-reconfiguration;
1301
1302 uses structure-neighbor-weight;
1303
1304 uses structure-neighbor-group-filter-config;
1305 }
1306
1307 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/peer-groups/peer-group/afi-safis/afi-safi/l3vpn-ipv6-unicast" {
1308 uses structure-neighbor-group-add-paths;
1309
1310 uses structure-neighbor-group-as-path-options;
1311
1312 uses structure-neighbor-group-attr-unchanged;
1313
1314 uses structure-neighbor-prefix-limit;
1315
1316 uses structure-neighbor-nexthop-self;
1317
1318 uses structure-neighbor-private-as;
1319
1320 uses structure-neighbor-route-reflector;
1321
1322 uses structure-neighbor-route-server;
1323
1324 uses structure-neighbor-send-community;
1325
1326 uses structure-neighbor-group-soft-reconfiguration;
1327
1328 uses structure-neighbor-weight;
1329
1330 uses structure-neighbor-group-filter-config;
1331 }
1332
1333 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/peer-groups/peer-group/afi-safis/afi-safi/l2vpn-evpn" {
1334 uses structure-neighbor-group-as-path-options;
1335
1336 uses structure-neighbor-group-attr-unchanged;
1337
1338 uses structure-neighbor-nexthop-self;
1339
1340 uses structure-neighbor-route-reflector;
1341
1342 uses structure-neighbor-route-server;
1343
1344 uses structure-neighbor-group-soft-reconfiguration;
1345
1346 uses structure-neighbor-group-filter-config;
1347 }
1348
1349 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv4-flowspec" {
1350 uses structure-neighbor-route-reflector;
1351
1352 uses structure-neighbor-route-server;
1353
1354 uses structure-neighbor-group-soft-reconfiguration;
1355
1356 uses structure-neighbor-group-filter-config;
1357 }
1358
1359 augment "/frr-rt:routing/frr-rt:control-plane-protocols/frr-rt:control-plane-protocol/bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv6-flowspec" {
1360 uses structure-neighbor-route-reflector;
1361
1362 uses structure-neighbor-route-server;
1363
1364 uses structure-neighbor-group-soft-reconfiguration;
1365
1366 uses structure-neighbor-group-filter-config;
1367 }
1368 }