diff --git a/tests/topotests/nhrp_redundancy/host/zebra.conf b/tests/topotests/nhrp_redundancy/host/frr.conf similarity index 100% rename from tests/topotests/nhrp_redundancy/host/zebra.conf rename to tests/topotests/nhrp_redundancy/host/frr.conf diff --git a/tests/topotests/nhrp_redundancy/nhc1/zebra.conf b/tests/topotests/nhrp_redundancy/nhc1/frr.conf similarity index 51% rename from tests/topotests/nhrp_redundancy/nhc1/zebra.conf rename to tests/topotests/nhrp_redundancy/nhc1/frr.conf index 07d9175418ad..98e848bccf85 100644 --- a/tests/topotests/nhrp_redundancy/nhc1/zebra.conf +++ b/tests/topotests/nhrp_redundancy/nhc1/frr.conf @@ -1,4 +1,5 @@ ip forwarding +!debug nhrp all interface nhc1-eth0 ip address 192.168.2.4/24 ! @@ -7,10 +8,18 @@ interface nhc1-gre0 ip address 172.16.1.4/32 no link-detect ipv6 nd suppress-ra + ip nhrp holdtime 10 + ip nhrp network-id 42 + ip nhrp registration no-unique + ip nhrp nhs dynamic nbma 192.168.1.1 + ip nhrp nhs dynamic nbma 192.168.1.2 + ip nhrp nhs dynamic nbma 192.168.1.3 + ip nhrp shortcut + tunnel source nhc1-eth0 ! interface nhc1-eth1 ip address 10.4.4.4/24 ! ip route 0.0.0.0/0 172.16.1.1 50 ip route 0.0.0.0/0 172.16.1.2 60 -ip route 0.0.0.0/0 172.16.1.3 70 \ No newline at end of file +ip route 0.0.0.0/0 172.16.1.3 70 diff --git a/tests/topotests/nhrp_redundancy/nhc1/nhrpd.conf b/tests/topotests/nhrp_redundancy/nhc1/nhrpd.conf deleted file mode 100644 index a0862f77ef7d..000000000000 --- a/tests/topotests/nhrp_redundancy/nhc1/nhrpd.conf +++ /dev/null @@ -1,11 +0,0 @@ -!debug nhrp all -interface nhc1-gre0 - ip nhrp holdtime 10 - ip nhrp network-id 42 - ip nhrp registration no-unique - ip nhrp nhs dynamic nbma 192.168.1.1 - ip nhrp nhs dynamic nbma 192.168.1.2 - ip nhrp nhs dynamic nbma 192.168.1.3 - ip nhrp shortcut - tunnel source nhc1-eth0 -exit diff --git a/tests/topotests/nhrp_redundancy/nhc2/zebra.conf b/tests/topotests/nhrp_redundancy/nhc2/frr.conf similarity index 56% rename from tests/topotests/nhrp_redundancy/nhc2/zebra.conf rename to tests/topotests/nhrp_redundancy/nhc2/frr.conf index 30ea6d4d1d56..818dd48251b7 100644 --- a/tests/topotests/nhrp_redundancy/nhc2/zebra.conf +++ b/tests/topotests/nhrp_redundancy/nhc2/frr.conf @@ -1,4 +1,5 @@ ip forwarding +!debug nhrp all interface nhc2-eth0 ip address 192.168.2.5/24 ! @@ -7,6 +8,14 @@ interface nhc2-gre0 ip address 172.16.1.5/32 no link-detect ipv6 nd suppress-ra + ip nhrp holdtime 10 + ip nhrp network-id 42 + ip nhrp nhs dynamic nbma 192.168.1.1 + ip nhrp nhs dynamic nbma 192.168.1.2 + ip nhrp nhs dynamic nbma 192.168.1.3 + ip nhrp registration no-unique + ip nhrp shortcut + tunnel source nhc2-eth0 ! interface nhc2-eth1 ip address 10.5.5.5/24 diff --git a/tests/topotests/nhrp_redundancy/nhc2/nhrpd.conf b/tests/topotests/nhrp_redundancy/nhc2/nhrpd.conf deleted file mode 100644 index 16a6d87c273f..000000000000 --- a/tests/topotests/nhrp_redundancy/nhc2/nhrpd.conf +++ /dev/null @@ -1,11 +0,0 @@ -!debug nhrp all -interface nhc2-gre0 - ip nhrp holdtime 10 - ip nhrp network-id 42 - ip nhrp nhs dynamic nbma 192.168.1.1 - ip nhrp nhs dynamic nbma 192.168.1.2 - ip nhrp nhs dynamic nbma 192.168.1.3 - ip nhrp registration no-unique - ip nhrp shortcut - tunnel source nhc2-eth0 -exit diff --git a/tests/topotests/nhrp_redundancy/nhs1/zebra.conf b/tests/topotests/nhrp_redundancy/nhs1/frr.conf similarity index 61% rename from tests/topotests/nhrp_redundancy/nhs1/zebra.conf rename to tests/topotests/nhrp_redundancy/nhs1/frr.conf index 718e01b99184..583d01434852 100644 --- a/tests/topotests/nhrp_redundancy/nhs1/zebra.conf +++ b/tests/topotests/nhrp_redundancy/nhs1/frr.conf @@ -1,12 +1,19 @@ ip forwarding +!debug nhrp all interface nhs1-eth0 ip address 192.168.1.1/24 ! ip route 192.168.2.0/24 192.168.1.6 +nhrp nflog-group 1 interface nhs1-gre0 ip address 172.16.1.1/32 no link-detect ipv6 nd suppress-ra + ip nhrp holdtime 10 + ip nhrp network-id 42 + ip nhrp registration no-unique + ip nhrp redirect + tunnel source nhs1-eth0 ! ip route 10.4.4.0/24 172.16.1.4 ip route 10.5.5.0/24 172.16.1.5 diff --git a/tests/topotests/nhrp_redundancy/nhs1/nhrpd.conf b/tests/topotests/nhrp_redundancy/nhs1/nhrpd.conf deleted file mode 100644 index c0c8c28f94c9..000000000000 --- a/tests/topotests/nhrp_redundancy/nhs1/nhrpd.conf +++ /dev/null @@ -1,9 +0,0 @@ -!debug nhrp all -nhrp nflog-group 1 -interface nhs1-gre0 - ip nhrp holdtime 10 - ip nhrp network-id 42 - ip nhrp registration no-unique - ip nhrp redirect - tunnel source nhs1-eth0 -exit diff --git a/tests/topotests/nhrp_redundancy/nhs2/zebra.conf b/tests/topotests/nhrp_redundancy/nhs2/frr.conf similarity index 61% rename from tests/topotests/nhrp_redundancy/nhs2/zebra.conf rename to tests/topotests/nhrp_redundancy/nhs2/frr.conf index 6001bf21c0ce..a6e0a98e6b37 100644 --- a/tests/topotests/nhrp_redundancy/nhs2/zebra.conf +++ b/tests/topotests/nhrp_redundancy/nhs2/frr.conf @@ -1,12 +1,19 @@ ip forwarding +!debug nhrp all interface nhs2-eth0 ip address 192.168.1.2/24 ! ip route 192.168.2.0/24 192.168.1.6 +nhrp nflog-group 1 interface nhs2-gre0 ip address 172.16.1.2/32 no link-detect ipv6 nd suppress-ra + ip nhrp holdtime 10 + ip nhrp network-id 42 + ip nhrp registration no-unique + ip nhrp redirect + tunnel source nhs2-eth0 ! ip route 10.4.4.0/24 172.16.1.4 ip route 10.5.5.0/24 172.16.1.5 diff --git a/tests/topotests/nhrp_redundancy/nhs2/nhrpd.conf b/tests/topotests/nhrp_redundancy/nhs2/nhrpd.conf deleted file mode 100644 index df86d2798e2a..000000000000 --- a/tests/topotests/nhrp_redundancy/nhs2/nhrpd.conf +++ /dev/null @@ -1,9 +0,0 @@ -!debug nhrp all -nhrp nflog-group 1 -interface nhs2-gre0 - ip nhrp holdtime 10 - ip nhrp network-id 42 - ip nhrp registration no-unique - ip nhrp redirect - tunnel source nhs2-eth0 -exit diff --git a/tests/topotests/nhrp_redundancy/nhs3/zebra.conf b/tests/topotests/nhrp_redundancy/nhs3/frr.conf similarity index 61% rename from tests/topotests/nhrp_redundancy/nhs3/zebra.conf rename to tests/topotests/nhrp_redundancy/nhs3/frr.conf index 7c1543881785..e965baf32769 100644 --- a/tests/topotests/nhrp_redundancy/nhs3/zebra.conf +++ b/tests/topotests/nhrp_redundancy/nhs3/frr.conf @@ -1,12 +1,19 @@ ip forwarding +!debug nhrp all interface nhs3-eth0 ip address 192.168.1.3/24 ! ip route 192.168.2.0/24 192.168.1.6 +nhrp nflog-group 1 interface nhs3-gre0 ip address 172.16.1.3/32 no link-detect ipv6 nd suppress-ra + ip nhrp holdtime 10 + ip nhrp network-id 42 + ip nhrp registration no-unique + ip nhrp redirect + tunnel source nhs3-eth0 ! ip route 10.4.4.0/24 172.16.1.4 ip route 10.5.5.0/24 172.16.1.5 \ No newline at end of file diff --git a/tests/topotests/nhrp_redundancy/nhs3/nhrpd.conf b/tests/topotests/nhrp_redundancy/nhs3/nhrpd.conf deleted file mode 100644 index e7c3504f6584..000000000000 --- a/tests/topotests/nhrp_redundancy/nhs3/nhrpd.conf +++ /dev/null @@ -1,9 +0,0 @@ -!debug nhrp all -nhrp nflog-group 1 -interface nhs3-gre0 - ip nhrp holdtime 10 - ip nhrp network-id 42 - ip nhrp registration no-unique - ip nhrp redirect - tunnel source nhs3-eth0 -exit diff --git a/tests/topotests/nhrp_redundancy/router/zebra.conf b/tests/topotests/nhrp_redundancy/router/frr.conf similarity index 100% rename from tests/topotests/nhrp_redundancy/router/zebra.conf rename to tests/topotests/nhrp_redundancy/router/frr.conf diff --git a/tests/topotests/nhrp_redundancy/test_nhrp_redundancy.py b/tests/topotests/nhrp_redundancy/test_nhrp_redundancy.py index 06777aaa23dd..d4cf98596ced 100644 --- a/tests/topotests/nhrp_redundancy/test_nhrp_redundancy.py +++ b/tests/topotests/nhrp_redundancy/test_nhrp_redundancy.py @@ -29,38 +29,38 @@ """ TOPOLOGY = """ -+------------+ +------------+ +------------+ -| | | | | | -| | | | | | -| NHS 1 | | NHS 2 | | NHS 3 | -| | | | | | -+-----+------+ +-----+------+ +-----+------+ - |.1 |.2 |.3 - | | | - | | 192.168.1.0/24 | -------+-------------------------------+------------------+-------------+------ - | - |.6 - GRE P2MP between all NHS and NHC +-----+------+ - 172.16.1.x/32 | | - | | - | Router | - | | - +-----+------+ - | - | - ---------+----------------+-------------+------ - | 192.168.2.0/24 | - | | - | |.4 |.5 -+------------+ | +-------+----+ +------+-----+ | -| | | | | | | | -| | +--------+ | | | | ++------------+ +------------+ +------------+ +| | | | | | +| | | | | | +| NHS 1 | | NHS 2 | | NHS 3 | +| | | | | | ++-----+------+ +-----+------+ +-----+------+ + |.1 |.2 |.3 + | | | + | | 192.168.1.0/24 | +------+-------------------------------+------------------+-------------+------ + | + |.6 + GRE P2MP between all NHS and NHC +-----+------+ + 172.16.1.x/32 | | + | | + | Router | + | | + +-----+------+ + | + | + ---------+----------------+-------------+------ + | 192.168.2.0/24 | + | | + | |.4 |.5 ++------------+ | +-------+----+ +------+-----+ | +| | | | | | | | +| | +--------+ | | | | | Host |.7 | | NHC 1 | | NHC 2 +-----+10.5.5.0/24 -| +---------+ | | | | | -+------------+ | +------------+ +------------+ | - | | - 10.4.4.0/24 +| +---------+ | | | | | ++------------+ | +------------+ +------------+ | + | | + 10.4.4.0/24 """ # Save the Current Working Directory to find configuration files. @@ -148,8 +148,8 @@ def _populate_iface(): def _verify_iptables(): tgen = get_topogen() # Verify iptables is installed. Required for shortcuts - rc, _, _ = tgen.net["nhs1"].cmd_status("iptables") - return False if rc == 127 else True + rc, _, _ = tgen.net["nhs1"].cmd_status("iptables -V") + return True if rc == 0 else False def setup_module(mod): @@ -167,14 +167,8 @@ def setup_module(mod): _populate_iface() for rname, router in router_list.items(): - router.load_config( - TopoRouter.RD_ZEBRA, - os.path.join(CWD, "{}/zebra.conf".format(rname)), - ) - if rname in ("nhs1", "nhs2", "nhs3", "nhc1", "nhc2"): - router.load_config( - TopoRouter.RD_NHRP, os.path.join(CWD, "{}/nhrpd.conf".format(rname)) - ) + logger.info("Loading router %s" % rname) + router.load_frr_config(os.path.join(CWD, "{}/frr.conf".format(rname))) # Initialize all routers. tgen.start_router()