summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzsdc <taras@vyos.io>2019-12-31 23:01:42 +0200
committerChristian Poessinger <christian@poessinger.com>2021-08-11 15:31:23 +0200
commit20b2b65f214517a58b2dfbb29cb3367d2e025c10 (patch)
treee4e1994d2715d5ace6a4b9402213298e953acbf0
parent3da795954cba2df8121dc4da510b37db11f4eefe (diff)
downloadvyatta-cfg-quagga-20b2b65f214517a58b2dfbb29cb3367d2e025c10.tar.gz
vyatta-cfg-quagga-20b2b65f214517a58b2dfbb29cb3367d2e025c10.zip
BGP: T1817: Added nexthop-self force option
A simple "nexthop-self" command does not affect route-reflector clients, we need to additionally use "force" for them. This change adding "force" to both ipv4-unicast and ipv6-unicast families in neighbor and peer-group sections. (cherry picked from commit 6c7838254a321ec9764e4b79c4ac7aab11e7050a)
-rwxr-xr-xscripts/bgp/vyatta-bgp.pl16
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv4-unicast/nexthop-self/force/node.def1
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/nexthop-self/force/node.def1
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv4-unicast/nexthop-self/force/node.def1
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/nexthop-self/force/node.def1
5 files changed, 20 insertions, 0 deletions
diff --git a/scripts/bgp/vyatta-bgp.pl b/scripts/bgp/vyatta-bgp.pl
index 098017c1..781a106a 100755
--- a/scripts/bgp/vyatta-bgp.pl
+++ b/scripts/bgp/vyatta-bgp.pl
@@ -310,6 +310,10 @@ my %qcom = (
set => 'router bgp #3 ; address-family ipv6 ; neighbor #5 next-hop-self',
del => 'router bgp #3 ; address-family ipv6 ; no neighbor #5 next-hop-self',
},
+ 'protocols bgp var neighbor var address-family ipv6-unicast nexthop-self force' => {
+ set => 'router bgp #3 ; address-family ipv6 ; neighbor #5 next-hop-self force',
+ del => 'router bgp #3 ; address-family ipv6 ; no neighbor #5 next-hop-self force',
+ },
'protocols bgp var neighbor var address-family ipv6-unicast peer-group' => {
set => 'router bgp #3 ; address-family ipv6 ; neighbor #5 peer-group #9',
del => 'router bgp #3 ; address-family ipv6 ; no neighbor #5 peer-group #9 ; neighbor #5 activate',
@@ -455,6 +459,10 @@ my %qcom = (
set => 'router bgp #3 ; address-family ipv4 unicast ; neighbor #5 next-hop-self',
del => 'router bgp #3 ; address-family ipv4 unicast ; no neighbor #5 next-hop-self',
},
+ 'protocols bgp var neighbor var address-family ipv4-unicast nexthop-self force' => {
+ set => 'router bgp #3 ; address-family ipv4 unicast ; neighbor #5 next-hop-self force',
+ del => 'router bgp #3 ; address-family ipv4 unicast ; no neighbor #5 next-hop-self force',
+ },
'protocols bgp var neighbor var address-family ipv4-unicast prefix-list' => {
set => undef,
del => undef,
@@ -885,6 +893,10 @@ my %qcom = (
set => 'router bgp #3 ; address-family ipv6 ; neighbor #5 next-hop-self',
del => 'router bgp #3 ; address-family ipv6 ; no neighbor #5 next-hop-self',
},
+ 'protocols bgp var peer-group var address-family ipv6-unicast nexthop-self force' => {
+ set => 'router bgp #3 ; address-family ipv6 ; neighbor #5 next-hop-self force',
+ del => 'router bgp #3 ; address-family ipv6 ; no neighbor #5 next-hop-self force',
+ },
'protocols bgp var peer-group var address-family ipv6-unicast prefix-list' => {
set => undef,
del => undef,
@@ -1023,6 +1035,10 @@ my %qcom = (
set => 'router bgp #3 ; address-family ipv4 unicast ; neighbor #5 next-hop-self',
del => 'router bgp #3 ; address-family ipv4 unicast ; no neighbor #5 next-hop-self',
},
+ 'protocols bgp var peer-group var address-family ipv4-unicast nexthop-self force' => {
+ set => 'router bgp #3 ; address-family ipv4 unicast ; neighbor #5 next-hop-self force',
+ del => 'router bgp #3 ; address-family ipv4 unicast ; no neighbor #5 next-hop-self force',
+ },
'protocols bgp var peer-group var address-family ipv4-unicast prefix-list' => {
set => undef,
del => undef,
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv4-unicast/nexthop-self/force/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv4-unicast/nexthop-self/force/node.def
new file mode 100644
index 00000000..e78bd2e5
--- /dev/null
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv4-unicast/nexthop-self/force/node.def
@@ -0,0 +1 @@
+help: Set the next hop to self for reflected routes
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/nexthop-self/force/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/nexthop-self/force/node.def
new file mode 100644
index 00000000..e78bd2e5
--- /dev/null
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/nexthop-self/force/node.def
@@ -0,0 +1 @@
+help: Set the next hop to self for reflected routes
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv4-unicast/nexthop-self/force/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv4-unicast/nexthop-self/force/node.def
new file mode 100644
index 00000000..e78bd2e5
--- /dev/null
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv4-unicast/nexthop-self/force/node.def
@@ -0,0 +1 @@
+help: Set the next hop to self for reflected routes
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/nexthop-self/force/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/nexthop-self/force/node.def
new file mode 100644
index 00000000..e78bd2e5
--- /dev/null
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/nexthop-self/force/node.def
@@ -0,0 +1 @@
+help: Set the next hop to self for reflected routes