-
Notifications
You must be signed in to change notification settings - Fork 66
/
03-ibgp-rr.yml
91 lines (85 loc) · 2.39 KB
/
03-ibgp-rr.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
---
message: |
Use this topology to test the IBGP RR implementation (rr-clients and
cluster-id) and next-hop handling (change next hop on EBGP but not on
reflected route).
module: [ bgp, ospf ]
groups:
probes:
members: [ r1, r2, rr2, x1 ]
device: frr
provider: clab
defaults.bgp.as: 65000
defaults.interfaces.mtu: 1500
nodes:
dut:
bgp.rr: True
bgp.rr_cluster_id: 10.0.0.42
rr2:
bgp.rr: True
bgp.rr_cluster_id: 10.0.0.43
r1:
id: 10
bgp.originate: 172.0.42.0/24
r2:
x1:
bgp.as: 65101
loopback.ipv4: 172.42.42.1/24
links:
- dut-r1
- rr2-r1
- r1-r2
- dut-x1
validate:
ospf_adj_dut:
description: Check OSPF adjacencies with DUT
wait: 40
nodes: [ r1 ]
wait_msg: Waiting for OSPF adjacency process to complete
plugin: ospf_neighbor(nodes.dut.ospf.router_id)
ospf_adj_r1:
description: Check OSPF adjacencies with R1
wait: 10
nodes: [ r2, rr2 ]
wait_msg: Waiting for OSPF adjacency process to complete
plugin: ospf_neighbor(nodes.r1.ospf.router_id)
session:
description: Check BGP sessions with DUT
wait_msg: Wait for BGP sessions to be established
wait: 30
nodes: [ r1, r2, rr2, x1 ]
plugin: bgp_neighbor(node.bgp.neighbors,'dut')
prefix:
wait: 5
description: Check whether DUT propagates the external beacon prefix
wait_msg: Wait for BGP convergence
nodes: [ r1, r2, rr2 ]
plugin: bgp_prefix('172.42.42.0/24')
nhs:
description: Check next-hop handling on DUT
wait: 5
wait_msg: Wait for BGP convergence
nodes: [ r1, r2 ]
plugin: >
bgp_prefix(
'172.42.42.0/24',
nh=nodes.dut.loopback.ipv4 if 'loopback' in nodes.dut else nodes.dut.interfaces[0].ipv4)
reflect:
description: Check route reflection on DUT
wait: 5
nodes: [ r2 ]
plugin: bgp_prefix('172.0.42.0/24',peer=nodes.dut.bgp.router_id)
inact:
description: Check route reflection of inactive routes on DUT
wait: 2
nodes: [ r2 ]
level: warning
plugin: bgp_prefix('10.0.0.10/32',peer=nodes.dut.bgp.router_id)
nhu:
description: Check next-hop handling of reflected routes
nodes: [ r2 ]
plugin: bgp_prefix('172.0.42.0/24',nh='10.0.0.10',peer=nodes.dut.bgp.router_id)
cluster:
description: Check cluster-id attribute in the BGP update from RR
nodes: [ r2 ]
plugin: bgp_prefix('172.0.42.0/24',clusterid='10.0.0.42',peer=nodes.dut.bgp.router_id)