summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzsdc <taras@vyos.io>2019-12-31 23:01:42 +0200
committerzsdc <taras@vyos.io>2019-12-31 23:01:42 +0200
commit6c7838254a321ec9764e4b79c4ac7aab11e7050a (patch)
tree5e4c305b8d3904ccfda60db6c87600481eb377f7
parentabc247ede51f338410b676da9cffe106f17b9abc (diff)
downloadvyatta-cfg-quagga-6c7838254a321ec9764e4b79c4ac7aab11e7050a.tar.gz
vyatta-cfg-quagga-6c7838254a321ec9764e4b79c4ac7aab11e7050a.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.
-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 a99b7897..78697a47 100755
--- a/scripts/bgp/vyatta-bgp.pl
+++ b/scripts/bgp/vyatta-bgp.pl
@@ -306,6 +306,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',
@@ -451,6 +455,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,
@@ -873,6 +881,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,
@@ -1011,6 +1023,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