diff options
author | Christian Poessinger <christian@poessinger.com> | 2021-03-12 19:49:18 +0100 |
---|---|---|
committer | Christian Poessinger <christian@poessinger.com> | 2021-03-14 11:09:57 +0100 |
commit | f3ed5e7c57c123661b1b550823a467a34c161024 (patch) | |
tree | afb9faf3bd9e3b134657d018137f987c3a4d1cd7 /interface-definitions/protocols-bgp.xml.in | |
parent | 576f1cb41c4d531bd16628e9b772f5ff766e3fad (diff) | |
download | vyos-1x-f3ed5e7c57c123661b1b550823a467a34c161024.tar.gz vyos-1x-f3ed5e7c57c123661b1b550823a467a34c161024.zip |
vrf: bgp: T2271: create individual BGP process for specified VRF name
The following VyOS CLI config
vrf red {
bgp 100 {
neighbor 1.1.1.1 {
peer-group foo
}
peer-group foo {
passive
password bar
remote-as 200
}
}
}
Will generaste the FRR configuration:
!
router bgp 100 vrf red
no bgp ebgp-requires-policy
no bgp network import-check
neighbor foo peer-group
neighbor foo remote-as 200
neighbor foo password bar
neighbor foo passive
neighbor 1.1.1.1 peer-group foo
!
Diffstat (limited to 'interface-definitions/protocols-bgp.xml.in')
-rw-r--r-- | interface-definitions/protocols-bgp.xml.in | 829 |
1 files changed, 3 insertions, 826 deletions
diff --git a/interface-definitions/protocols-bgp.xml.in b/interface-definitions/protocols-bgp.xml.in index a6d2a24f4..cf897d04f 100644 --- a/interface-definitions/protocols-bgp.xml.in +++ b/interface-definitions/protocols-bgp.xml.in @@ -1,844 +1,21 @@ <?xml version="1.0"?> -<!-- Border Gateway Protocol (BGP) configuration --> <interfaceDefinition> <node name="protocols"> <children> <tagNode name="bgp" owner="${vyos_conf_scripts_dir}/protocols_bgp.py"> <properties> <help>Border Gateway Protocol (BGP)</help> + <priority>820</priority> <valueHelp> <format>u32:1-4294967294</format> - <description>AS number</description> + <description>Autonomous System Number</description> </valueHelp> <constraint> <validator name="numeric" argument="--range 1-4294967294"/> </constraint> - <priority>820</priority> </properties> <children> - <node name="address-family"> - <properties> - <help>BGP address-family parameters</help> - </properties> - <children> - <node name="ipv4-unicast"> - <properties> - <help>IPv4 BGP settings</help> - </properties> - <children> - <tagNode name="aggregate-address"> - <properties> - <help>BGP aggregate network</help> - <valueHelp> - <format>ipv4net</format> - <description>BGP aggregate network</description> - </valueHelp> - <constraint> - <validator name="ipv4-prefix"/> - </constraint> - </properties> - <children> - #include <include/bgp/bgp-afi-aggregate-address.xml.i> - </children> - </tagNode> - <tagNode name="network"> - <properties> - <help>BGP network</help> - <valueHelp> - <format>ipv4net</format> - <description>BGP network</description> - </valueHelp> - <constraint> - <validator name="ipv4-prefix"/> - </constraint> - </properties> - <children> - <leafNode name="backdoor"> - <properties> - <help>Network as a backdoor route</help> - <valueless/> - </properties> - </leafNode> - #include <include/route-map.xml.i> - </children> - </tagNode> - #include <include/bgp/bgp-afi-maximum-paths.xml.i> - <node name="redistribute"> - <properties> - <help>Redistribute routes from other protocols into BGP</help> - </properties> - <children> - <node name="connected"> - <properties> - <help>Redistribute connected routes into BGP</help> - </properties> - <children> - #include <include/bgp/bgp-afi-redistribute-metric-route-map.xml.i> - </children> - </node> - <node name="isis"> - <properties> - <help>Redistribute IS-IS routes into BGP</help> - </properties> - <children> - #include <include/bgp/bgp-afi-redistribute-metric-route-map.xml.i> - </children> - </node> - <node name="kernel"> - <properties> - <help>Redistribute kernel routes into BGP</help> - </properties> - <children> - #include <include/bgp/bgp-afi-redistribute-metric-route-map.xml.i> - </children> - </node> - <node name="ospf"> - <properties> - <help>Redistribute OSPF routes into BGP</help> - </properties> - <children> - #include <include/bgp/bgp-afi-redistribute-metric-route-map.xml.i> - </children> - </node> - <node name="rip"> - <properties> - <help>Redistribute RIP routes into BGP</help> - </properties> - <children> - #include <include/bgp/bgp-afi-redistribute-metric-route-map.xml.i> - </children> - </node> - <node name="static"> - <properties> - <help>Redistribute static routes into BGP</help> - </properties> - <children> - #include <include/bgp/bgp-afi-redistribute-metric-route-map.xml.i> - </children> - </node> - <leafNode name="table"> - <properties> - <help>Redistribute non-main Kernel Routing Table</help> - </properties> - </leafNode> - </children> - </node> - </children> - </node> - <node name="ipv6-unicast"> - <properties> - <help>IPv6 BGP settings</help> - </properties> - <children> - <tagNode name="aggregate-address"> - <properties> - <help>BGP aggregate network</help> - <valueHelp> - <format>ipv6net</format> - <description>Aggregate network</description> - </valueHelp> - <constraint> - <validator name="ipv6-prefix"/> - </constraint> - </properties> - <children> - #include <include/bgp/bgp-afi-aggregate-address.xml.i> - </children> - </tagNode> - <tagNode name="network"> - <properties> - <help>BGP network</help> - <valueHelp> - <format>ipv6net</format> - <description>Aggregate network</description> - </valueHelp> - <constraint> - <validator name="ipv6-prefix"/> - </constraint> - </properties> - <children> - <leafNode name="path-limit"> - <properties> - <help>AS-path hopcount limit</help> - <valueHelp> - <format>u32:0-255</format> - <description>AS path hop count limit</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 0-255"/> - </constraint> - </properties> - </leafNode> - #include <include/route-map.xml.i> - </children> - </tagNode> - #include <include/bgp/bgp-afi-maximum-paths.xml.i> - <node name="redistribute"> - <properties> - <help>Redistribute routes from other protocols into BGP</help> - </properties> - <children> - <node name="connected"> - <properties> - <help>Redistribute connected routes into BGP</help> - </properties> - <children> - #include <include/bgp/bgp-afi-redistribute-metric-route-map.xml.i> - </children> - </node> - <node name="kernel"> - <properties> - <help>Redistribute kernel routes into BGP</help> - </properties> - <children> - #include <include/bgp/bgp-afi-redistribute-metric-route-map.xml.i> - </children> - </node> - <node name="ospfv3"> - <properties> - <help>Redistribute OSPFv3 routes into BGP</help> - </properties> - <children> - #include <include/bgp/bgp-afi-redistribute-metric-route-map.xml.i> - </children> - </node> - <node name="ripng"> - <properties> - <help>Redistribute RIPng routes into BGP</help> - </properties> - <children> - #include <include/bgp/bgp-afi-redistribute-metric-route-map.xml.i> - </children> - </node> - <node name="static"> - <properties> - <help>Redistribute static routes into BGP</help> - </properties> - <children> - #include <include/bgp/bgp-afi-redistribute-metric-route-map.xml.i> - </children> - </node> - <leafNode name="table"> - <properties> - <help>Redistribute non-main Kernel Routing Table</help> - </properties> - </leafNode> - </children> - </node> - </children> - </node> - <node name="l2vpn-evpn"> - <properties> - <help>L2VPN EVPN BGP settings</help> - </properties> - <children> - <leafNode name="advertise-all-vni"> - <properties> - <help>Advertise All local VNIs</help> - <valueless/> - </properties> - </leafNode> - #include <include/bgp/bgp-afi-l2vpn-common.xml.i> - <leafNode name="advertise-pip"> - <properties> - <help>EVPN system primary IP</help> - <valueHelp> - <format>ipv4</format> - <description>IP address</description> - </valueHelp> - <constraint> - <validator name="ipv4-address"/> - </constraint> - </properties> - </leafNode> - <leafNode name="rt-auto-derive"> - <properties> - <help>Auto derivation of Route Target (RFC8365)</help> - <valueless/> - </properties> - </leafNode> - <node name="flooding"> - <properties> - <help>Specify handling for BUM packets</help> - </properties> - <children> - <leafNode name="disable"> - <properties> - <help>Do not flood any BUM packets</help> - <valueless/> - </properties> - </leafNode> - <leafNode name="head-end-replication"> - <properties> - <help>Flood BUM packets using head-end replication</help> - <valueless/> - </properties> - </leafNode> - </children> - </node> - <tagNode name="vni"> - <properties> - <help>VXLAN Network Identifier</help> - <valueHelp> - <format>u32:1-16777215</format> - <description>VNI number</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-16777215"/> - </constraint> - </properties> - <children> - #include <include/bgp/bgp-afi-l2vpn-common.xml.i> - </children> - </tagNode> - </children> - </node> - </children> - </node> - <node name="listen"> - <properties> - <help>Listen for and accept BGP dynamic neighbors from range</help> - </properties> - <children> - <leafNode name="limit"> - <properties> - <help>Maximum number of dynamic neighbors that can be created</help> - <valueHelp> - <format>u32:1-5000</format> - <description>BGP neighbor limit</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-5000"/> - </constraint> - </properties> - </leafNode> - <tagNode name="range"> - <properties> - <help>BGP dynamic neighbors listen range</help> - <valueHelp> - <format>ipv4net</format> - <description>IPv4 dynamic neighbors listen range</description> - </valueHelp> - <valueHelp> - <format>ipv6net</format> - <description>IPv6 dynamic neighbors listen range</description> - </valueHelp> - <constraint> - <validator name="ipv4-prefix"/> - <validator name="ipv6-prefix"/> - </constraint> - </properties> - <children> - #include <include/bgp/bgp-peer-group.xml.i> - </children> - </tagNode> - </children> - </node> - <tagNode name="neighbor"> - <properties> - <help>BGP neighbor</help> - <valueHelp> - <format>ipv4</format> - <description>BGP neighbor IP address</description> - </valueHelp> - <valueHelp> - <format>ipv6</format> - <description>BGP neighbor IPv6 address</description> - </valueHelp> - <valueHelp> - <format>txt</format> - <description>Interface name</description> - </valueHelp> - <constraint> - <validator name="ipv4-address"/> - <validator name="ipv6-address"/> - <validator name="interface-name"/> - </constraint> - </properties> - <children> - <node name="address-family"> - <properties> - <help>Parameters relating to IPv4 or IPv6 routes</help> - </properties> - <children> - #include <include/bgp/bgp-neighbor-afi-ipv4-unicast.xml.i> - #include <include/bgp/bgp-neighbor-afi-ipv6-unicast.xml.i> - #include <include/bgp/bgp-neighbor-afi-l2vpn-evpn.xml.i> - </children> - </node> - <leafNode name="advertisement-interval"> - <properties> - <help>Minimum interval for sending routing updates</help> - <valueHelp> - <format>u32:0-600</format> - <description>Advertisement interval in seconds</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 0-600"/> - </constraint> - </properties> - </leafNode> - #include <include/bgp/bgp-bfd.xml.i> - #include <include/bgp/bgp-capability.xml.i> - #include <include/bgp/bgp-description.xml.i> - #include <include/bgp/bgp-disable-capability-negotiation.xml.i> - #include <include/bgp/bgp-disable-connected-check.xml.i> - #include <include/bgp/bgp-ebgp-multihop.xml.i> - <node name="interface"> - <properties> - <help>Interface parameters</help> - </properties> - <children> - #include <include/bgp/bgp-peer-group.xml.i> - #include <include/bgp/bgp-remote-as.xml.i> - <node name="v6only"> - <properties> - <help>Enable BGP with v6 link-local only</help> - </properties> - <children> - #include <include/bgp/bgp-peer-group.xml.i> - #include <include/bgp/bgp-remote-as.xml.i> - </children> - </node> - </children> - </node> - #include <include/bgp/bgp-local-as.xml.i> - #include <include/bgp/bgp-override-capability.xml.i> - #include <include/bgp/bgp-passive.xml.i> - #include <include/bgp/bgp-password.xml.i> - #include <include/bgp/bgp-peer-group.xml.i> - <leafNode name="port"> - <properties> - <help>Neighbor BGP port</help> - <valueHelp> - <format>u32:1-65535</format> - <description>Neighbor BGP port number</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-65535"/> - </constraint> - </properties> - </leafNode> - #include <include/bgp/bgp-remote-as.xml.i> - #include <include/bgp/bgp-shutdown.xml.i> - <leafNode name="strict-capability-match"> - <properties> - <help>Enable strict capability negotiation</help> - <valueless/> - </properties> - </leafNode> - <node name="timers"> - <properties> - <help>Neighbor timers</help> - </properties> - <children> - <leafNode name="connect"> - <properties> - <help>BGP connect timer for this neighbor</help> - <valueHelp> - <format>u32:1-65535</format> - <description>Connect timer in seconds</description> - </valueHelp> - <valueHelp> - <format>0</format> - <description>Disable connect timer</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 0-65535"/> - </constraint> - </properties> - </leafNode> - #include <include/bgp/bgp-timers-holdtime.xml.i> - #include <include/bgp/bgp-timers-keepalive.xml.i> - </children> - </node> - #include <include/bgp/bgp-ttl-security.xml.i> - #include <include/bgp/bgp-update-source.xml.i> - </children> - </tagNode> - <node name="parameters"> - <properties> - <help>BGP parameters</help> - </properties> - <children> - <leafNode name="always-compare-med"> - <properties> - <help>Always compare MEDs from different neighbors</help> - <valueless/> - </properties> - </leafNode> - <node name="bestpath"> - <properties> - <help>Default bestpath selection mechanism</help> - </properties> - <children> - <node name="as-path"> - <properties> - <help>AS-path attribute comparison parameters</help> - </properties> - <children> - <leafNode name="confed"> - <properties> - <help>Compare AS-path lengths including confederation sets and sequences</help> - <valueless/> - </properties> - </leafNode> - <leafNode name="ignore"> - <properties> - <help>Ignore AS-path length in selecting a route</help> - <valueless/> - </properties> - </leafNode> - <leafNode name="multipath-relax"> - <properties> - <help>Allow load sharing across routes that have different AS paths (but same length)</help> - <valueless/> - </properties> - </leafNode> - </children> - </node> - <leafNode name="compare-routerid"> - <properties> - <help>Compare the router-id for identical EBGP paths</help> - <valueless/> - </properties> - </leafNode> - <node name="med"> - <properties> - <help>MED attribute comparison parameters</help> - </properties> - <children> - <leafNode name="confed"> - <properties> - <help>Compare MEDs among confederation paths</help> - <valueless/> - </properties> - </leafNode> - <leafNode name="missing-as-worst"> - <properties> - <help>Treat missing route as a MED as the least preferred one</help> - <valueless/> - </properties> - </leafNode> - </children> - </node> - </children> - </node> - <leafNode name="cluster-id"> - <properties> - <help>Route-reflector cluster-id</help> - <valueHelp> - <format>ipv4</format> - <description>Route-reflector cluster-id</description> - </valueHelp> - <constraint> - <validator name="ipv4-address"/> - </constraint> - </properties> - </leafNode> - <node name="confederation"> - <properties> - <help>AS confederation parameters</help> - </properties> - <children> - <leafNode name="identifier"> - <properties> - <help>Confederation AS identifier [REQUIRED]</help> - <valueHelp> - <format>u32:1-4294967294</format> - <description>Confederation AS id</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-4294967294"/> - </constraint> - </properties> - </leafNode> - <leafNode name="peers"> - <properties> - <help>Peer ASs in the BGP confederation</help> - <valueHelp> - <format>u32:1-4294967294</format> - <description>Peer AS number</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-4294967294"/> - </constraint> - </properties> - </leafNode> - </children> - </node> - <node name="dampening"> - <properties> - <help>Enable route-flap dampening</help> - </properties> - <children> - <leafNode name="half-life"> - <properties> - <help>Half-life time for dampening [REQUIRED]</help> - <valueHelp> - <format>u32:1-45</format> - <description>Half-life penalty in minutes</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-45"/> - </constraint> - </properties> - </leafNode> - <leafNode name="max-suppress-time"> - <properties> - <help>Maximum duration to suppress a stable route [REQUIRED]</help> - <valueHelp> - <format>u32:1-255</format> - <description>Maximum suppress duration in minutes</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-255"/> - </constraint> - </properties> - </leafNode> - <leafNode name="re-use"> - <properties> - <help>Threshold to start reusing a route [REQUIRED]</help> - <valueHelp> - <format>u32:1-20000</format> - <description>Re-use penalty points</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-20000"/> - </constraint> - </properties> - </leafNode> - <leafNode name="start-suppress-time"> - <properties> - <help>When to start suppressing a route [REQUIRED]</help> - <valueHelp> - <format>u32:1-20000</format> - <description>Start-suppress penalty points</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-20000"/> - </constraint> - </properties> - </leafNode> - </children> - </node> - <node name="default"> - <properties> - <help>BGP defaults</help> - </properties> - <children> - <leafNode name="local-pref"> - <properties> - <help>Default local preference</help> - <valueHelp> - <format>u32</format> - <description>Local preference</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 0-4294967295"/> - </constraint> - </properties> - </leafNode> - <leafNode name="no-ipv4-unicast"> - <properties> - <help>Deactivate IPv4 unicast for a peer by default</help> - <valueless/> - </properties> - </leafNode> - </children> - </node> - <leafNode name="deterministic-med"> - <properties> - <help>Compare MEDs between different peers in the same AS</help> - <valueless/> - </properties> - </leafNode> - <node name="distance"> - <properties> - <help>Administratives distances for BGP routes</help> - </properties> - <children> - <node name="global"> - <properties> - <help>Global administratives distances for BGP routes</help> - </properties> - <children> - <leafNode name="external"> - <properties> - <help>Administrative distance for external BGP routes</help> - <valueHelp> - <format>u32:1-255</format> - <description>Administrative distance for external BGP routes</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-255"/> - </constraint> - </properties> - </leafNode> - <leafNode name="internal"> - <properties> - <help>Administrative distance for internal BGP routes</help> - <valueHelp> - <format>u32:1-255</format> - <description>Administrative distance for internal BGP routes</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-255"/> - </constraint> - </properties> - </leafNode> - <leafNode name="local"> - <properties> - <help>Administrative distance for local BGP routes</help> - <valueHelp> - <format>u32:1-255</format> - <description>Administrative distance for internal BGP routes</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-255"/> - </constraint> - </properties> - </leafNode> - </children> - </node> - <tagNode name="prefix"> - <properties> - <help>Administrative distance for a specific BGP prefix</help> - <valueHelp> - <format>ipv4net</format> - <description>Administrative distance for a specific BGP prefix</description> - </valueHelp> - <constraint> - <validator name="ipv4-prefix"/> - </constraint> - </properties> - <children> - <leafNode name="distance"> - <properties> - <help>Administrative distance for prefix</help> - <valueHelp> - <format>u32:1-255</format> - <description>Administrative distance for external BGP routes</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-255"/> - </constraint> - </properties> - </leafNode> - </children> - </tagNode> - </children> - </node> - <leafNode name="ebgp-requires-policy"> - <properties> - <help>Require in and out policy for eBGP peers (RFC8212)</help> - <valueless/> - </properties> - </leafNode> - <node name="graceful-restart"> - <properties> - <help>Graceful restart capability parameters</help> - </properties> - <children> - <leafNode name="stalepath-time"> - <properties> - <help>Maximum time to hold onto restarting neighbors stale paths</help> - <valueHelp> - <format>u32:1-3600</format> - <description>Hold time in seconds</description> - </valueHelp> - <constraint> - <validator name="numeric" argument="--range 1-3600"/> - </constraint> - </properties> - </leafNode> - </children> - </node> - <leafNode name="graceful-shutdown"> - <properties> - <help>Graceful shutdown</help> - <valueless/> - </properties> - </leafNode> - <leafNode name="log-neighbor-changes"> - <properties> - <help>Log neighbor up/down changes and reset reason</help> - <valueless/> - </properties> - </leafNode> - <leafNode name="network-import-check"> - <properties> - <help>Enable IGP route check for network statements</help> - <valueless/> - </properties> - </leafNode> - <leafNode name="no-client-to-client-reflection"> - <properties> - <help>Disable client to client route reflection</help> - <valueless/> - </properties> - </leafNode> - <leafNode name="no-fast-external-failover"> - <properties> - <help>Disable immediate session reset on peer link down event</help> - <valueless/> - </properties> - </leafNode> - <leafNode name="router-id"> - <properties> - <help>BGP router id</help> - <valueHelp> - <format>ipv4</format> - <description>BGP router id</description> - </valueHelp> - <constraint> - <validator name="ipv4-address"/> - </constraint> - </properties> - </leafNode> - </children> - </node> - <tagNode name="peer-group"> - <properties> - <help>BGP peer-group</help> - </properties> - <children> - <node name="address-family"> - <properties> - <help>BGP peer-group address-family parameters</help> - </properties> - <children> - #include <include/bgp/bgp-neighbor-afi-ipv4-unicast.xml.i> - #include <include/bgp/bgp-neighbor-afi-ipv6-unicast.xml.i> - #include <include/bgp/bgp-neighbor-afi-l2vpn-evpn.xml.i> - </children> - </node> - #include <include/bgp/bgp-bfd.xml.i> - #include <include/bgp/bgp-capability.xml.i> - #include <include/bgp/bgp-description.xml.i> - #include <include/bgp/bgp-disable-capability-negotiation.xml.i> - #include <include/bgp/bgp-disable-connected-check.xml.i> - #include <include/bgp/bgp-ebgp-multihop.xml.i> - #include <include/bgp/bgp-local-as.xml.i> - #include <include/bgp/bgp-override-capability.xml.i> - #include <include/bgp/bgp-passive.xml.i> - #include <include/bgp/bgp-password.xml.i> - #include <include/bgp/bgp-remote-as.xml.i> - #include <include/bgp/bgp-shutdown.xml.i> - #include <include/bgp/bgp-ttl-security.xml.i> - #include <include/bgp/bgp-update-source.xml.i> - </children> - </tagNode> - #include <include/route-map.xml.i> - <node name="timers"> - <properties> - <help>BGP protocol timers</help> - </properties> - <children> - #include <include/bgp/bgp-timers-holdtime.xml.i> - #include <include/bgp/bgp-timers-keepalive.xml.i> - </children> - </node> + #include <include/bgp/bgp-common-config.xml.i> </children> </tagNode> </children> |