Adds scaled env. for multicast testing.

Env. can support at most 4 aggregation switches (controlled by --a).
Each aggregation device has 48 ports.

netcfg is autogenerated by trellis_mcast_netcfg_gen.py.

Additionally, makes the sleep configurable,
puts in background dhclient, improves .gitignore
and extends dhcp configs.

Change-Id: I03bd0d3e94767b6b8846653989e5f9c452e7dc65
diff --git a/.gitignore b/.gitignore
index c3b91d0..443910e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,6 +9,8 @@
 trellis/.vagrant/
 # virtualbox
 trellis/*.log
+# patch
+*.txt
 
 trellis/zebradbgp1.conf
 trellis/zebradbgp2.conf
diff --git a/trellis/dhcpd.conf b/trellis/dhcpd.conf
index 35cb093..6b80b73 100644
--- a/trellis/dhcpd.conf
+++ b/trellis/dhcpd.conf
@@ -44,6 +44,25 @@
   option routers 10.11.2.254;
 }
 
+subnet 10.100.1.0 netmask 255.255.255.0 {
+  range 10.100.1.100 10.100.1.240;
+  option routers 10.100.1.254;
+}
+
+subnet 10.100.2.0 netmask 255.255.255.0 {
+  range 10.100.2.100 10.100.2.240;
+  option routers 10.100.2.254;
+}
+
+subnet 10.100.3.0 netmask 255.255.255.0 {
+  range 10.100.3.100 10.100.3.240;
+  option routers 10.100.3.254;
+}
+
+subnet 10.100.4.0 netmask 255.255.255.0 {
+  range 10.100.4.100 10.100.4.240;
+  option routers 10.100.4.254;
+}
 
 host h1 {
   hardware ethernet 00:aa:00:00:00:01;
diff --git a/trellis/dhcpd6.conf b/trellis/dhcpd6.conf
index dccb5ec..6910e4c 100644
--- a/trellis/dhcpd6.conf
+++ b/trellis/dhcpd6.conf
@@ -36,6 +36,25 @@
   option dhcp6.next-hop 2000::bff;
 }
 
+subnet6 2002::100/120 {
+  range6 2002::160 2002::1fe;
+  option dhcp6.next-hop 2002::1ff;
+}
+
+subnet6 2002::200/120 {
+  range6 2002::260 2002::2fe;
+  option dhcp6.next-hop 2002::2ff;
+}
+
+subnet6 2002::300/120 {
+  range6 2002::360 2002::3fe;
+  option dhcp6.next-hop 2002::3ff;
+}
+
+subnet6 2002::400/120 {
+  range6 2002::460 2002::4fe;
+  option dhcp6.next-hop 2002::4ff;
+}
 
 host h1v6 {
   hardware ethernet 00:bb:00:00:00:01;
diff --git a/trellis/trellis_mcast.json b/trellis/trellis_mcast.json
new file mode 100644
index 0000000..c0dee66
--- /dev/null
+++ b/trellis/trellis_mcast.json
@@ -0,0 +1,3910 @@
+{
+   "hosts":{
+      "00:00:00:00:00:20/-1":{
+         "basic":{
+            "latitude":25.0,
+            "name":"acc32",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:65/-1":{
+         "basic":{
+            "latitude":34.0,
+            "name":"acc101",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:92/-1":{
+         "basic":{
+            "latitude":35.0,
+            "name":"acc146",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:59/-1":{
+         "basic":{
+            "latitude":22.0,
+            "name":"acc89",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:af/-1":{
+         "basic":{
+            "latitude":25.0,
+            "name":"acc175",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:0d/-1":{
+         "basic":{
+            "latitude":31.0,
+            "name":"acc13",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:0e/-1":{
+         "basic":{
+            "latitude":31.0,
+            "name":"acc14",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:96/-1":{
+         "basic":{
+            "latitude":34.0,
+            "name":"acc150",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:9a/-1":{
+         "basic":{
+            "latitude":32.0,
+            "name":"acc154",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:5f/-1":{
+         "basic":{
+            "latitude":20.0,
+            "name":"acc95",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:15/-1":{
+         "basic":{
+            "latitude":29.0,
+            "name":"acc21",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:be/-1":{
+         "basic":{
+            "latitude":20.0,
+            "name":"acc190",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:7a/-1":{
+         "basic":{
+            "latitude":27.0,
+            "name":"acc122",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:60/-1":{
+         "basic":{
+            "latitude":20.0,
+            "name":"acc96",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:7e/-1":{
+         "basic":{
+            "latitude":26.0,
+            "name":"acc126",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:61/-1":{
+         "basic":{
+            "latitude":35.0,
+            "name":"acc97",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:98/-1":{
+         "basic":{
+            "latitude":33.0,
+            "name":"acc152",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:44/-1":{
+         "basic":{
+            "latitude":29.0,
+            "name":"acc68",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:5d/-1":{
+         "basic":{
+            "latitude":21.0,
+            "name":"acc93",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:39/-1":{
+         "basic":{
+            "latitude":33.0,
+            "name":"acc57",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:38/-1":{
+         "basic":{
+            "latitude":33.0,
+            "name":"acc56",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:52/-1":{
+         "basic":{
+            "latitude":24.0,
+            "name":"acc82",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:5e/-1":{
+         "basic":{
+            "latitude":20.0,
+            "name":"acc94",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:4f/-1":{
+         "basic":{
+            "latitude":25.0,
+            "name":"acc79",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:36/-1":{
+         "basic":{
+            "latitude":34.0,
+            "name":"acc54",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:54/-1":{
+         "basic":{
+            "latitude":24.0,
+            "name":"acc84",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:ab/-1":{
+         "basic":{
+            "latitude":27.0,
+            "name":"acc171",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:97/-1":{
+         "basic":{
+            "latitude":33.0,
+            "name":"acc151",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:b7/-1":{
+         "basic":{
+            "latitude":23.0,
+            "name":"acc183",
+            "longitude":-116.0
+         }
+      },
+      "00:99:00:00:00:01/-1":{
+         "basic":{
+            "latitude":30.766,
+            "name":"dhcp",
+            "longitude":-85.359
+         }
+      },
+      "00:00:00:00:00:48/-1":{
+         "basic":{
+            "latitude":28.0,
+            "name":"acc72",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:9d/-1":{
+         "basic":{
+            "latitude":31.0,
+            "name":"acc157",
+            "longitude":-118.0
+         }
+      },
+      "00:88:00:00:00:04/160":{
+         "basic":{
+            "latitude":36.766,
+            "name":"quagga2",
+            "longitude":-77.359
+         }
+      },
+      "00:00:00:00:00:9e/-1":{
+         "basic":{
+            "latitude":31.0,
+            "name":"acc158",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:9c/-1":{
+         "basic":{
+            "latitude":32.0,
+            "name":"acc156",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:ae/-1":{
+         "basic":{
+            "latitude":26.0,
+            "name":"acc174",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:6d/-1":{
+         "basic":{
+            "latitude":31.0,
+            "name":"acc109",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:58/-1":{
+         "basic":{
+            "latitude":22.0,
+            "name":"acc88",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:79/-1":{
+         "basic":{
+            "latitude":27.0,
+            "name":"acc121",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:3d/-1":{
+         "basic":{
+            "latitude":31.0,
+            "name":"acc61",
+            "longitude":-110.0
+         }
+      },
+      "00:BB:00:00:00:02/-1":{
+         "basic":{
+            "latitude":34.7,
+            "name":"h2v6",
+            "longitude":-92.359
+         }
+      },
+      "00:CC:00:00:00:02/-1":{
+         "basic":{
+            "latitude":30.766,
+            "name":"dh2",
+            "longitude":-81.359
+         }
+      },
+      "00:00:00:00:00:23/-1":{
+         "basic":{
+            "latitude":24.0,
+            "name":"acc35",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:0b/-1":{
+         "basic":{
+            "latitude":32.0,
+            "name":"acc11",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:6c/-1":{
+         "basic":{
+            "latitude":32.0,
+            "name":"acc108",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:66/-1":{
+         "basic":{
+            "latitude":34.0,
+            "name":"acc102",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:67/-1":{
+         "basic":{
+            "latitude":33.0,
+            "name":"acc103",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:5a/-1":{
+         "basic":{
+            "latitude":22.0,
+            "name":"acc90",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:4c/-1":{
+         "basic":{
+            "latitude":26.0,
+            "name":"acc76",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:b3/-1":{
+         "basic":{
+            "latitude":24.0,
+            "name":"acc179",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:a4/-1":{
+         "basic":{
+            "latitude":29.0,
+            "name":"acc164",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:69/-1":{
+         "basic":{
+            "latitude":33.0,
+            "name":"acc105",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:45/-1":{
+         "basic":{
+            "latitude":29.0,
+            "name":"acc69",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:b8/-1":{
+         "basic":{
+            "latitude":22.0,
+            "name":"acc184",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:04/-1":{
+         "basic":{
+            "latitude":34.0,
+            "name":"acc4",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:9f/-1":{
+         "basic":{
+            "latitude":31.0,
+            "name":"acc159",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:31/-1":{
+         "basic":{
+            "latitude":35.0,
+            "name":"acc49",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:73/-1":{
+         "basic":{
+            "latitude":29.0,
+            "name":"acc115",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:a1/-1":{
+         "basic":{
+            "latitude":30.0,
+            "name":"acc161",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:b9/-1":{
+         "basic":{
+            "latitude":22.0,
+            "name":"acc185",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:94/-1":{
+         "basic":{
+            "latitude":34.0,
+            "name":"acc148",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:0a/-1":{
+         "basic":{
+            "latitude":32.0,
+            "name":"acc10",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:90/-1":{
+         "basic":{
+            "latitude":20.0,
+            "name":"acc144",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:4a/-1":{
+         "basic":{
+            "latitude":27.0,
+            "name":"acc74",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:82/-1":{
+         "basic":{
+            "latitude":24.0,
+            "name":"acc130",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:26/-1":{
+         "basic":{
+            "latitude":23.0,
+            "name":"acc38",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:a9/-1":{
+         "basic":{
+            "latitude":27.0,
+            "name":"acc169",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:62/-1":{
+         "basic":{
+            "latitude":35.0,
+            "name":"acc98",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:6e/-1":{
+         "basic":{
+            "latitude":31.0,
+            "name":"acc110",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:14/-1":{
+         "basic":{
+            "latitude":29.0,
+            "name":"acc20",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:78/-1":{
+         "basic":{
+            "latitude":28.0,
+            "name":"acc120",
+            "longitude":-112.0
+         }
+      },
+      "00:AA:00:00:00:04/-1":{
+         "basic":{
+            "latitude":34.766,
+            "name":"h4",
+            "longitude":-87.359
+         }
+      },
+      "00:00:00:00:00:50/-1":{
+         "basic":{
+            "latitude":25.0,
+            "name":"acc80",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:24/-1":{
+         "basic":{
+            "latitude":24.0,
+            "name":"acc36",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:0c/-1":{
+         "basic":{
+            "latitude":32.0,
+            "name":"acc12",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:09/-1":{
+         "basic":{
+            "latitude":33.0,
+            "name":"acc9",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:33/-1":{
+         "basic":{
+            "latitude":35.0,
+            "name":"acc51",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:76/-1":{
+         "basic":{
+            "latitude":28.0,
+            "name":"acc118",
+            "longitude":-114.0
+         }
+      },
+      "00:BB:00:00:00:01/-1":{
+         "basic":{
+            "latitude":36.766,
+            "name":"h1v6",
+            "longitude":-92.359
+         }
+      },
+      "00:00:00:00:00:1a/-1":{
+         "basic":{
+            "latitude":27.0,
+            "name":"acc26",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:18/-1":{
+         "basic":{
+            "latitude":28.0,
+            "name":"acc24",
+            "longitude":-104.0
+         }
+      },
+      "00:AA:00:00:00:05/-1":{
+         "basic":{
+            "latitude":33,
+            "name":"h5",
+            "longitude":-99.359
+         }
+      },
+      "00:00:00:00:00:2f/-1":{
+         "basic":{
+            "latitude":20.0,
+            "name":"acc47",
+            "longitude":-105.0
+         }
+      },
+      "00:BB:00:00:00:05/-1":{
+         "basic":{
+            "latitude":33,
+            "name":"h5v6",
+            "longitude":-101.359
+         }
+      },
+      "00:00:00:00:00:19/-1":{
+         "basic":{
+            "latitude":27.0,
+            "name":"acc25",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:84/-1":{
+         "basic":{
+            "latitude":24.0,
+            "name":"acc132",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:6a/-1":{
+         "basic":{
+            "latitude":32.0,
+            "name":"acc106",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:bd/-1":{
+         "basic":{
+            "latitude":21.0,
+            "name":"acc189",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:72/-1":{
+         "basic":{
+            "latitude":30.0,
+            "name":"acc114",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:5b/-1":{
+         "basic":{
+            "latitude":21.0,
+            "name":"acc91",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:86/-1":{
+         "basic":{
+            "latitude":23.0,
+            "name":"acc134",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:49/-1":{
+         "basic":{
+            "latitude":27.0,
+            "name":"acc73",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:8f/-1":{
+         "basic":{
+            "latitude":20.0,
+            "name":"acc143",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:28/-1":{
+         "basic":{
+            "latitude":22.0,
+            "name":"acc40",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:ad/-1":{
+         "basic":{
+            "latitude":26.0,
+            "name":"acc173",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:27/-1":{
+         "basic":{
+            "latitude":23.0,
+            "name":"acc39",
+            "longitude":-104.0
+         }
+      },
+      "00:AA:00:00:00:01/-1":{
+         "basic":{
+            "latitude":33,
+            "name":"h1",
+            "longitude":-94.359
+         }
+      },
+      "00:00:00:00:00:9b/-1":{
+         "basic":{
+            "latitude":32.0,
+            "name":"acc155",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:7c/-1":{
+         "basic":{
+            "latitude":26.0,
+            "name":"acc124",
+            "longitude":-114.0
+         }
+      },
+      "00:88:00:00:00:01/-1":{
+         "basic":{
+            "latitude":30.766,
+            "name":"upstream1",
+            "longitude":-77.359
+         }
+      },
+      "00:00:00:00:00:06/-1":{
+         "basic":{
+            "latitude":34.0,
+            "name":"acc6",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:21/-1":{
+         "basic":{
+            "latitude":25.0,
+            "name":"acc33",
+            "longitude":-104.0
+         }
+      },
+      "00:BB:00:00:00:04/-1":{
+         "basic":{
+            "latitude":30.766,
+            "name":"h4v6",
+            "longitude":-87.359
+         }
+      },
+      "00:00:00:00:00:29/-1":{
+         "basic":{
+            "latitude":22.0,
+            "name":"acc41",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:57/-1":{
+         "basic":{
+            "latitude":23.0,
+            "name":"acc87",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:8c/-1":{
+         "basic":{
+            "latitude":21.0,
+            "name":"acc140",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:01/-1":{
+         "basic":{
+            "latitude":35.0,
+            "name":"acc1",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:a3/-1":{
+         "basic":{
+            "latitude":29.0,
+            "name":"acc163",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:a2/-1":{
+         "basic":{
+            "latitude":30.0,
+            "name":"acc162",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:8b/-1":{
+         "basic":{
+            "latitude":21.0,
+            "name":"acc139",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:7b/-1":{
+         "basic":{
+            "latitude":27.0,
+            "name":"acc123",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:3e/-1":{
+         "basic":{
+            "latitude":31.0,
+            "name":"acc62",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:89/-1":{
+         "basic":{
+            "latitude":22.0,
+            "name":"acc137",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:07/-1":{
+         "basic":{
+            "latitude":33.0,
+            "name":"acc7",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:8d/-1":{
+         "basic":{
+            "latitude":21.0,
+            "name":"acc141",
+            "longitude":-112.0
+         }
+      },
+      "00:CC:00:00:00:01/-1":{
+         "basic":{
+            "latitude":33,
+            "name":"dh1",
+            "longitude":-96.959
+         }
+      },
+      "00:AA:00:00:00:03/-1":{
+         "basic":{
+            "latitude":36.766,
+            "name":"h3",
+            "longitude":-87.359
+         }
+      },
+      "00:00:00:00:00:a0/-1":{
+         "basic":{
+            "latitude":30.0,
+            "name":"acc160",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:6f/-1":{
+         "basic":{
+            "latitude":31.0,
+            "name":"acc111",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:30/-1":{
+         "basic":{
+            "latitude":20.0,
+            "name":"acc48",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:75/-1":{
+         "basic":{
+            "latitude":29.0,
+            "name":"acc117",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:74/-1":{
+         "basic":{
+            "latitude":29.0,
+            "name":"acc116",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:7f/-1":{
+         "basic":{
+            "latitude":25.0,
+            "name":"acc127",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:2b/-1":{
+         "basic":{
+            "latitude":21.0,
+            "name":"acc43",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:c0/-1":{
+         "basic":{
+            "latitude":20.0,
+            "name":"acc192",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:99/-1":{
+         "basic":{
+            "latitude":33.0,
+            "name":"acc153",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:13/-1":{
+         "basic":{
+            "latitude":29.0,
+            "name":"acc19",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:05/-1":{
+         "basic":{
+            "latitude":34.0,
+            "name":"acc5",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:55/-1":{
+         "basic":{
+            "latitude":23.0,
+            "name":"acc85",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:85/-1":{
+         "basic":{
+            "latitude":23.0,
+            "name":"acc133",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:46/-1":{
+         "basic":{
+            "latitude":28.0,
+            "name":"acc70",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:a7/-1":{
+         "basic":{
+            "latitude":28.0,
+            "name":"acc167",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:1c/-1":{
+         "basic":{
+            "latitude":26.0,
+            "name":"acc28",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:1b/-1":{
+         "basic":{
+            "latitude":27.0,
+            "name":"acc27",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:81/-1":{
+         "basic":{
+            "latitude":25.0,
+            "name":"acc129",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:2c/-1":{
+         "basic":{
+            "latitude":21.0,
+            "name":"acc44",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:02/-1":{
+         "basic":{
+            "latitude":35.0,
+            "name":"acc2",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:4d/-1":{
+         "basic":{
+            "latitude":26.0,
+            "name":"acc77",
+            "longitude":-109.0
+         }
+      },
+      "00:BB:00:00:00:03/-1":{
+         "basic":{
+            "latitude":32.766,
+            "name":"h3v6",
+            "longitude":-87.359
+         }
+      },
+      "00:00:00:00:00:7d/-1":{
+         "basic":{
+            "latitude":26.0,
+            "name":"acc125",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:95/-1":{
+         "basic":{
+            "latitude":34.0,
+            "name":"acc149",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:35/-1":{
+         "basic":{
+            "latitude":34.0,
+            "name":"acc53",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:bb/-1":{
+         "basic":{
+            "latitude":21.0,
+            "name":"acc187",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:a5/-1":{
+         "basic":{
+            "latitude":29.0,
+            "name":"acc165",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:71/-1":{
+         "basic":{
+            "latitude":30.0,
+            "name":"acc113",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:42/-1":{
+         "basic":{
+            "latitude":30.0,
+            "name":"acc66",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:2a/-1":{
+         "basic":{
+            "latitude":22.0,
+            "name":"acc42",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:b6/-1":{
+         "basic":{
+            "latitude":23.0,
+            "name":"acc182",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:3a/-1":{
+         "basic":{
+            "latitude":32.0,
+            "name":"acc58",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:25/-1":{
+         "basic":{
+            "latitude":23.0,
+            "name":"acc37",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:ac/-1":{
+         "basic":{
+            "latitude":26.0,
+            "name":"acc172",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:37/-1":{
+         "basic":{
+            "latitude":33.0,
+            "name":"acc55",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:80/-1":{
+         "basic":{
+            "latitude":25.0,
+            "name":"acc128",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:8a/-1":{
+         "basic":{
+            "latitude":22.0,
+            "name":"acc138",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:43/-1":{
+         "basic":{
+            "latitude":29.0,
+            "name":"acc67",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:bc/-1":{
+         "basic":{
+            "latitude":21.0,
+            "name":"acc188",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:88/-1":{
+         "basic":{
+            "latitude":22.0,
+            "name":"acc136",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:0f/-1":{
+         "basic":{
+            "latitude":31.0,
+            "name":"acc15",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:b1/-1":{
+         "basic":{
+            "latitude":25.0,
+            "name":"acc177",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:5c/-1":{
+         "basic":{
+            "latitude":21.0,
+            "name":"acc92",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:b0/-1":{
+         "basic":{
+            "latitude":25.0,
+            "name":"acc176",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:a6/-1":{
+         "basic":{
+            "latitude":28.0,
+            "name":"acc166",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:a8/-1":{
+         "basic":{
+            "latitude":28.0,
+            "name":"acc168",
+            "longitude":-116.0
+         }
+      },
+      "00:88:00:00:00:03/110":{
+         "basic":{
+            "latitude":32.766,
+            "name":"quagga1",
+            "longitude":-77.359
+         }
+      },
+      "00:00:00:00:00:47/-1":{
+         "basic":{
+            "latitude":28.0,
+            "name":"acc71",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:91/-1":{
+         "basic":{
+            "latitude":35.0,
+            "name":"acc145",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:56/-1":{
+         "basic":{
+            "latitude":23.0,
+            "name":"acc86",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:1e/-1":{
+         "basic":{
+            "latitude":26.0,
+            "name":"acc30",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:2e/-1":{
+         "basic":{
+            "latitude":20.0,
+            "name":"acc46",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:3b/-1":{
+         "basic":{
+            "latitude":32.0,
+            "name":"acc59",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:2d/-1":{
+         "basic":{
+            "latitude":21.0,
+            "name":"acc45",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:34/-1":{
+         "basic":{
+            "latitude":34.0,
+            "name":"acc52",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:3c/-1":{
+         "basic":{
+            "latitude":32.0,
+            "name":"acc60",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:ba/-1":{
+         "basic":{
+            "latitude":22.0,
+            "name":"acc186",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:8e/-1":{
+         "basic":{
+            "latitude":20.0,
+            "name":"acc142",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:17/-1":{
+         "basic":{
+            "latitude":28.0,
+            "name":"acc23",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:70/-1":{
+         "basic":{
+            "latitude":30.0,
+            "name":"acc112",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:11/-1":{
+         "basic":{
+            "latitude":30.0,
+            "name":"acc17",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:32/-1":{
+         "basic":{
+            "latitude":35.0,
+            "name":"acc50",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:68/-1":{
+         "basic":{
+            "latitude":33.0,
+            "name":"acc104",
+            "longitude":-113.0
+         }
+      },
+      "00:99:66:00:00:01/-1":{
+         "basic":{
+            "latitude":30.766,
+            "name":"dhcpv6",
+            "longitude":-83.359
+         }
+      },
+      "00:00:00:00:00:bf/-1":{
+         "basic":{
+            "latitude":20.0,
+            "name":"acc191",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:22/-1":{
+         "basic":{
+            "latitude":24.0,
+            "name":"acc34",
+            "longitude":-106.0
+         }
+      },
+      "00:88:00:00:00:02/-1":{
+         "basic":{
+            "latitude":34.766,
+            "name":"upstream2",
+            "longitude":-77.359
+         }
+      },
+      "00:00:00:00:00:b5/-1":{
+         "basic":{
+            "latitude":23.0,
+            "name":"acc181",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:16/-1":{
+         "basic":{
+            "latitude":28.0,
+            "name":"acc22",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:b4/-1":{
+         "basic":{
+            "latitude":24.0,
+            "name":"acc180",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:63/-1":{
+         "basic":{
+            "latitude":35.0,
+            "name":"acc99",
+            "longitude":-112.0
+         }
+      },
+      "00:00:00:00:00:10/-1":{
+         "basic":{
+            "latitude":30.0,
+            "name":"acc16",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:b2/-1":{
+         "basic":{
+            "latitude":24.0,
+            "name":"acc178",
+            "longitude":-118.0
+         }
+      },
+      "00:00:00:00:00:83/-1":{
+         "basic":{
+            "latitude":24.0,
+            "name":"acc131",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:6b/-1":{
+         "basic":{
+            "latitude":32.0,
+            "name":"acc107",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:1f/-1":{
+         "basic":{
+            "latitude":25.0,
+            "name":"acc31",
+            "longitude":-106.0
+         }
+      },
+      "00:00:00:00:00:4b/-1":{
+         "basic":{
+            "latitude":27.0,
+            "name":"acc75",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:87/-1":{
+         "basic":{
+            "latitude":23.0,
+            "name":"acc135",
+            "longitude":-112.0
+         }
+      },
+      "00:AA:00:00:00:02/-1":{
+         "basic":{
+            "latitude":33,
+            "name":"h2",
+            "longitude":-92.359
+         }
+      },
+      "00:00:00:00:00:53/-1":{
+         "basic":{
+            "latitude":24.0,
+            "name":"acc83",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:93/-1":{
+         "basic":{
+            "latitude":35.0,
+            "name":"acc147",
+            "longitude":-116.0
+         }
+      },
+      "00:00:00:00:00:3f/-1":{
+         "basic":{
+            "latitude":31.0,
+            "name":"acc63",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:4e/-1":{
+         "basic":{
+            "latitude":26.0,
+            "name":"acc78",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:64/-1":{
+         "basic":{
+            "latitude":34.0,
+            "name":"acc100",
+            "longitude":-114.0
+         }
+      },
+      "00:00:00:00:00:40/-1":{
+         "basic":{
+            "latitude":30.0,
+            "name":"acc64",
+            "longitude":-110.0
+         }
+      },
+      "00:00:00:00:00:41/-1":{
+         "basic":{
+            "latitude":30.0,
+            "name":"acc65",
+            "longitude":-109.0
+         }
+      },
+      "00:00:00:00:00:03/-1":{
+         "basic":{
+            "latitude":35.0,
+            "name":"acc3",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:08/-1":{
+         "basic":{
+            "latitude":33.0,
+            "name":"acc8",
+            "longitude":-105.0
+         }
+      },
+      "00:00:00:00:00:77/-1":{
+         "basic":{
+            "latitude":28.0,
+            "name":"acc119",
+            "longitude":-113.0
+         }
+      },
+      "00:00:00:00:00:aa/-1":{
+         "basic":{
+            "latitude":27.0,
+            "name":"acc170",
+            "longitude":-117.0
+         }
+      },
+      "00:00:00:00:00:12/-1":{
+         "basic":{
+            "latitude":30.0,
+            "name":"acc18",
+            "longitude":-104.0
+         }
+      },
+      "00:00:00:00:00:51/-1":{
+         "basic":{
+            "latitude":25.0,
+            "name":"acc81",
+            "longitude":-108.0
+         }
+      },
+      "00:00:00:00:00:1d/-1":{
+         "basic":{
+            "latitude":26.0,
+            "name":"acc29",
+            "longitude":-105.0
+         }
+      }
+   },
+   "apps":{
+      "org.onosproject.dhcprelay":{
+         "default":[
+            {
+               "serverIps":[
+                  "10.0.3.253",
+                  "2000::3fd"
+               ],
+               "dhcpServerConnectPoint":"of:0000000000000205/10"
+            }
+         ]
+      }
+   },
+   "ports":{
+      "of:0000000000000003/45":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000003/44":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/47":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000003/46":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/41":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000002/17":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/48":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000003/42":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000002/46":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/47":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/44":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/16":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/42":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/43":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/40":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/41":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000001/8":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/9":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000003/40":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000004/40":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/41":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/42":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/43":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000003/32":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/43":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000004/46":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000003/1":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000004/48":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000003/2":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/29":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000001/36":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/37":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/34":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/35":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/32":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/33":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/30":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/31":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000003/4":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000001/38":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/39":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000004/29":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000003/33":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000002/45":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000003/6":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000203/7":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2000::4ff/120"
+               ],
+               "vlan-untagged":23
+            }
+         ]
+      },
+      "of:0000000000000003/7":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000003/48":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/8":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/9":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000203/6":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.4.254/24"
+               ],
+               "vlan-untagged":22
+            }
+         ]
+      },
+      "of:0000000000000001/24":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/27":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/26":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/21":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/20":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/23":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/22":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/29":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/28":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000203/8":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.1.2.254/24",
+                  "2001::2ff/120"
+               ],
+               "vlan-untagged":21
+            }
+         ]
+      },
+      "of:0000000000000203/5":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.1.2.254/24",
+                  "2001::2ff/120"
+               ],
+               "vlan-tagged":[
+                  21
+               ]
+            }
+         ]
+      },
+      "of:0000000000000205/5":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.5.6.254/24"
+               ],
+               "vlan-tagged":[
+                  56
+               ]
+            }
+         ]
+      },
+      "of:0000000000000205/6":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.3.254/24"
+               ],
+               "vlan-untagged":30
+            }
+         ]
+      },
+      "of:0000000000000004/3":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/2":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/1":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000205/7":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.3.254/24"
+               ],
+               "vlan-untagged":30
+            }
+         ]
+      },
+      "of:0000000000000004/7":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/6":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/5":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/4":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/9":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/8":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000001/6":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/7":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/4":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/5":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/2":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/3":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/1":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000002/1":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000004/23":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000002/3":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/2":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/5":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/4":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/7":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/6":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000001/10":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/11":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/12":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/13":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/14":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/15":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/16":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/17":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/18":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/19":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000002/9":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000003/18":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/19":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000003/12":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/13":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000003/10":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/11":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000003/16":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/17":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000003/14":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/15":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000002/8":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000004/45":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/39":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/38":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/31":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/30":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/33":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/32":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/35":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/34":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/37":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/36":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000003/5":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000003/3":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000001/25":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000004/44":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/26":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000002/36":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000004/27":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/47":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/24":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000002/11":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/10":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/13":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/12":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/15":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000205/13":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.5.6.254/24"
+               ],
+               "vlan-untagged":56
+            }
+         ]
+      },
+      "of:0000000000000205/10":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.3.254/24",
+                  "2000::3ff/120"
+               ],
+               "vlan-untagged":30
+            }
+         ]
+      },
+      "of:0000000000000205/11":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.1.254/24",
+                  "2000::1ff/120"
+               ],
+               "vlan-tagged":[
+                  110
+               ]
+            }
+         ]
+      },
+      "of:0000000000000002/19":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/18":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000003/38":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/39":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000004/25":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/13":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/12":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/11":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/10":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/17":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/16":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000004/15":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/14":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000003/27":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000004/19":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000004/18":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000003/26":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/23":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000003/22":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000003/21":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000003/20":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000002/28":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/29":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000003/25":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000003/24":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000002/24":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/25":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/26":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/27":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/20":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/21":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/22":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/23":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000003/28":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000004/28":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000003/31":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000004/21":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.4.254/24"
+               ],
+               "vlan-untagged":103
+            }
+         ]
+      },
+      "of:0000000000000001/43":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/42":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/41":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/40":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/47":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/46":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/45":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.1.254/24"
+               ],
+               "vlan-untagged":100
+            }
+         ]
+      },
+      "of:0000000000000001/44":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000001/48":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::1ff/120"
+               ],
+               "vlan-untagged":200
+            }
+         ]
+      },
+      "of:0000000000000205/8":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2000::3ff/120"
+               ],
+               "vlan-untagged":50
+            }
+         ]
+      },
+      "of:0000000000000205/9":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2000::3ff/120"
+               ],
+               "vlan-untagged":50
+            }
+         ]
+      },
+      "of:0000000000000002/39":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/38":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/33":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/32":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/31":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/30":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000002/37":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000204/10":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.1.2.254/24",
+                  "2001::2ff/120"
+               ],
+               "vlan-untagged":21
+            }
+         ]
+      },
+      "of:0000000000000002/35":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.2.254/24"
+               ],
+               "vlan-untagged":101
+            }
+         ]
+      },
+      "of:0000000000000002/34":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      },
+      "of:0000000000000003/34":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000206/7":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.6.254/24",
+                  "2000::6ff/120"
+               ],
+               "vlan-untagged":160
+            }
+         ]
+      },
+      "of:0000000000000206/6":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.6.254/24",
+                  "2000::6ff/120"
+               ],
+               "vlan-tagged":[
+                  160
+               ]
+            }
+         ]
+      },
+      "of:0000000000000206/5":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.5.6.254/24"
+               ],
+               "vlan-tagged":[
+                  56
+               ]
+            }
+         ]
+      },
+      "of:0000000000000003/35":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000003/30":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000206/8":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.5.6.254/24"
+               ],
+               "vlan-untagged":56
+            }
+         ]
+      },
+      "of:0000000000000003/36":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::3ff/120"
+               ],
+               "vlan-untagged":202
+            }
+         ]
+      },
+      "of:0000000000000004/22":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000003/37":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.100.3.254/24"
+               ],
+               "vlan-untagged":102
+            }
+         ]
+      },
+      "of:0000000000000204/9":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2000::2ff/120"
+               ],
+               "vlan-untagged":40
+            }
+         ]
+      },
+      "of:0000000000000204/8":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2000::2ff/120"
+               ],
+               "vlan-untagged":40
+            }
+         ]
+      },
+      "of:0000000000000204/5":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.1.2.254/24",
+                  "2001::2ff/120"
+               ],
+               "vlan-tagged":[
+                  21
+               ]
+            }
+         ]
+      },
+      "of:0000000000000205/12":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.1.254/24",
+                  "2000::1ff/120"
+               ],
+               "vlan-untagged":110
+            }
+         ]
+      },
+      "of:0000000000000204/7":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.2.254/24"
+               ],
+               "vlan-untagged":20
+            }
+         ]
+      },
+      "of:0000000000000204/6":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.2.254/24"
+               ],
+               "vlan-untagged":20
+            }
+         ]
+      },
+      "of:0000000000000004/20":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::4ff/120"
+               ],
+               "vlan-untagged":203
+            }
+         ]
+      },
+      "of:0000000000000002/14":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2002::2ff/120"
+               ],
+               "vlan-untagged":201
+            }
+         ]
+      }
+   },
+   "devices":{
+      "of:0000000000000246":{
+         "segmentrouting":{
+            "ipv4NodeSid":246,
+            "name":"s246",
+            "ipv4Loopback":"192.168.0.246",
+            "adjacencySids":[
+
+            ],
+            "ipv6NodeSid":256,
+            "isEdgeRouter":false,
+            "routerMac":"00:00:00:00:02:46",
+            "ipv6Loopback":"2000::c0a8:0246"
+         },
+         "basic":{
+            "latitude":"40.15",
+            "driver":"ofdpa-ovs",
+            "name":"s246",
+            "longitude":"-113.679"
+         }
+      },
+      "of:0000000000000247":{
+         "segmentrouting":{
+            "ipv4NodeSid":247,
+            "name":"s247",
+            "ipv4Loopback":"192.168.0.247",
+            "adjacencySids":[
+
+            ],
+            "ipv6NodeSid":257,
+            "isEdgeRouter":false,
+            "routerMac":"00:00:00:00:02:47",
+            "ipv6Loopback":"2000::c0a8:0247"
+         },
+         "basic":{
+            "latitude":"40.205",
+            "driver":"ofdpa-ovs",
+            "name":"s247",
+            "longitude":"-109.359"
+         }
+      },
+      "of:0000000000000001":{
+         "segmentrouting":{
+            "ipv4NodeSid":101,
+            "name":"s1",
+            "ipv4Loopback":"192.168.0.101",
+            "adjacencySids":[
+
+            ],
+            "ipv6NodeSid":111,
+            "isEdgeRouter":true,
+            "routerMac":"00:00:00:00:01:01",
+            "ipv6Loopback":"2000::c0a8:0101"
+         },
+         "basic":{
+            "latitude":"36.766",
+            "driver":"ofdpa-ovs",
+            "name":"s1",
+            "longitude":"-105.359"
+         }
+      },
+      "of:0000000000000002":{
+         "segmentrouting":{
+            "ipv4NodeSid":102,
+            "name":"s2",
+            "ipv4Loopback":"192.168.0.102",
+            "adjacencySids":[
+
+            ],
+            "ipv6NodeSid":112,
+            "isEdgeRouter":true,
+            "routerMac":"00:00:00:00:01:02",
+            "ipv6Loopback":"2000::c0a8:0102"
+         },
+         "basic":{
+            "latitude":"36.766",
+            "driver":"ofdpa-ovs",
+            "name":"s2",
+            "longitude":"-109.359"
+         }
+      },
+      "of:0000000000000003":{
+         "segmentrouting":{
+            "ipv4NodeSid":103,
+            "name":"s3",
+            "ipv4Loopback":"192.168.0.103",
+            "adjacencySids":[
+
+            ],
+            "ipv6NodeSid":113,
+            "isEdgeRouter":true,
+            "routerMac":"00:00:00:00:01:03",
+            "ipv6Loopback":"2000::c0a8:0103"
+         },
+         "basic":{
+            "latitude":"36.766",
+            "driver":"ofdpa-ovs",
+            "name":"s3",
+            "longitude":"-113.359"
+         }
+      },
+      "of:0000000000000004":{
+         "segmentrouting":{
+            "ipv4NodeSid":104,
+            "name":"s4",
+            "ipv4Loopback":"192.168.0.104",
+            "adjacencySids":[
+
+            ],
+            "ipv6NodeSid":114,
+            "isEdgeRouter":true,
+            "routerMac":"00:00:00:00:01:04",
+            "ipv6Loopback":"2000::c0a8:0104"
+         },
+         "basic":{
+            "latitude":"36.766",
+            "driver":"ofdpa-ovs",
+            "name":"s4",
+            "longitude":"-117.359"
+         }
+      },
+      "of:0000000000000226":{
+         "segmentrouting":{
+            "ipv4NodeSid":226,
+            "name":"s226",
+            "ipv4Loopback":"192.168.0.226",
+            "adjacencySids":[
+
+            ],
+            "ipv6NodeSid":236,
+            "isEdgeRouter":false,
+            "routerMac":"00:00:00:00:02:26",
+            "ipv6Loopback":"2000::c0a8:0226"
+         },
+         "basic":{
+            "latitude":"44.15",
+            "driver":"ofdpa-ovs",
+            "name":"s226",
+            "longitude":"-95.679"
+         }
+      },
+      "of:0000000000000227":{
+         "segmentrouting":{
+            "ipv4NodeSid":227,
+            "name":"s227",
+            "ipv4Loopback":"192.168.0.227",
+            "adjacencySids":[
+
+            ],
+            "ipv6NodeSid":237,
+            "isEdgeRouter":false,
+            "routerMac":"00:00:00:00:02:27",
+            "ipv6Loopback":"2000::c0a8:0227"
+         },
+         "basic":{
+            "latitude":"44.205",
+            "driver":"ofdpa-ovs",
+            "name":"s227",
+            "longitude":"-84.359"
+         }
+      },
+      "of:0000000000000203":{
+         "segmentrouting":{
+            "ipv4NodeSid":203,
+            "name":"s203",
+            "ipv4Loopback":"192.168.0.203",
+            "adjacencySids":[
+
+            ],
+            "ipv6NodeSid":213,
+            "pairLocalPort":5,
+            "isEdgeRouter":true,
+            "routerMac":"00:00:00:00:02:03",
+            "ipv6Loopback":"2000::c0a8:0203",
+            "pairDeviceId":"of:0000000000000204"
+         },
+         "basic":{
+            "latitude":"36.766",
+            "driver":"ofdpa-ovs",
+            "name":"s203",
+            "longitude":"-99.359"
+         }
+      },
+      "of:0000000000000206":{
+         "segmentrouting":{
+            "ipv4NodeSid":206,
+            "name":"s206",
+            "ipv4Loopback":"192.168.0.206",
+            "adjacencySids":[
+
+            ],
+            "ipv6NodeSid":216,
+            "pairLocalPort":5,
+            "isEdgeRouter":true,
+            "routerMac":"00:00:00:00:02:05",
+            "ipv6Loopback":"2000::c0a8:0206",
+            "pairDeviceId":"of:0000000000000205"
+         },
+         "basic":{
+            "latitude":"36.766",
+            "driver":"ofdpa-ovs",
+            "name":"s206",
+            "longitude":"-80.029"
+         }
+      },
+      "of:0000000000000204":{
+         "segmentrouting":{
+            "ipv4NodeSid":204,
+            "name":"s204",
+            "ipv4Loopback":"192.168.0.204",
+            "adjacencySids":[
+
+            ],
+            "ipv6NodeSid":214,
+            "pairLocalPort":5,
+            "isEdgeRouter":true,
+            "routerMac":"00:00:00:00:02:03",
+            "ipv6Loopback":"2000::c0a8:0204",
+            "pairDeviceId":"of:0000000000000203"
+         },
+         "basic":{
+            "latitude":"36.766",
+            "driver":"ofdpa-ovs",
+            "name":"s204",
+            "longitude":"-94.359"
+         }
+      },
+      "of:0000000000000205":{
+         "segmentrouting":{
+            "ipv4NodeSid":205,
+            "name":"s205",
+            "ipv4Loopback":"192.168.0.205",
+            "adjacencySids":[
+
+            ],
+            "ipv6NodeSid":215,
+            "pairLocalPort":5,
+            "isEdgeRouter":true,
+            "routerMac":"00:00:00:00:02:05",
+            "ipv6Loopback":"2000::c0a8:0205",
+            "pairDeviceId":"of:0000000000000206"
+         },
+         "basic":{
+            "latitude":"36.766",
+            "driver":"ofdpa-ovs",
+            "name":"s205",
+            "longitude":"-84.89"
+         }
+      }
+   }
+}
diff --git a/trellis/trellis_mcast.py b/trellis/trellis_mcast.py
new file mode 100755
index 0000000..35b9762
--- /dev/null
+++ b/trellis/trellis_mcast.py
@@ -0,0 +1,237 @@
+#!/usr/bin/python
+
+import sys
+sys.path.append('..')
+from mininet.topo import Topo
+from mininet.cli import CLI
+from mininet.log import setLogLevel
+from mininet.node import RemoteController, OVSBridge, Host, OVSSwitch
+from mininet.link import TCLink
+from mininet.nodelib import NAT
+from ipaddress import ip_network
+from routinglib import BgpRouter
+from routinglib import RoutedHost, RoutedHost6
+from trellislib import DhcpClient, Dhcp6Client, Dhcp4and6Client, DhcpRelay, DhcpServer, Dhcp6Server
+from trellislib import DualHomedDhcpClient
+from trellislib import DualHomedDhcp4and6Client
+from trellislib import get_mininet, parse_trellis_args, set_up_zebra_config, get_mac_from_int
+from functools import partial
+
+MAX_AGGREGATION = 4
+MAX_ACCESS = 48
+
+class Trellis( Topo ):
+    """Trellis HAG topology"""
+
+    def __init__( self, *args, **kwargs ):
+        Topo.__init__( self, *args, **kwargs )
+
+        # Spines
+        s226 = self.addSwitch('s226', dpid='226')
+        s227 = self.addSwitch('s227', dpid='227')
+
+        # Leaves
+        s203 = self.addSwitch('s203', dpid='203')
+        s204 = self.addSwitch('s204', dpid='204')
+        s205 = self.addSwitch('s205', dpid='205')
+        s206 = self.addSwitch('s206', dpid='206')
+
+        # Leaf-Spine Links
+        self.addLink(s226, s203)
+        self.addLink(s226, s203)
+        self.addLink(s226, s204)
+        self.addLink(s226, s204)
+        self.addLink(s226, s205)
+        self.addLink(s226, s205)
+        self.addLink(s226, s206)
+        self.addLink(s226, s206)
+        self.addLink(s227, s203)
+        self.addLink(s227, s203)
+        self.addLink(s227, s204)
+        self.addLink(s227, s204)
+        self.addLink(s227, s205)
+        self.addLink(s227, s205)
+        self.addLink(s227, s206)
+        self.addLink(s227, s206)
+
+        # Leaf-Leaf Links
+        self.addLink(s203, s204)
+        self.addLink(s205, s206)
+
+        # NOTE avoid using 10.0.1.0/24 which is the default subnet of quaggas
+        # NOTE avoid using 00:00:00:00:00:xx which is the default mac of host behind upstream router
+        # IPv4 Hosts
+        h1 = self.addHost('h1', cls=DhcpClient, mac='00:aa:00:00:00:01')
+        h2 = self.addHost('h2', cls=DhcpClient, mac='00:aa:00:00:00:02')
+        h3 = self.addHost('h3', cls=DhcpClient, mac='00:aa:00:00:00:03')
+        h4 = self.addHost('h4', cls=DhcpClient, mac='00:aa:00:00:00:04')
+        h5 = self.addHost('h5', cls=DhcpClient, mac='00:aa:00:00:00:05')
+        self.addLink(h1, s204)
+        self.addLink(h2, s204)
+        self.addLink(h3, s205)
+        self.addLink(h4, s205)
+        self.addLink(h5, s203)
+
+        # IPv6 Hosts
+        h1v6 = self.addHost('h1v6', cls=Dhcp6Client, mac='00:bb:00:00:00:01', sleep=0.250)
+        h2v6 = self.addHost('h2v6', cls=Dhcp6Client, mac='00:bb:00:00:00:02', sleep=0.250)
+        h3v6 = self.addHost('h3v6', cls=Dhcp6Client, mac='00:bb:00:00:00:03', sleep=0.250)
+        h4v6 = self.addHost('h4v6', cls=Dhcp6Client, mac='00:bb:00:00:00:04', sleep=0.250)
+        h5v6 = self.addHost('h5v6', cls=Dhcp6Client, mac='00:bb:00:00:00:05', sleep=0.250)
+        self.addLink(h1v6, s204)
+        self.addLink(h2v6, s204)
+        self.addLink(h3v6, s205)
+        self.addLink(h4v6, s205)
+        self.addLink(h5v6, s203)
+
+        # Dual-homed IPv4 and IPv6 Host on 203-204
+        dh1 = self.addHost('dh1', cls=DualHomedDhcp4and6Client, mac='00:cc:00:00:00:01', sleep=0.250)
+        self.addLink(dh1, s204)
+        self.addLink(dh1, s203)
+
+        # DHCP server
+        dhcp = self.addHost('dhcp', cls=DhcpServer, mac='00:99:00:00:00:01', ips=['10.0.3.253/24'], gateway='10.0.3.254')
+
+        # DHCPv6 server
+        dhcp6 = self.addHost('dhcp6', cls=Dhcp6Server, mac='00:99:66:00:00:01', ips=['2000::3fd/120'], gateway='2000::3ff')
+
+        # Dataplane L2 plane switch (for DHCP servers)
+        cs1 = self.addSwitch('cs1', cls=OVSBridge)
+        self.addLink(cs1, s205)
+        self.addLink(dhcp, cs1)
+        self.addLink(dhcp6, cs1)
+
+        # Control plane switch (for quagga fpm)
+        cs0 = self.addSwitch('cs0', cls=OVSBridge)
+
+        # Control plane NAT (for quagga fpm)
+        nat = self.addHost('nat', cls=NAT,
+                           ip='172.16.0.1/12',
+                           subnet=str(ip_network(u'172.16.0.0/12')), inNamespace=False)
+        self.addLink(cs0, nat)
+
+        # Internal Quagga bgp1
+        """
+        intfs = {'bgp1-eth0': [{'ipAddrs': ['10.0.1.2/24', '2000::102/120'], 'mac': '00:88:00:00:00:03', 'vlan': '110'},
+                               {'ipAddrs': ['10.0.7.2/24', '2000::702/120'], 'mac': '00:88:00:00:00:03', 'vlan': '170'}],
+                 'bgp1-eth1': {'ipAddrs': ['172.16.0.3/12']}}
+        """
+        intfs = {'bgp1-eth0': {'ipAddrs': ['10.0.1.2/24', '2000::102/120'], 'mac': '00:88:00:00:00:03', 'vlan': '110'},
+                 'bgp1-eth1': {'ipAddrs': ['172.16.0.3/12']}}
+        bgp1 = self.addHost('bgp1', cls=BgpRouter,
+                            interfaces=intfs,
+                            quaggaConfFile='./bgpdbgp1.conf',
+                            zebraConfFile='./zebradbgp1.conf')
+        self.addLink(bgp1, s205)
+        self.addLink(bgp1, cs0)
+
+        # Internal Quagga bgp2
+        """
+        intfs = {'bgp2-eth0': [{'ipAddrs': ['10.0.5.2/24', '2000::502/120'], 'mac': '00:88:00:00:00:04', 'vlan': '150'},
+                               {'ipAddrs': ['10.0.6.2/24', '2000::602/120'], 'mac': '00:88:00:00:00:04', 'vlan': '160'}],
+                 'bgp2-eth1': {'ipAddrs': ['172.16.0.4/12']}}
+        """
+        intfs = {'bgp2-eth0': {'ipAddrs': ['10.0.6.2/24', '2000::602/120'], 'mac': '00:88:00:00:00:04', 'vlan': '160'},
+                 'bgp2-eth1': {'ipAddrs': ['172.16.0.4/12']}}
+        bgp2 = self.addHost('bgp2', cls=BgpRouter,
+                            interfaces=intfs,
+                            quaggaConfFile='./bgpdbgp2.conf',
+                            zebraConfFile='./zebradbgp2.conf')
+        self.addLink(bgp2, s206)
+        self.addLink(bgp2, cs0)
+
+        # External Quagga r1
+        intfs = {'r1-eth0': {'ipAddrs': ['10.0.1.1/24', '2000::101/120'], 'mac': '00:88:00:00:00:01'},
+                 #'r1-eth1': {'ipAddrs': ['10.0.5.1/24', '2000::501/120'], 'mac': '00:88:00:00:00:11'},
+                 'r1-eth1': {'ipAddrs': ['10.0.99.1/16']},
+                 'r1-eth2': {'ipAddrs': ['2000::9901/120']},
+                 'r1-eth3': {'ipAddrs': ['2000::7701/120']}}
+        r1 = self.addHost('r1', cls=BgpRouter,
+                            interfaces=intfs,
+                            quaggaConfFile='./bgpdr1.conf')
+        self.addLink(r1, s205)
+
+        # External IPv4 Host behind r1
+        rh1 = self.addHost('rh1', cls=RoutedHost, ips=['10.0.99.2/24'], gateway='10.0.99.1')
+        self.addLink(r1, rh1)
+
+        # External IPv6 Host behind r1
+        rh1v6 = self.addHost('rh1v6', cls=RoutedHost, ips=['2000::9902/120'], gateway='2000::9901')
+        self.addLink(r1, rh1v6)
+
+        # Another external IPv6 Host behind r1
+        rh11v6 = self.addHost('rh11v6', cls=RoutedHost, ips=['2000::7702/120'], gateway='2000::7701')
+        self.addLink(r1, rh11v6)
+
+        # External Quagga r2
+        intfs = {'r2-eth0': {'ipAddrs': ['10.0.6.1/24', '2000::601/120'], 'mac': '00:88:00:00:00:02'},
+                 #'r2-eth1': {'ipAddrs': ['10.0.7.1/24', '2000::701/120'], 'mac': '00:88:00:00:00:22'},
+                 'r2-eth1': {'ipAddrs': ['10.0.99.1/16']},
+                 'r2-eth2': {'ipAddrs': ['2000::9901/120']},
+                 'r2-eth3': {'ipAddrs': ['2000::8801/120']}}
+        r2 = self.addHost('r2', cls=BgpRouter,
+                            interfaces=intfs,
+                            quaggaConfFile='./bgpdr2.conf')
+        self.addLink(r2, s206)
+
+        # External IPv4 Host behind r2
+        rh2 = self.addHost('rh2', cls=RoutedHost, ips=['10.0.99.2/24'], gateway='10.0.99.1')
+        self.addLink(r2, rh2)
+
+        # External IPv6 Host behind r2
+        rh2v6 = self.addHost('rh126', cls=RoutedHost, ips=['2000::9902/120'], gateway='2000::9901')
+        self.addLink(r2, rh2v6)
+
+        # Another external IPv6 Host behind r1
+        rh22v6 = self.addHost('rh22v6', cls=RoutedHost, ips=['2000::8802/120'], gateway='2000::8801')
+        self.addLink(r2, rh22v6)
+
+        # Dual-homed IPv4 Host for 205-206
+        dh2 = self.addHost('dh2', cls=DualHomedDhcpClient, mac='00:cc:00:00:00:02')
+        self.addLink(dh2, s205)
+        self.addLink(dh2, s206)
+
+        # ----- Secondary fabric -----
+
+        # Spines(HAG)
+        s246 = self.addSwitch('s246', dpid='246')
+        s247 = self.addSwitch('s247', dpid='247')
+
+        # HAG - Spine Links
+        self.addLink(s246, s226)
+        self.addLink(s247, s227)
+
+        # Access network - aggregation switches and access devices
+        aggregation = int(args[0])
+        aggregation = min(max(0, aggregation), MAX_AGGREGATION)
+        for i in range(0, aggregation):
+            # Adding the aggregation switch
+            aggregation_dev = self.addSwitch('s%d' % (i + 1) , dpid='%s' % (i + 1))
+            # Adding MAX_ACCESS access devices
+            for j in range (1, MAX_ACCESS + 1):
+                mac_int = j + (MAX_ACCESS * i)
+                mac = get_mac_from_int(mac_int)
+                # Half are IPv6 and half are IPv4
+                if j % 2 == 0:
+                    access_dev = self.addHost('acc%d' % mac_int, cls=Dhcp6Client, mac=mac, sleep=0.250)
+                else:
+                    access_dev = self.addHost('acc%d' % mac_int, cls=DhcpClient, mac=mac)
+                self.addLink(aggregation_dev, access_dev)
+            # HAG - Aggregation Links
+            self.addLink(s246, aggregation_dev)
+            self.addLink(s247, aggregation_dev)
+
+topos = { 'trellis' : Trellis }
+
+if __name__ == "__main__":
+    setLogLevel('info')
+    arguments = parse_trellis_args()
+
+    topo = Trellis(arguments.aggregation)
+    switch = partial(OVSSwitch, protocols='OpenFlow13')
+    set_up_zebra_config(arguments.controllers)
+    net = get_mininet(arguments, topo, switch)
+
+    net.start()
+    CLI(net)
+    net.stop()
diff --git a/trellis/trellis_mcast_netcfg_gen.json b/trellis/trellis_mcast_netcfg_gen.json
new file mode 100644
index 0000000..bc203c8
--- /dev/null
+++ b/trellis/trellis_mcast_netcfg_gen.json
@@ -0,0 +1,646 @@
+{
+   "apps":{
+      "org.onosproject.dhcprelay":{
+         "default":[
+            {
+               "dhcpServerConnectPoint":"of:0000000000000205/10",
+               "serverIps":[
+                  "10.0.3.253",
+                  "2000::3fd"
+               ]
+            }
+         ]
+      }
+   },
+   "devices":{
+      "of:0000000000000203":{
+         "segmentrouting":{
+            "name":"s203",
+            "ipv4NodeSid":203,
+            "ipv4Loopback":"192.168.0.203",
+            "ipv6NodeSid":213,
+            "ipv6Loopback":"2000::c0a8:0203",
+            "routerMac":"00:00:00:00:02:03",
+            "isEdgeRouter":true,
+            "pairDeviceId":"of:0000000000000204",
+            "pairLocalPort":5,
+            "adjacencySids":[
+
+            ]
+         },
+         "basic":{
+            "name":"s203",
+            "driver":"ofdpa-ovs",
+            "latitude":"36.766",
+            "longitude":"-99.359"
+         }
+      },
+      "of:0000000000000204":{
+         "segmentrouting":{
+            "name":"s204",
+            "ipv4NodeSid":204,
+            "ipv4Loopback":"192.168.0.204",
+            "ipv6NodeSid":214,
+            "ipv6Loopback":"2000::c0a8:0204",
+            "routerMac":"00:00:00:00:02:03",
+            "isEdgeRouter":true,
+            "pairDeviceId":"of:0000000000000203",
+            "pairLocalPort":5,
+            "adjacencySids":[
+
+            ]
+         },
+         "basic":{
+            "name":"s204",
+            "driver":"ofdpa-ovs",
+            "latitude":"36.766",
+            "longitude":"-94.359"
+         }
+      },
+      "of:0000000000000205":{
+         "segmentrouting":{
+            "name":"s205",
+            "ipv4NodeSid":205,
+            "ipv4Loopback":"192.168.0.205",
+            "ipv6NodeSid":215,
+            "ipv6Loopback":"2000::c0a8:0205",
+            "routerMac":"00:00:00:00:02:05",
+            "isEdgeRouter":true,
+            "adjacencySids":[
+
+            ],
+            "pairDeviceId":"of:0000000000000206",
+            "pairLocalPort":5
+         },
+         "basic":{
+            "name":"s205",
+            "driver":"ofdpa-ovs",
+            "latitude":"36.766",
+            "longitude":"-84.89"
+         }
+      },
+      "of:0000000000000206":{
+         "segmentrouting":{
+            "name":"s206",
+            "ipv4NodeSid":206,
+            "ipv4Loopback":"192.168.0.206",
+            "ipv6NodeSid":216,
+            "ipv6Loopback":"2000::c0a8:0206",
+            "routerMac":"00:00:00:00:02:05",
+            "isEdgeRouter":true,
+            "adjacencySids":[
+
+            ],
+            "pairDeviceId":"of:0000000000000205",
+            "pairLocalPort":5
+         },
+         "basic":{
+            "name":"s206",
+            "driver":"ofdpa-ovs",
+            "latitude":"36.766",
+            "longitude":"-80.029"
+         }
+      },
+      "of:0000000000000226":{
+         "segmentrouting":{
+            "name":"s226",
+            "ipv4NodeSid":226,
+            "ipv4Loopback":"192.168.0.226",
+            "ipv6NodeSid":236,
+            "ipv6Loopback":"2000::c0a8:0226",
+            "routerMac":"00:00:00:00:02:26",
+            "isEdgeRouter":false,
+            "adjacencySids":[
+
+            ]
+         },
+         "basic":{
+            "name":"s226",
+            "driver":"ofdpa-ovs",
+            "latitude":"44.15",
+            "longitude":"-95.679"
+         }
+      },
+      "of:0000000000000227":{
+         "segmentrouting":{
+            "name":"s227",
+            "ipv4NodeSid":227,
+            "ipv4Loopback":"192.168.0.227",
+            "ipv6NodeSid":237,
+            "ipv6Loopback":"2000::c0a8:0227",
+            "routerMac":"00:00:00:00:02:27",
+            "isEdgeRouter":false,
+            "adjacencySids":[
+
+            ]
+         },
+         "basic":{
+            "name":"s227",
+            "driver":"ofdpa-ovs",
+            "latitude":"44.205",
+            "longitude":"-84.359"
+         }
+      },
+      "of:0000000000000247":{
+         "segmentrouting":{
+            "name":"s247",
+            "ipv4NodeSid":247,
+            "ipv4Loopback":"192.168.0.247",
+            "ipv6NodeSid":257,
+            "ipv6Loopback":"2000::c0a8:0247",
+            "routerMac":"00:00:00:00:02:47",
+            "isEdgeRouter":false,
+            "adjacencySids":[
+
+            ]
+         },
+         "basic":{
+            "name":"s247",
+            "driver":"ofdpa-ovs",
+            "latitude":"40.205",
+            "longitude":"-109.359"
+         }
+      },
+      "of:0000000000000246":{
+         "segmentrouting":{
+            "name":"s246",
+            "ipv4NodeSid":246,
+            "ipv4Loopback":"192.168.0.246",
+            "ipv6NodeSid":256,
+            "ipv6Loopback":"2000::c0a8:0246",
+            "routerMac":"00:00:00:00:02:46",
+            "isEdgeRouter":false,
+            "adjacencySids":[
+
+            ]
+         },
+         "basic":{
+            "name":"s246",
+            "driver":"ofdpa-ovs",
+            "latitude":"40.15",
+            "longitude":"-113.679"
+         }
+      },
+      "of:0000000000000001":{
+         "segmentrouting":{
+            "name":"s1",
+            "ipv4NodeSid":101,
+            "ipv4Loopback":"192.168.0.101",
+            "ipv6NodeSid":111,
+            "ipv6Loopback":"2000::c0a8:0101",
+            "routerMac":"00:00:00:00:01:01",
+            "isEdgeRouter":true,
+            "adjacencySids":[
+
+            ]
+         },
+         "basic":{
+            "name":"s1",
+            "driver":"ofdpa-ovs",
+            "latitude":"36.766",
+            "longitude":"-105.359"
+         }
+      },
+      "of:0000000000000002":{
+         "segmentrouting":{
+            "name":"s2",
+            "ipv4NodeSid":102,
+            "ipv4Loopback":"192.168.0.102",
+            "ipv6NodeSid":112,
+            "ipv6Loopback":"2000::c0a8:0102",
+            "routerMac":"00:00:00:00:01:02",
+            "isEdgeRouter":true,
+            "adjacencySids":[
+
+            ]
+         },
+         "basic":{
+            "name":"s2",
+            "driver":"ofdpa-ovs",
+            "latitude":"36.766",
+            "longitude":"-109.359"
+         }
+      },
+      "of:0000000000000003":{
+         "segmentrouting":{
+            "name":"s3",
+            "ipv4NodeSid":103,
+            "ipv4Loopback":"192.168.0.103",
+            "ipv6NodeSid":113,
+            "ipv6Loopback":"2000::c0a8:0103",
+            "routerMac":"00:00:00:00:01:03",
+            "isEdgeRouter":true,
+            "adjacencySids":[
+
+            ]
+         },
+         "basic":{
+            "name":"s3",
+            "driver":"ofdpa-ovs",
+            "latitude":"36.766",
+            "longitude":"-113.359"
+         }
+      },
+      "of:0000000000000004":{
+         "segmentrouting":{
+            "name":"s4",
+            "ipv4NodeSid":104,
+            "ipv4Loopback":"192.168.0.104",
+            "ipv6NodeSid":114,
+            "ipv6Loopback":"2000::c0a8:0104",
+            "routerMac":"00:00:00:00:01:04",
+            "isEdgeRouter":true,
+            "adjacencySids":[
+
+            ]
+         },
+         "basic":{
+            "name":"s4",
+            "driver":"ofdpa-ovs",
+            "latitude":"36.766",
+            "longitude":"-117.359"
+         }
+      }
+   },
+   "ports":{
+      "of:0000000000000203/5":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.1.2.254/24",
+                  "2001::2ff/120"
+               ],
+               "vlan-tagged":[
+                  21
+               ]
+            }
+         ]
+      },
+      "of:0000000000000203/6":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.4.254/24"
+               ],
+               "vlan-untagged":22
+            }
+         ]
+      },
+      "of:0000000000000203/7":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2000::4ff/120"
+               ],
+               "vlan-untagged":23
+            }
+         ]
+      },
+      "of:0000000000000203/8":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.1.2.254/24",
+                  "2001::2ff/120"
+               ],
+               "vlan-untagged":21
+            }
+         ]
+      },
+      "of:0000000000000204/5":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.1.2.254/24",
+                  "2001::2ff/120"
+               ],
+               "vlan-tagged":[
+                  21
+               ]
+            }
+         ]
+      },
+      "of:0000000000000204/6":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.2.254/24"
+               ],
+               "vlan-untagged":20
+            }
+         ]
+      },
+      "of:0000000000000204/7":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.2.254/24"
+               ],
+               "vlan-untagged":20
+            }
+         ]
+      },
+      "of:0000000000000204/8":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2000::2ff/120"
+               ],
+               "vlan-untagged":40
+            }
+         ]
+      },
+      "of:0000000000000204/9":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2000::2ff/120"
+               ],
+               "vlan-untagged":40
+            }
+         ]
+      },
+      "of:0000000000000204/10":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.1.2.254/24",
+                  "2001::2ff/120"
+               ],
+               "vlan-untagged":21
+            }
+         ]
+      },
+      "of:0000000000000205/6":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.3.254/24"
+               ],
+               "vlan-untagged":30
+            }
+         ]
+      },
+      "of:0000000000000205/7":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.3.254/24"
+               ],
+               "vlan-untagged":30
+            }
+         ]
+      },
+      "of:0000000000000205/8":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2000::3ff/120"
+               ],
+               "vlan-untagged":50
+            }
+         ]
+      },
+      "of:0000000000000205/9":{
+         "interfaces":[
+            {
+               "ips":[
+                  "2000::3ff/120"
+               ],
+               "vlan-untagged":50
+            }
+         ]
+      },
+      "of:0000000000000205/10":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.3.254/24",
+                  "2000::3ff/120"
+               ],
+               "vlan-untagged":30
+            }
+         ]
+      },
+      "of:0000000000000205/11":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.1.254/24",
+                  "2000::1ff/120"
+               ],
+               "vlan-tagged":[
+                  110
+               ]
+            }
+         ]
+      },
+      "of:0000000000000205/12":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.1.254/24",
+                  "2000::1ff/120"
+               ],
+               "vlan-untagged":110
+            }
+         ]
+      },
+      "of:0000000000000205/13":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.5.6.254/24"
+               ],
+               "vlan-untagged":56
+            }
+         ]
+      },
+      "of:0000000000000205/5":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.5.6.254/24"
+               ],
+               "vlan-tagged":[
+                  56
+               ]
+            }
+         ]
+      },
+      "of:0000000000000206/5":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.5.6.254/24"
+               ],
+               "vlan-tagged":[
+                  56
+               ]
+            }
+         ]
+      },
+      "of:0000000000000206/6":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.6.254/24",
+                  "2000::6ff/120"
+               ],
+               "vlan-tagged":[
+                  160
+               ]
+            }
+         ]
+      },
+      "of:0000000000000206/8":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.5.6.254/24"
+               ],
+               "vlan-untagged":56
+            }
+         ]
+      },
+      "of:0000000000000206/7":{
+         "interfaces":[
+            {
+               "ips":[
+                  "10.0.6.254/24",
+                  "2000::6ff/120"
+               ],
+               "vlan-untagged":160
+            }
+         ]
+      }
+   },
+   "hosts":{
+      "00:AA:00:00:00:05/-1":{
+         "basic":{
+            "name":"h5",
+            "latitude":33,
+            "longitude":-99.359
+         }
+      },
+      "00:BB:00:00:00:05/-1":{
+         "basic":{
+            "name":"h5v6",
+            "latitude":33,
+            "longitude":-101.359
+         }
+      },
+      "00:CC:00:00:00:01/-1":{
+         "basic":{
+            "name":"dh1",
+            "latitude":33,
+            "longitude":-96.959
+         }
+      },
+      "00:AA:00:00:00:01/-1":{
+         "basic":{
+            "name":"h1",
+            "latitude":33,
+            "longitude":-94.359
+         }
+      },
+      "00:AA:00:00:00:02/-1":{
+         "basic":{
+            "name":"h2",
+            "latitude":33,
+            "longitude":-92.359
+         }
+      },
+      "00:BB:00:00:00:01/-1":{
+         "basic":{
+            "name":"h1v6",
+            "latitude":36.766,
+            "longitude":-92.359
+         }
+      },
+      "00:BB:00:00:00:02/-1":{
+         "basic":{
+            "name":"h2v6",
+            "latitude":34.7,
+            "longitude":-92.359
+         }
+      },
+      "00:AA:00:00:00:03/-1":{
+         "basic":{
+            "name":"h3",
+            "latitude":36.766,
+            "longitude":-87.359
+         }
+      },
+      "00:AA:00:00:00:04/-1":{
+         "basic":{
+            "name":"h4",
+            "latitude":34.766,
+            "longitude":-87.359
+         }
+      },
+      "00:BB:00:00:00:03/-1":{
+         "basic":{
+            "name":"h3v6",
+            "latitude":32.766,
+            "longitude":-87.359
+         }
+      },
+      "00:BB:00:00:00:04/-1":{
+         "basic":{
+            "name":"h4v6",
+            "latitude":30.766,
+            "longitude":-87.359
+         }
+      },
+      "00:99:00:00:00:01/-1":{
+         "basic":{
+            "name":"dhcp",
+            "latitude":30.766,
+            "longitude":-85.359
+         }
+      },
+      "00:99:66:00:00:01/-1":{
+         "basic":{
+            "name":"dhcpv6",
+            "latitude":30.766,
+            "longitude":-83.359
+         }
+      },
+      "00:CC:00:00:00:02/-1":{
+         "basic":{
+            "name":"dh2",
+            "latitude":30.766,
+            "longitude":-81.359
+         }
+      },
+      "00:88:00:00:00:04/160":{
+         "basic":{
+            "name":"quagga2",
+            "latitude":36.766,
+            "longitude":-77.359
+         }
+      },
+      "00:88:00:00:00:02/-1":{
+         "basic":{
+            "name":"upstream2",
+            "latitude":34.766,
+            "longitude":-77.359
+         }
+      },
+      "00:88:00:00:00:03/110":{
+         "basic":{
+            "name":"quagga1",
+            "latitude":32.766,
+            "longitude":-77.359
+         }
+      },
+      "00:88:00:00:00:01/-1":{
+         "basic":{
+            "name":"upstream1",
+            "latitude":30.766,
+            "longitude":-77.359
+         }
+      }
+   }
+}
\ No newline at end of file
diff --git a/trellis/trellis_mcast_netcfg_gen.py b/trellis/trellis_mcast_netcfg_gen.py
new file mode 100755
index 0000000..e2915ab
--- /dev/null
+++ b/trellis/trellis_mcast_netcfg_gen.py
@@ -0,0 +1,91 @@
+#! /usr/bin/python
+
+import json
+
+# It contains the fixed parts of the netcfg.
+# In this case, they are the ports of the leafs
+# hosts attached to the leafs. These are parts
+# that at the moment we don't need to scale
+netcfg = {}
+
+# Base latitude and longitude for access devices
+groups_cord = {
+  "0" : [36, -106],
+  "1" : [36, -110],
+  "2" : [36, -114],
+  "3" : [36, -118]
+}
+
+# Groups, host per groups and networks for each access device
+groups = 4
+hosts_per_group = 48
+networks = (("10.100.1.254/24", "2002::1ff/120", 100, 200), \
+  ("10.100.2.254/24", "2002::2ff/120", 101, 201), \
+  ("10.100.3.254/24", "2002::3ff/120", 102, 202), \
+  ("10.100.4.254/24", "2002::4ff/120", 103, 203), )
+
+def generateDpid(device):
+  dpid = hex( int( device ) )[ 2: ]
+  return '0' * ( 16 - len( dpid ) ) + dpid
+
+# Generate ports config
+def generate_port_cfg(host, device, networks):
+  device_index = device + 1
+  port_index = host + 1
+  dpid = generateDpid(device_index)
+  dpid_port = 'of:%s/%s' %(dpid, port_index)
+  netcfg['ports'][dpid_port] = {}
+  interfaces = []
+  interface = {}
+  ips = []
+  network = ""
+  vlan = ""
+  if port_index % 2 == 0:
+    network = networks[1]
+    vlan = networks[3]
+  else:
+    network = networks[0]
+    vlan = networks[2]
+  ips.append(network)
+  interface['ips'] = ips
+  interface['vlan-untagged'] = vlan
+  interfaces.append(interface)
+  netcfg['ports'][dpid_port]["interfaces"] = interfaces
+
+# Generate hosts coordinate
+def generate_host_cfg(mac, index, layer, group, counter):
+  lat = groups_cord[str(group)][0] - layer
+  lon = index + groups_cord[str(group)][1]
+  name = "%s%d" %("acc", counter + 1)
+  data = {
+    "basic" : {}
+  }
+  data["basic"]["name"] = name
+  data["basic"]["latitude"] = float(lat)
+  data["basic"]["longitude"] = float(lon)
+  netcfg["hosts"]["%s/-1" % mac] = data
+
+# Read initial netcfg from file
+with open('trellis_mcast_netcfg_gen.json') as json_file:
+    netcfg = json.load(json_file)
+
+# Main function
+counter = 0
+for g in range(0, groups):
+  index = 0
+  layer = 0
+  for h in range(0, hosts_per_group):
+    mac = hex(counter + 1)[2:]
+    mac = '0' * ( 12 - len( mac ) ) + mac
+    mac = ':'.join(s.encode('hex') for s in mac.decode('hex'))
+    index = counter % 3
+    if index == 0 :
+      layer = layer + 1
+    generate_port_cfg(h, g, networks[g])
+    generate_host_cfg(mac, index, layer, g, counter)
+    counter = counter + 1
+
+# Dump the netcfg on file
+with open('data.txt', 'w') as outfile:
+    json.dump(netcfg, outfile)
+
diff --git a/trellis/trellislib.py b/trellis/trellislib.py
index ad6d5a0..13bb40c 100644
--- a/trellis/trellislib.py
+++ b/trellis/trellislib.py
@@ -86,7 +86,7 @@
     def config(self, **kwargs):
         super(DhcpClient, self).config(**kwargs)
         self.cmd('ip addr flush dev %s' % self.defaultIntf())
-        self.cmd('dhclient -q -4 -nw -pf %s -lf %s %s' % (self.pidFile, self.leaseFile, self.defaultIntf()))
+        self.cmd('dhclient -q -4 -nw -pf %s -lf %s %s &' % (self.pidFile, self.leaseFile, self.defaultIntf()))
 
         disable_offload(self, self.defaultIntf())
 
@@ -100,12 +100,13 @@
         super(Dhcp6Client, self).__init__(name, **kwargs)
         self.pidFile = '/run/dhclient-%s.pid' % self.name
         self.leaseFile = '/var/lib/dhcp/dhcpclient6-%s.lease' % (self.name, )
+        self.sleep = kwargs.get('sleep', 3)
 
     def config(self, **kwargs):
         super(Dhcp6Client, self).config(**kwargs)
         self.cmd('ip -4 addr flush dev %s' % self.defaultIntf())
-        time.sleep(3)
-        self.cmd('dhclient -q -6 -nw -pf %s -lf %s %s' % (self.pidFile, self.leaseFile, self.defaultIntf()))
+        time.sleep(self.sleep)
+        self.cmd('dhclient -q -6 -nw -pf %s -lf %s %s &' % (self.pidFile, self.leaseFile, self.defaultIntf()))
 
         disable_offload(self, self.defaultIntf())
 
@@ -122,15 +123,16 @@
         self.pidFile6 = '/run/dhclient-%s-6.pid' % self.name
         self.leaseFile4 = '/var/lib/dhcp/dhcpclient-%s.lease' % (self.name, )
         self.leaseFile6 = '/var/lib/dhcp/dhcpclient6-%s.lease' % (self.name, )
+        self.sleep = kwargs.get('sleep', 3)
 
     def config(self, **kwargs):
         super(Dhcp4and6Client, self).config(**kwargs)
         self.cmd('ip addr flush dev %s' % self.defaultIntf())
-        self.cmd('dhclient -q -4 -nw -pf %s -lf %s %s' % (self.pidFile4, self.leaseFile4, self.defaultIntf()))
+        self.cmd('dhclient -q -4 -nw -pf %s -lf %s %s &' % (self.pidFile4, self.leaseFile4, self.defaultIntf()))
 
         self.cmd('ip -4 addr flush dev %s' % self.defaultIntf())
-        time.sleep(3)
-        self.cmd('dhclient -q -6 -nw -pf %s -lf %s %s' % (self.pidFile6, self.leaseFile6, self.defaultIntf()))
+        time.sleep(self.sleep)
+        self.cmd('dhclient -q -6 -nw -pf %s -lf %s %s &' % (self.pidFile6, self.leaseFile6, self.defaultIntf()))
 
         disable_offload(self, self.defaultIntf())
 
@@ -219,7 +221,7 @@
         self.cmd('ip addr flush dev %s' % self.defaultIntf())
         self.cmd('ip link add link %s name %s type vlan id %s' % (self.defaultIntf(), self.vlanIntf, self.vlan))
         self.cmd('ip link set up %s' % self.vlanIntf)
-        self.cmd('dhclient -q -4 -nw -pf %s %s' % (self.pidFile, self.vlanIntf))
+        self.cmd('dhclient -q -4 -nw -pf %s %s &' % (self.pidFile, self.vlanIntf))
 
         disable_offload(self, self.vlanIntf)
 
@@ -265,7 +267,7 @@
         self.cmd('ip addr flush dev %s' % intf0)
         self.cmd('ip addr flush dev %s' % intf1)
         self.cmd('ip link set %s up' % self.bond0)
-        self.cmd('dhclient -q -4 -nw -pf %s %s' % (self.pidFile, self.bond0))
+        self.cmd('dhclient -q -4 -nw -pf %s %s &' % (self.pidFile, self.bond0))
 
         disable_offload(self, self.bond0)
 
@@ -314,6 +316,7 @@
         self.pidFile4 = '/run/dhclient-%s-4.pid' % self.name
         self.pidFile6 = '/run/dhclient-%s-6.pid' % self.name
         self.bond0 = None
+        self.sleep = kwargs.get('sleep', 3)
 
     def config(self, **kwargs):
         super(DualHomedDhcp4and6Client, self).config(**kwargs)
@@ -330,10 +333,10 @@
         self.cmd('ip -4 addr flush dev %s' % intf1)
         self.cmd('ip addr flush dev %s' % intf0)
         self.cmd('ip addr flush dev %s' % intf1)
-        time.sleep(3)
+        time.sleep(self.sleep)
         self.cmd('ip link set %s up' % self.bond0)
-        self.cmd('dhclient -q -4 -nw -pf %s %s' % (self.pidFile4, self.bond0))
-        self.cmd('dhclient -q -6 -nw -pf %s %s' % (self.pidFile6, self.bond0))
+        self.cmd('dhclient -q -4 -nw -pf %s %s &' % (self.pidFile4, self.bond0))
+        self.cmd('dhclient -q -6 -nw -pf %s %s &' % (self.pidFile6, self.bond0))
 
         disable_offload(self, self.bond0)
 
@@ -364,11 +367,19 @@
 
     return 'fe80::{:04x}:{:02x}ff:fe{:02x}:{:04x}'.format(high2, high1, low1, low2)
 
+def get_mac_from_int(number):
+    mac = hex(number)[2:]
+    mac = '0' * ( 12 - len( mac ) ) + mac
+    mac = ':'.join(s.encode('hex') for s in mac.decode('hex'))
+    return mac
+
 # Parses Trellis parameters
 def parse_trellis_args():
     parser = argparse.ArgumentParser(description="Trellis Arguments")
     parser.add_argument("-c", "--controllers", help = "Comma Separated List of ONOS controllers",
                         required = True, default = "")
+    parser.add_argument("-a", "--aggregation", help = "number of aggregation switches (1-4)",
+                        required = False, default = 1)
     return parser.parse_args()
 
 # Gets a mininet instance