-
Notifications
You must be signed in to change notification settings - Fork 72
/
33-vrf-common-ospf.yml
92 lines (86 loc) · 2.37 KB
/
33-vrf-common-ospf.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
92
---
message: |
The device under test has two user VRFs and a common services VRF.
Routers are attached to those interfaces and run OSPF with device under test.
* r1 and r2 should be able to ping srv but not each other
defaults.interfaces.mtu: 1500
groups:
_auto_create: True
ce:
members: [ r1, r2, srv ]
module: [ ospf ]
device: frr
provider: clab
pe:
members: [ dut ]
module: [ vrf, ospf ]
vrfs:
red:
import: [ red, common ]
links: [ dut-r1 ]
blue:
import: [ blue, common ]
links: [ dut-r2 ]
common:
import: [ red, blue, common ]
links: [ dut-srv ]
nodes: # Set different router ID on every OSPF process
dut: # ... to keep Cisco IOS happy
id: 1
vrfs:
red:
ospf.router_id: 10.100.0.100
blue:
ospf.router_id: 10.100.0.101
common:
ospf.router_id: 10.100.0.102
validate:
red_adj:
description: Check OSPF adjacencies in red VRF
wait_msg: Waiting for OSPF adjacencies to form
wait: 20
nodes: [ r1 ]
plugin: ospf_neighbor(nodes.dut.vrfs.red.ospf.router_id)
stop_on_error: true
blue_adj:
description: Check OSPF adjacencies in blue VRF
wait_msg: Waiting for OSPF adjacencies to form
wait: 20
nodes: [ r2 ]
plugin: ospf_neighbor(nodes.dut.vrfs.blue.ospf.router_id)
stop_on_error: true
common_adj:
description: Check OSPF adjacencies in common VRF
wait_msg: Waiting for OSPF adjacencies to form
wait: 10
nodes: [ srv ]
plugin: ospf_neighbor(nodes.dut.vrfs.common.ospf.router_id)
stop_on_error: true
red_route:
description: Check srv OSPF route in red VRF
wait: 30
wait_msg: Waiting for OSPF SPF run
nodes: [ r1 ]
plugin: ospf_prefix(nodes.srv.loopback.ipv4)
blue_route:
description: Check srv OSPF route in blue VRF
wait: 10
wait_msg: Waiting for OSPF SPF run
nodes: [ r2 ]
plugin: ospf_prefix(nodes.srv.loopback.ipv4)
inter_rt:
description: Check for blue route in red VRF
nodes: [ r1 ]
plugin: ospf_prefix(nodes.r2.loopback.ipv4,state='missing')
ping_red:
description: r1 trying to reach srv
nodes: [ r1 ]
plugin: ping('srv')
ping_blue:
description: r2 trying to reach srv
nodes: [ r2 ]
plugin: ping('srv')
ping_s2s:
description: r1 should not be able to reach r2
nodes: [ r1 ]
plugin: ping('r2',expect='fail')