ip address 10.0.1.1/24
ip ospf cost 100
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
interface r1-eth1 vrf blue
ip address 10.0.10.1/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
!
interface r1-eth2 vrf green
ip address 10.0.91.1/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
!
router ospf
"10.0.94.0/24":[
{
"prefix":"10.0.94.0/24",
- "prefixLen":24,
"protocol":"bgp",
"vrfName":"green",
- "selected":true,
- "destSelected":true,
- "distance":20,
"metric":34,
"installed":true,
- "table":12,
- "internalStatus":16,
- "internalFlags":8,
- "internalNextHopNum":1,
- "internalNextHopActiveNum":1,
- "nexthopGroupId":"*",
- "installedNexthopGroupId":"*",
- "uptime":"*",
"nexthops":[
{
- "flags":3,
- "fib":true,
"ip":"10.0.10.5",
- "afi":"ipv4",
"interfaceName":"r1-eth1",
- "vrf":"blue",
- "active":true,
- "weight":1
+ "vrf":"blue"
}
]
}
"10.0.94.0/24":[
{
"prefix":"10.0.94.0/24",
- "prefixLen":24,
"protocol":"bgp",
"vrfName":"green",
- "selected":true,
- "destSelected":true,
- "distance":20,
"metric":136,
"installed":true,
- "table":12,
- "internalStatus":16,
- "internalFlags":8,
- "internalNextHopNum":1,
- "internalNextHopActiveNum":1,
- "nexthopGroupId":"*",
- "installedNexthopGroupId":"*",
- "uptime":"*",
"nexthops":[
{
- "flags":3,
- "fib":true,
"ip":"10.0.1.2",
- "afi":"ipv4",
"interfaceName":"r1-eth0",
- "vrf":"default",
- "active":true,
- "weight":1
+ "vrf":"default"
}
]
}
"10.0.94.0/24":[
{
"prefix":"10.0.94.0/24",
- "prefixLen":24,
"protocol":"bgp",
"vrfName":"green",
- "selected":true,
- "destSelected":true,
- "distance":20,
"metric":1138,
"installed":true,
- "table":12,
- "internalStatus":16,
- "internalFlags":8,
- "internalNextHopNum":1,
- "internalNextHopActiveNum":1,
- "nexthopGroupId":"*",
- "installedNexthopGroupId":"*",
- "uptime":"*",
"nexthops":[
{
- "flags":3,
- "fib":true,
"ip":"10.0.1.2",
- "afi":"ipv4",
"interfaceName":"r1-eth0",
- "vrf":"default",
- "active":true,
- "weight":1
+ "vrf":"default"
}
]
}
"10.0.94.0/24":[
{
"prefix":"10.0.94.0/24",
- "prefixLen":24,
"protocol":"bgp",
"vrfName":"green",
- "selected":true,
- "destSelected":true,
- "distance":20,
"metric":1218,
"installed":true,
- "table":12,
- "internalStatus":16,
- "internalFlags":8,
- "internalNextHopNum":1,
- "internalNextHopActiveNum":1,
- "nexthopGroupId":"*",
- "installedNexthopGroupId":"*",
- "uptime":"*",
"nexthops":[
{
- "flags":3,
- "fib":true,
"ip":"10.0.1.2",
- "afi":"ipv4",
"interfaceName":"r1-eth0",
- "vrf":"default",
- "active":true,
- "weight":1
+ "vrf":"default"
}
]
}
"10.0.94.0/24":[
{
"prefix":"10.0.94.0/24",
- "prefixLen":24,
"protocol":"bgp",
"vrfName":"green",
- "selected":true,
- "destSelected":true,
- "distance":20,
"metric":238,
"installed":true,
- "table":12,
- "internalStatus":16,
- "internalFlags":8,
- "internalNextHopNum":1,
- "internalNextHopActiveNum":1,
- "nexthopGroupId":"*",
- "installedNexthopGroupId":"*",
- "uptime":"*",
"nexthops":[
{
- "flags":3,
- "fib":true,
"ip":"10.0.1.2",
- "afi":"ipv4",
"interfaceName":"r1-eth0",
- "vrf":"default",
- "active":true,
- "weight":1
+ "vrf":"default"
}
]
}
"10.0.94.0/24":[
{
"prefix":"10.0.94.0/24",
- "prefixLen":24,
"protocol":"bgp",
"vrfName":"green",
- "selected":true,
- "destSelected":true,
- "distance":20,
"metric":136,
"installed":true,
- "table":12,
- "internalStatus":16,
- "internalFlags":8,
- "internalNextHopNum":1,
- "internalNextHopActiveNum":1,
- "nexthopGroupId":"*",
- "installedNexthopGroupId":"*",
- "uptime":"*",
"nexthops":[
{
- "flags":3,
- "fib":true,
"ip":"10.0.10.5",
- "afi":"ipv4",
"interfaceName":"r1-eth1",
- "vrf":"blue",
- "active":true,
- "weight":1
+ "vrf":"blue"
}
]
}
ip address 10.0.1.2/24
ip ospf cost 100
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
interface r2-eth1 vrf blue
ip address 10.0.20.2/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
interface r2-eth2 vrf green
ip address 10.0.70.2/24
ip ospf cost 1000
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
router ospf
ospf router-id 10.0.255.2
ip address 10.0.3.3/24
ip ospf cost 100
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
interface r3-eth1 vrf blue
ip address 10.0.30.3/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
interface r3-eth2 vrf green
ip address 10.0.80.3/24
ip ospf cost 1000
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
router ospf
ospf router-id 10.0.255.3
ip address 10.0.3.4/24
ip ospf cost 100
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
interface r4-eth1 vrf blue
ip address 10.0.40.4/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
interface r4-eth2 vrf green
ip address 10.0.94.4/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
router ospf
ospf router-id 10.0.255.4
interface ra-eth0
ip address 10.0.50.5/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
interface ra-eth1
ip address 10.0.10.5/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
interface ra-eth2
ip address 10.0.20.5/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
router ospf
ospf router-id 10.0.255.5
interface rb-eth0
ip address 10.0.50.6/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
interface rb-eth1
ip address 10.0.30.6/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
interface rb-eth2
ip address 10.0.40.6/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
router ospf
ospf router-id 10.0.255.6
interface rc-eth0
ip address 10.0.70.7/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
interface rc-eth1
ip address 10.0.80.7/24
ip ospf hello-interval 1
- ip ospf dead-interval 30
+ ip ospf dead-interval 40
!
router ospf
ospf router-id 10.0.255.7
assert result is None, assertmsg
-def test_link_1_2_4_down():
+def test_link_1_2_4_down_3_up():
"Test path R1 -> R2 -> Rc -> R3 -> R4"
tgen = get_topogen()
assert result is None, assertmsg
-def test_link_1_4_down():
+def test_link_1_4_down_2_up():
"Test path R1 -> R2 -> Ra -> Rb -> R3 -> R4"
tgen = get_topogen()
test_func = partial(
topotest.router_json_cmp, r1, "show ip route vrf green 10.0.94.2 json", expected
)
- _, result = topotest.run_and_expect(test_func, None, count=60, wait=1)
+ _, result = topotest.run_and_expect(test_func, None, count=120, wait=2)
assertmsg = "r1 JSON output mismatches"
assert result is None, assertmsg
-def test_link_4_down():
+def test_link_4_down_1_up():
"Test path R1 -> Ra -> Rb -> R3 -> R4"
tgen = get_topogen()
test_func = partial(
topotest.router_json_cmp, r1, "show ip route vrf green 10.0.94.2 json", expected
)
- _, result = topotest.run_and_expect(test_func, None, count=60, wait=1)
+ _, result = topotest.run_and_expect(test_func, None, count=120, wait=2)
assertmsg = "r1 JSON output mismatches"
assert result is None, assertmsg
test_func = partial(
topotest.router_json_cmp, r1, "show ip route vrf green 10.0.94.2 json", expected
)
- _, result = topotest.run_and_expect(test_func, None, count=60, wait=1)
+ _, result = topotest.run_and_expect(test_func, None, count=120, wait=2)
assertmsg = "r1 JSON output mismatches"
assert result is None, assertmsg