"tcpdump -nni r1-eth0 -s 0 -w {} &".format(pcap_file), stdout=None
)
- for rname, router in tgen.routers().items():
+ for _, (rname, router) in enumerate(tgen.routers().items(), 1):
logger.info("Loading router %s" % rname)
router.load_frr_config(
os.path.join(CWD, "{}/frr.conf".format(rname)),
+++ /dev/null
-! debug bgp neighbor-events
-! debug bgp updates
-! debug bgp zebra
-router bgp 65000
- bgp router-id 192.168.100.21
- bgp log-neighbor-changes
- no bgp default ipv4-unicast
- no bgp ebgp-requires-policy
- neighbor 192.168.100.41 remote-as 65000
- neighbor 192.168.100.41 capability extended-nexthop
- neighbor 192.168.100.61 remote-as 65500
- neighbor 192.168.100.61 capability extended-nexthop
- !
- address-family l2vpn evpn
- neighbor 192.168.100.41 activate
- neighbor 192.168.100.41 route-map rmap_r1 in
- neighbor 192.168.100.61 activate
- neighbor 192.168.100.61 route-map rmap_r3 in
- advertise-all-vni
- exit-address-family
-!
-router bgp 65000 vrf r1-vrf-101
- bgp router-id 192.168.102.21
- bgp log-neighbor-changes
- no bgp network import-check
- address-family ipv4 unicast
- network 192.168.102.21/32
- exit-address-family
- address-family ipv6 unicast
- network fd00::1/128
- exit-address-family
- address-family l2vpn evpn
- rd 65000:101
- route-target both 65:101
- advertise ipv4 unicast
- advertise ipv6 unicast
- exit-address-family
- !
-route-map rmap_r3 deny 1
- match evpn vni 102
-exit
-route-map rmap_r1 permit 1
- match evpn vni 101
-exit
--- /dev/null
+! debug zebra vxlan
+! debug zebra kernel
+! debug zebra dplane
+! debug zebra rib
+! debug bgp neighbor-events
+! debug bgp updates
+! debug bgp zebra
+vrf r1-vrf-101
+ vni 101
+ exit-vrf
+!
+interface r1-eth0
+ ip address 192.168.100.21/24
+!
+interface loop101 vrf r1-vrf-101
+ ip address 192.168.102.21/32
+ ipv6 address fd00::1/128
+!
+router bgp 65000
+ bgp router-id 192.168.100.21
+ bgp log-neighbor-changes
+ no bgp default ipv4-unicast
+ no bgp ebgp-requires-policy
+ neighbor 192.168.100.41 remote-as 65000
+ neighbor 192.168.100.41 capability extended-nexthop
+ neighbor 192.168.100.61 remote-as 65500
+ neighbor 192.168.100.61 capability extended-nexthop
+ !
+ address-family l2vpn evpn
+ neighbor 192.168.100.41 activate
+ neighbor 192.168.100.41 route-map rmap_r1 in
+ neighbor 192.168.100.61 activate
+ neighbor 192.168.100.61 route-map rmap_r3 in
+ advertise-all-vni
+ exit-address-family
+!
+router bgp 65000 vrf r1-vrf-101
+ bgp router-id 192.168.102.21
+ bgp log-neighbor-changes
+ no bgp network import-check
+ address-family ipv4 unicast
+ network 192.168.102.21/32
+ exit-address-family
+ address-family ipv6 unicast
+ network fd00::1/128
+ exit-address-family
+ address-family l2vpn evpn
+ rd 65000:101
+ route-target both 65:101
+ advertise ipv4 unicast
+ advertise ipv6 unicast
+ exit-address-family
+ !
+route-map rmap_r3 deny 1
+ match evpn vni 102
+exit
+route-map rmap_r1 permit 1
+ match evpn vni 101
+exit
+
+
+++ /dev/null
-log stdout
-
-hostname r1
-password zebra
-
-! debug zebra vxlan
-! debug zebra kernel
-! debug zebra dplane
-! debug zebra rib
-log stdout
-vrf r1-vrf-101
- vni 101
- exit-vrf
-!
-interface r1-eth0
- ip address 192.168.100.21/24
-!
-interface loop101 vrf r1-vrf-101
- ip address 192.168.102.21/32
- ipv6 address fd00::1/128
-!
-
-
+++ /dev/null
-! debug bgp neighbor-events
-! debug bgp updates
-! debug bgp zebra
-router bgp 65000
- bgp router-id 192.168.100.41
- bgp log-neighbor-changes
- no bgp default ipv4-unicast
- neighbor 192.168.100.21 peer-group
- neighbor 192.168.100.21 remote-as 65000
- neighbor 192.168.100.21 capability extended-nexthop
- !
- address-family l2vpn evpn
- neighbor 192.168.100.21 activate
- advertise-all-vni
- exit-address-family
-!
-router bgp 65000 vrf r2-vrf-101
- bgp router-id 192.168.101.41
- bgp log-neighbor-changes
- no bgp network import-check
- address-family ipv4 unicast
- network 192.168.101.41/32
- network 192.168.102.41/32
- exit-address-family
- address-family ipv6 unicast
- network fd00::2/128
- network fd00::3/128
- exit-address-family
- address-family l2vpn evpn
- rd 65000:201
- route-target both 65:101
- advertise ipv4 unicast route-map rmap4
- advertise ipv6 unicast route-map rmap6
- exit-address-family
- !
-access-list acl4_1 seq 10 permit 192.168.101.41/32
-access-list acl4_2 seq 10 permit 192.168.102.41/32
-ipv6 access-list acl6_1 seq 10 permit fd00::2/128
-ipv6 access-list acl6_2 seq 10 permit fd00::3/128
-route-map rmap4 permit 1
- match ip address acl4_1
-exit
-route-map rmap4 deny 2
- match ip address acl4_2
-exit
-route-map rmap6 permit 1
- match ipv6 address acl6_1
-exit
-route-map rmap6 deny 2
- match ipv6 address acl6_2
-exit
--- /dev/null
+! debug zebra vxlan
+! debug bgp neighbor-events
+! debug bgp updates
+! debug bgp zebra
+
+vrf r2-vrf-101
+ vni 101
+ exit-vrf
+!
+interface loop101 vrf r2-vrf-101
+ ip address 192.168.101.41/32
+ ipv6 address fd00::2/128
+!
+interface r2-eth0
+ ip address 192.168.100.41/24
+!
+router bgp 65000
+ bgp router-id 192.168.100.41
+ bgp log-neighbor-changes
+ no bgp default ipv4-unicast
+ neighbor 192.168.100.21 peer-group
+ neighbor 192.168.100.21 remote-as 65000
+ neighbor 192.168.100.21 capability extended-nexthop
+ !
+ address-family l2vpn evpn
+ neighbor 192.168.100.21 activate
+ advertise-all-vni
+ exit-address-family
+!
+router bgp 65000 vrf r2-vrf-101
+ bgp router-id 192.168.101.41
+ bgp log-neighbor-changes
+ no bgp network import-check
+ address-family ipv4 unicast
+ network 192.168.101.41/32
+ network 192.168.102.41/32
+ exit-address-family
+ address-family ipv6 unicast
+ network fd00::2/128
+ network fd00::3/128
+ exit-address-family
+ address-family l2vpn evpn
+ rd 65000:201
+ route-target both 65:101
+ advertise ipv4 unicast route-map rmap4
+ advertise ipv6 unicast route-map rmap6
+ exit-address-family
+ !
+access-list acl4_1 seq 10 permit 192.168.101.41/32
+access-list acl4_2 seq 10 permit 192.168.102.41/32
+ipv6 access-list acl6_1 seq 10 permit fd00::2/128
+ipv6 access-list acl6_2 seq 10 permit fd00::3/128
+route-map rmap4 permit 1
+ match ip address acl4_1
+exit
+route-map rmap4 deny 2
+ match ip address acl4_2
+exit
+route-map rmap6 permit 1
+ match ipv6 address acl6_1
+exit
+route-map rmap6 deny 2
+ match ipv6 address acl6_2
+exit
+
+++ /dev/null
-log stdout
-
-hostname r2
-password zebra
-
-! debug zebra vxlan
-
-vrf r2-vrf-101
- vni 101
- exit-vrf
-!
-interface loop101 vrf r2-vrf-101
- ip address 192.168.101.41/32
- ipv6 address fd00::2/128
-!
-interface r2-eth0
- ip address 192.168.100.41/24
-!
-
+++ /dev/null
-! debug bgp neighbor-events
-! debug bgp updates
-! debug bgp zebra
-router bgp 65500
- bgp router-id 192.168.100.61
- bgp log-neighbor-changes
- no bgp default ipv4-unicast
- no bgp ebgp-requires-policy
- neighbor 192.168.100.21 remote-as 65000
- neighbor 192.168.100.21 capability extended-nexthop
- !
- address-family l2vpn evpn
- neighbor 192.168.100.21 activate
- advertise-all-vni
- exit-address-family
-!
-router bgp 65000 vrf r3-vrf-102
- bgp router-id 192.168.100.61
- bgp log-neighbor-changes
- no bgp network import-check
- address-family ipv4 unicast
- network 192.168.102.102/32
- exit-address-family
- address-family ipv6 unicast
- network fd00:102::1/128
- exit-address-family
- address-family l2vpn evpn
- rd 65000:302
- route-target both 65:101
- advertise ipv4 unicast
- advertise ipv6 unicast
- exit-address-family
- !
--- /dev/null
+! debug bgp neighbor-events
+! debug bgp updates
+! debug bgp zebra
+vrf r3-vrf-102
+ vni 102
+ exit-vrf
+!
+interface r3-eth0
+ ip address 192.168.100.61/24
+!
+interface loop102 vrf r3-vrf-102
+ ip address 192.168.102.61/32
+ ipv6 address fd00:6::1/128
+!
+router bgp 65500
+ bgp router-id 192.168.100.61
+ bgp log-neighbor-changes
+ no bgp default ipv4-unicast
+ no bgp ebgp-requires-policy
+ neighbor 192.168.100.21 remote-as 65000
+ neighbor 192.168.100.21 capability extended-nexthop
+ !
+ address-family l2vpn evpn
+ neighbor 192.168.100.21 activate
+ advertise-all-vni
+ exit-address-family
+!
+router bgp 65000 vrf r3-vrf-102
+ bgp router-id 192.168.100.61
+ bgp log-neighbor-changes
+ no bgp network import-check
+ address-family ipv4 unicast
+ network 192.168.102.102/32
+ exit-address-family
+ address-family ipv6 unicast
+ network fd00:102::1/128
+ exit-address-family
+ address-family l2vpn evpn
+ rd 65000:302
+ route-target both 65:101
+ advertise ipv4 unicast
+ advertise ipv6 unicast
+ exit-address-family
+ !
+
+
+++ /dev/null
-vrf r3-vrf-102
- vni 102
- exit-vrf
-!
-interface r3-eth0
- ip address 192.168.100.61/24
-!
-interface loop102 vrf r3-vrf-102
- ip address 192.168.102.61/32
- ipv6 address fd00:6::1/128
-!
-
-
tgen.net["r1"].cmd_raises("ip -n r1-vrf-101 link set bridge-101 up")
tgen.net["r1"].cmd_raises("ip -n r1-vrf-101 link set vxlan-101 up")
- for rname, router in router_list.items():
+ for rname, router in tgen.routers().items():
+ logger.info("Loading router %s" % rname)
if rname == "r1":
router.use_netns_vrf()
- router.load_config(
- TopoRouter.RD_ZEBRA, os.path.join(CWD, "{}/zebra.conf".format(rname))
- )
+ router.load_frr_config(os.path.join(CWD, "{}/frr.conf".format(rname)))
else:
- router.load_config(
- TopoRouter.RD_ZEBRA, os.path.join(CWD, "{}/zebra.conf".format(rname))
- )
- router.load_config(
- TopoRouter.RD_BGP, os.path.join(CWD, "{}/bgpd.conf".format(rname))
- )
+ router.load_frr_config(os.path.join(CWD, "{}/frr.conf".format(rname)))
# Initialize all routers.
tgen.start_router()