Skip to content

Commit bf1c29a

Browse files
authored
Merge pull request #4684 from c-po/bgp-vrf-system-as
bgp: T7760: remove per vrf instance system-as node
2 parents 9952d21 + 85fe32f commit bf1c29a

File tree

12 files changed

+596
-70
lines changed

12 files changed

+596
-70
lines changed

data/templates/frr/bgpd.frr.j2

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -259,7 +259,11 @@
259259
{# j2lint: disable=jinja-statements-delimeter #}
260260
{%- endmacro -%}
261261
!
262-
router bgp {{ system_as }} {{ 'vrf ' ~ vrf if vrf is vyos_defined }}
262+
{% if vrf is vyos_defined %}
263+
router bgp {{ dependent_vrfs.default.protocols.bgp.system_as }} vrf {{ vrf }}
264+
{% else %}
265+
router bgp {{ system_as }}
266+
{% endif %}
263267
{% if parameters.ebgp_requires_policy is vyos_defined %}
264268
bgp ebgp-requires-policy
265269
{% else %}

interface-definitions/include/bgp/protocol-common-config.xml.i

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1005,18 +1005,6 @@
10051005
</tagNode>
10061006
</children>
10071007
</node>
1008-
<leafNode name="system-as">
1009-
<properties>
1010-
<help>Autonomous System Number (ASN)</help>
1011-
<valueHelp>
1012-
<format>u32:1-4294967294</format>
1013-
<description>Autonomous System Number</description>
1014-
</valueHelp>
1015-
<constraint>
1016-
<validator name="numeric" argument="--range 1-4294967294"/>
1017-
</constraint>
1018-
</properties>
1019-
</leafNode>
10201008
<tagNode name="neighbor">
10211009
<properties>
10221010
<help>BGP neighbor</help>
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
<!-- include start from include/version/bgp-version.xml.i -->
2-
<syntaxVersion component='bgp' version='6'></syntaxVersion>
2+
<syntaxVersion component='bgp' version='8'></syntaxVersion>
33
<!-- include end -->

interface-definitions/protocols_bgp.xml.in

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,18 @@
99
</properties>
1010
<children>
1111
#include <include/bgp/protocol-common-config.xml.i>
12+
<leafNode name="system-as">
13+
<properties>
14+
<help>Autonomous System Number (ASN)</help>
15+
<valueHelp>
16+
<format>u32:1-4294967294</format>
17+
<description>Autonomous System Number</description>
18+
</valueHelp>
19+
<constraint>
20+
<validator name="numeric" argument="--range 1-4294967294"/>
21+
</constraint>
22+
</properties>
23+
</leafNode>
1224
</children>
1325
</node>
1426
</children>

smoketest/config-tests/bgp-evpn-l3vpn-pe-router

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -105,19 +105,16 @@ set system syslog local facility all level 'info'
105105
set system syslog local facility local7 level 'debug'
106106
set vrf name blue protocols bgp address-family ipv4-unicast redistribute connected
107107
set vrf name blue protocols bgp address-family l2vpn-evpn advertise ipv4 unicast
108-
set vrf name blue protocols bgp system-as '100'
109108
set vrf name blue table '2000'
110109
set vrf name blue vni '2000'
111110
set vrf name green protocols bgp address-family ipv4-unicast redistribute connected
112111
set vrf name green protocols bgp address-family l2vpn-evpn advertise ipv4 unicast
113-
set vrf name green protocols bgp system-as '100'
114112
set vrf name green table '4000'
115113
set vrf name green vni '4000'
116114
set vrf name mgmt protocols static route 0.0.0.0/0 next-hop 192.0.2.62
117115
set vrf name mgmt protocols static route6 ::/0 next-hop 2001:db8:ffff::1
118116
set vrf name mgmt table '1000'
119117
set vrf name red protocols bgp address-family ipv4-unicast redistribute connected
120118
set vrf name red protocols bgp address-family l2vpn-evpn advertise ipv4 unicast
121-
set vrf name red protocols bgp system-as '100'
122119
set vrf name red table '3000'
123120
set vrf name red vni '3000'
Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
set interfaces bridge br2000 address '10.10.7.1/30'
2+
set interfaces bridge br2000 description 'customer blue'
3+
set interfaces bridge br2000 member interface eth2.2600
4+
set interfaces bridge br2000 member interface vxlan2000
5+
set interfaces bridge br2000 vrf 'blue'
6+
set interfaces dummy dum0 address '10.255.253.1/32'
7+
set interfaces dummy dum0 address '10.255.253.24/32'
8+
set interfaces ethernet eth0 duplex 'auto'
9+
set interfaces ethernet eth0 offload gro
10+
set interfaces ethernet eth0 offload gso
11+
set interfaces ethernet eth0 offload sg
12+
set interfaces ethernet eth0 offload tso
13+
set interfaces ethernet eth0 speed 'auto'
14+
set interfaces ethernet eth0 vif 6 address '192.168.0.1/24'
15+
set interfaces ethernet eth0 vif 6 vrf 'green'
16+
set interfaces ethernet eth1 duplex 'auto'
17+
set interfaces ethernet eth1 speed 'auto'
18+
set interfaces ethernet eth1 vif 101 address '192.0.2.1/31'
19+
set interfaces ethernet eth1 vif 888 address '192.0.2.3/31'
20+
set interfaces ethernet eth1 vif 888 vrf 'blue'
21+
set interfaces ethernet eth2 duplex 'auto'
22+
set interfaces ethernet eth2 speed 'auto'
23+
set interfaces ethernet eth2 vif 1111 address '192.0.2.11/31'
24+
set interfaces ethernet eth2 vif 1111 vrf 'red'
25+
set interfaces ethernet eth2 vif 1113 address '192.0.2.13/31'
26+
set interfaces ethernet eth2 vif 1113 vrf 'red'
27+
set interfaces ethernet eth2 vif 2600
28+
set interfaces vxlan vxlan2000 mtu '1500'
29+
set interfaces vxlan vxlan2000 parameters nolearning
30+
set interfaces vxlan vxlan2000 port '4789'
31+
set interfaces vxlan vxlan2000 source-address '10.255.253.1'
32+
set interfaces vxlan vxlan2000 vni '2000'
33+
set protocols bgp address-family l2vpn-evpn advertise ipv4 unicast
34+
set protocols bgp address-family l2vpn-evpn advertise-all-vni
35+
set protocols bgp neighbor 10.255.253.9 address-family ipv4-unicast allowas-in number '10'
36+
set protocols bgp neighbor 10.255.253.9 address-family ipv4-unicast nexthop-self
37+
set protocols bgp neighbor 10.255.253.9 remote-as 'internal'
38+
set protocols bgp neighbor 10.255.253.9 update-source '10.255.253.1'
39+
set protocols bgp neighbor 10.255.253.25 peer-group 'EVPN'
40+
set protocols bgp parameters log-neighbor-changes
41+
set protocols bgp parameters network-import-check
42+
set protocols bgp parameters router-id '10.255.253.1'
43+
set protocols bgp peer-group EVPN address-family l2vpn-evpn
44+
set protocols bgp peer-group EVPN remote-as '100'
45+
set protocols bgp peer-group EVPN update-source 'dum0'
46+
set protocols bgp system-as '100'
47+
set protocols ospf interface dum0 area '0'
48+
set protocols ospf interface eth1.101 area '0'
49+
set protocols ospf interface eth1.101 network 'broadcast'
50+
set protocols ospf log-adjacency-changes detail
51+
set protocols ospf parameters router-id '10.255.253.1'
52+
set service ntp allow-client address '0.0.0.0/0'
53+
set service ntp allow-client address '::/0'
54+
set service ntp server 0.pool.ntp.org
55+
set service ntp server 1.pool.ntp.org
56+
set service ntp server 2.pool.ntp.org
57+
set service ssh disable-host-validation
58+
set service ssh port '22'
59+
set system config-management commit-revisions '20'
60+
set system conntrack modules ftp
61+
set system conntrack modules h323
62+
set system conntrack modules nfs
63+
set system conntrack modules pptp
64+
set system conntrack modules sip
65+
set system conntrack modules sqlnet
66+
set system conntrack modules tftp
67+
set system console device ttyS0 speed '115200'
68+
set system domain-name 'vyos.net'
69+
set system host-name 'evpn-l3vpn-vrf-foo'
70+
set system login user vyos authentication encrypted-password '$6$O5gJRlDYQpj$MtrCV9lxMnZPMbcxlU7.FI793MImNHznxGoMFgm3Q6QP3vfKJyOSRCt3Ka/GzFQyW1yZS4NS616NLHaIPPFHc0'
71+
set system login user vyos authentication plaintext-password ''
72+
set system option ctrl-alt-delete 'reboot'
73+
set system option reboot-on-panic
74+
set system syslog console facility all level 'emerg'
75+
set system syslog console facility mail level 'info'
76+
set system syslog local facility all level 'info'
77+
set system syslog local facility local7 level 'debug'
78+
set system syslog preserve-fqdn
79+
set system time-zone 'Europe/Berlin'
80+
set vrf name blue protocols bgp address-family ipv4-unicast redistribute connected
81+
set vrf name blue protocols bgp neighbor 192.0.2.2 address-family ipv4-unicast allowas-in number '1'
82+
set vrf name blue protocols bgp neighbor 192.0.2.2 address-family ipv4-unicast maximum-prefix '20'
83+
set vrf name blue protocols bgp neighbor 192.0.2.2 local-as 667 no-prepend replace-as
84+
set vrf name blue protocols bgp neighbor 192.0.2.2 remote-as '100'
85+
set vrf name blue protocols bgp neighbor 192.0.2.4 address-family ipv4-unicast maximum-prefix '40'
86+
set vrf name blue protocols bgp neighbor 192.0.2.4 local-as 200
87+
set vrf name blue protocols bgp neighbor 192.0.2.4 remote-as '300'
88+
set vrf name blue protocols bgp neighbor 192.0.2.6 address-family ipv4-unicast allowas-in number '7'
89+
set vrf name blue protocols bgp neighbor 192.0.2.6 local-as 667 no-prepend replace-as
90+
set vrf name blue protocols bgp neighbor 192.0.2.6 remote-as '112'
91+
set vrf name blue table '2001'
92+
set vrf name blue vni '2001'
93+
set vrf name green table '4001'
94+
set vrf name red protocols bgp address-family ipv4-unicast redistribute connected
95+
set vrf name red protocols bgp neighbor 192.0.2.10 peer-group 'foo'
96+
set vrf name red protocols bgp neighbor 192.0.2.12 address-family ipv4-unicast allowas-in number '10'
97+
set vrf name red protocols bgp neighbor 192.0.2.12 local-as 65412 no-prepend replace-as
98+
set vrf name red protocols bgp neighbor 192.0.2.12 peer-group 'bar'
99+
set vrf name red protocols bgp neighbor 192.0.2.14 local-as 1111 no-prepend replace-as
100+
set vrf name red protocols bgp neighbor 192.0.2.14 peer-group 'foo'
101+
set vrf name red protocols bgp peer-group bar address-family ipv4-unicast allowas-in number '10'
102+
set vrf name red protocols bgp peer-group bar remote-as '333'
103+
set vrf name red protocols bgp peer-group foo address-family ipv4-unicast soft-reconfiguration inbound
104+
set vrf name red protocols bgp peer-group foo local-as 1000
105+
set vrf name red protocols bgp peer-group foo remote-as '300'
106+
set vrf name red table '3001'
107+
set vrf name red vni '3001'

smoketest/config-tests/vrf-bgp-pppoe-underlay

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@ set policy prefix-list6 AS100-origin-v6 rule 10 action 'permit'
107107
set policy prefix-list6 AS100-origin-v6 rule 10 prefix '2001:db8:200::/40'
108108
set policy prefix-list6 AS200-origin-v6 rule 10 action 'permit'
109109
set policy prefix-list6 AS200-origin-v6 rule 10 prefix '2001:db8:100::/40'
110+
set protocols bgp system-as '100'
110111
set protocols static route 100.64.50.0/23 next-hop 100.64.51.221
111112
set protocols static route 192.0.2.255/32 interface pppoe7
112113
set protocols static route6 2001:db8:ffff:ffff:ffff:ffff:ffff:ffff/128 interface pppoe7
@@ -178,7 +179,6 @@ set vrf name vyos-test-01 protocols bgp peer-group AS100v6 address-family ipv6-u
178179
set vrf name vyos-test-01 protocols bgp peer-group AS100v6 capability dynamic
179180
set vrf name vyos-test-01 protocols bgp peer-group AS100v6 remote-as 'internal'
180181
set vrf name vyos-test-01 protocols bgp peer-group AS100v6 update-source 'dum0'
181-
set vrf name vyos-test-01 protocols bgp system-as '100'
182182
set vrf name vyos-test-01 protocols static route 100.64.50.0/23 blackhole
183183
set vrf name vyos-test-01 protocols static route 100.64.51.32/27 next-hop 100.64.51.5
184184
set vrf name vyos-test-01 protocols static route 192.168.0.0/24 next-hop 100.64.51.220

0 commit comments

Comments
 (0)