BGP - as-override option under address-family
Is your feature request related to a problem? Please describe.
Missing option in DO schema for BGP to enabling the option as-override under the address-family.
address-family [add | delete | modify | replace-all-with] {
[ [name] ] {
options:
activate [disabled | enabled]
allow-as-in [[string] | none]
>> as-override [disabled | enabled]
attribute-unchanged {
as-path [disabled | enabled]
med [disabled | enabled]
next-hop [disabled | enabled]
}
Describe the solution you'd like
Please add the option as its a request from a customer.
Describe alternatives you've considered
Alternative is to use the TMSH options for BGP.
modify net routing bgp bgp_tcp_decrypt neighbor add { 1.2.3.4 { remote-as 65200 address-family { ipv4 { as-override enabled } } } 5.6.7.8 { remote-as 65201 address-family { ipv4 { as-override enabled } } } }
Additional context
None.
Jira item AUTOTOOL-4107 - Adding to the next sprint
I am seeking some clarification. In the TMSH example above 'address-family' is under 'neighbor' but as far as I can tell DO does not currently support 'address-family' being a member of 'neighbor'. That would make this an issue to add 'address-family' under 'neighbor' as well which internally will require a bigger window to schedule the work.
There are at least 2 other 'address-family' properties in the TMSH 'net routing bgp' object. One is at the top-level and does not have an 'as-override' property as far as I can tell. The second is under 'peer-group'. This 'address-family' is currently supported by DO and DO does support attaching a 'peer-group' (peerGroup) under neighbor.
Do you want the 'as-override' property for 'address-family' under 'neighbor', 'peer-group', or both?
Hi
Do you want the 'as-override' property for 'address-family' under 'neighbor', 'peer-group', or both? The BGP section is under neigbour > address-family per below reference (>>>):
Reference page is TMSH BGP reference
MODULE net routing
SYNTAX
CREATE/MODIFY
create bgp [name]
modify bgp [name]
options:
allow-infinite-hold-time [disabled | enabled]
always-compare-med [disabled | enabled]
bestpath {
as-path-ignore [disabled | enabled]
compare-confed-aspath [disabled | enabled]
compare-originator-id [disabled | enabled]
compare-routerid [disabled | enabled]
med {
confed [disabled | enabled]
missing-as-worst [disabled | enabled]
remove-recv-med [disabled | enabled]
remove-send-med [disabled | enabled]
}
tie-break-on-age [disabled | enabled]
}
client-to-client-reflection [disabled | enabled]
cluster-id [integer]
confederation {
identifier [integer]
peers [[string] | none]
}
dampening {
reachability-half-life [integer]
reuse [integer]
route-map [[string] | none]
state [disabled | enabled]
suppress [integer]
suppress-max [integer]
unreachability-half-life [integer]
}
default-local-preference [integer]
description [[string] | none]
deterministic-med [disabled | enabled]
enabled [true | false]
enforce-first-as [disabled | enabled]
fast-external-failover [disabled | enabled]
graceful-restart {
graceful-reset [disabled | enabled]
restart-time [integer]
stalepath-time [integer]
}
graceful-shutdown {
capable [disabled | enabled]
local-preference [integer]
mode [disabled | enabled]
}
hold-time [integer]
keep-alive [integer]
local-as [integer]
log-neighbor-changes [disabled | enabled]
profile [[string] | none]
route-domain [[string] | none]
router-id [ip address]
scan-time [integer]
synchronization [disabled | enabled]
update-delay [integer]
view [disabled | enabled]
address-family [add | delete | modify | replace-all-with] {
[ [name] ] {
options:
auto-summary [disabled | enabled]
distance {
external [integer]
internal [integer]
local [integer]
}
network-synchronization [disabled | enabled]
aggregate-address [add | delete | modify | replace-all-with] {
[ [name] ] {
options:
as-set [disabled | enabled]
summary-only [disabled | enabled]
}
}
redistribute [add | delete | modify | replace-all-with] {
[ [name] ] {
options:
route-map [[string] | none]
}
}
}
}
distance [add | delete | modify | replace-all-with] {
[ [name] ] {
options:
access-list [[string] | none]
distance [integer]
}
}
neighbor [add | delete | modify | replace-all-with] {
[ [name] ] {
options:
advertisement-interval [integer]
allow-infinite-hold-time [disabled | enabled]
as-origination-interval [integer]
capability {
dynamic [disabled | enabled]
route-refresh [disabled | enabled]
}
capability-negotiate {
override [disabled | enabled]
state [disabled | enabled]
strict-match [disabled | enabled]
}
collide-established [disabled | enabled]
connect-timer [integer]
description [[string] | none]
ebgp-multihop [integer]
enabled [true | false]
enforce-multihop [disabled | enabled]
fall-over [[string] | none]
graceful-shutdown {
mode [disabled | enabled]
timer [integer]
}
hold-time [integer]
keep-alive [integer]
local-as [integer]
passive [disabled | enabled]
password [[string] | none]
peer-group [[string] | none]
port [integer]
remote-as [integer]
restart-time [integer]
update-source [[string] | none]
version [integer]
vlan [[string] | none]
address-family [add | delete | modify | replace-all-with] {
[ [name] ] {
options:
activate [disabled | enabled]
allow-as-in [[string] | none]
>>> as-override [disabled | enabled]
attribute-unchanged {
as-path [disabled | enabled]
med [disabled | enabled]
next-hop [disabled | enabled]
}
capability {
graceful-restart [disabled | enabled]
orf {
prefix-list [[string] | none]
}
}
default-originate {
route-map [[string] | none]
state [disabled | enabled]
}
distribute-list {
in [[string] | none]
out [[string] | none]
}
filter-list {
in [[string] | none]
out [[string] | none]
}
maximum-prefix {
threshold [[string] | none]
value [integer]
warning-only [disabled | enabled]
}
next-hop-self [disabled | enabled]
prefix-list {
in [[string] | none]
out [[string] | none]
}
remove-private-as [disabled | enabled]
route-map {
in [[string] | none]
out [[string] | none]
}
route-reflector-client [disabled | enabled]
route-server-client [disabled | enabled]
send-community [[string] | none]
soft-reconfiguration-inbound [disabled | enabled]
unsuppress-map [[string] | none]
weight [[string] | none]
}
}
}
}
Thanks. Hope I wasn't too annoying. I was caught off guard by the request for just 1 property when this particular address-family is not currently in DO.