Don't Use Special IPv6 Addresses (#791)

* Replace 200*::/64 with 2001:2:0:*::/64
diff --git a/tests/scripts/thread-cert/Cert_5_2_05_AddressQuery.py b/tests/scripts/thread-cert/Cert_5_2_05_AddressQuery.py
index 074dedb..75f2d27 100755
--- a/tests/scripts/thread-cert/Cert_5_2_05_AddressQuery.py
+++ b/tests/scripts/thread-cert/Cert_5_2_05_AddressQuery.py
@@ -105,8 +105,8 @@
         time.sleep(5)
         self.assertEqual(self.nodes[BR1].get_state(), 'router')
 
-        self.nodes[BR1].add_prefix('2003::/64', 'paros')
-        self.nodes[BR1].add_prefix('2004::/64', 'paros')
+        self.nodes[BR1].add_prefix('2001:2:0:3::/64', 'paros')
+        self.nodes[BR1].add_prefix('2001:2:0:4::/64', 'paros')
         self.nodes[BR1].register_netdata()
 
         self.nodes[ED1].start()
diff --git a/tests/scripts/thread-cert/Cert_5_3_03_AddressQuery.py b/tests/scripts/thread-cert/Cert_5_3_03_AddressQuery.py
index d328f65..586d373 100755
--- a/tests/scripts/thread-cert/Cert_5_3_03_AddressQuery.py
+++ b/tests/scripts/thread-cert/Cert_5_3_03_AddressQuery.py
@@ -92,8 +92,8 @@
         time.sleep(5)
         self.assertEqual(self.nodes[BR].get_state(), 'router')
 
-        self.nodes[BR].add_prefix('2003::/64', 'paros')
-        self.nodes[BR].add_prefix('2004::/64', 'paros')
+        self.nodes[BR].add_prefix('2001:2:0:3::/64', 'paros')
+        self.nodes[BR].add_prefix('2001:2:0:4::/64', 'paros')
         self.nodes[BR].register_netdata()
 
         self.nodes[ROUTER2].start()
diff --git a/tests/scripts/thread-cert/Cert_5_3_07_DuplicateAddress.py b/tests/scripts/thread-cert/Cert_5_3_07_DuplicateAddress.py
index b1879a1..7537a10 100755
--- a/tests/scripts/thread-cert/Cert_5_3_07_DuplicateAddress.py
+++ b/tests/scripts/thread-cert/Cert_5_3_07_DuplicateAddress.py
@@ -111,14 +111,14 @@
         time.sleep(5)
         self.assertEqual(self.nodes[ED3].get_state(), 'child')
 
-        self.nodes[ROUTER2].add_prefix('2001::/64', 'paros')
+        self.nodes[ROUTER2].add_prefix('2001:2:0:1::/64', 'paros')
         self.nodes[ROUTER2].register_netdata()
 
-        self.nodes[ED1].add_ipaddr('2001::1')
-        self.nodes[ED2].add_ipaddr('2001::1')
+        self.nodes[ED1].add_ipaddr('2001:2:0:1::1')
+        self.nodes[ED2].add_ipaddr('2001:2:0:1::1')
         time.sleep(5)
 
-        self.assertTrue(self.nodes[ED3].ping('2001::1'))
+        self.assertTrue(self.nodes[ED3].ping('2001:2:0:1::1'))
 
 if __name__ == '__main__':
     unittest.main()
diff --git a/tests/scripts/thread-cert/Cert_5_3_10_AddressQuery.py b/tests/scripts/thread-cert/Cert_5_3_10_AddressQuery.py
index 6cf4f83..cb1830e 100755
--- a/tests/scripts/thread-cert/Cert_5_3_10_AddressQuery.py
+++ b/tests/scripts/thread-cert/Cert_5_3_10_AddressQuery.py
@@ -91,8 +91,8 @@
         time.sleep(5)
         self.assertEqual(self.nodes[BR].get_state(), 'router')
 
-        self.nodes[BR].add_prefix('2003::/64', 'paros')
-        self.nodes[BR].add_prefix('2004::/64', 'paros')
+        self.nodes[BR].add_prefix('2001:2:0:3::/64', 'paros')
+        self.nodes[BR].add_prefix('2001:2:0:4::/64', 'paros')
         self.nodes[BR].register_netdata()
 
         self.nodes[ROUTER2].start()
diff --git a/tests/scripts/thread-cert/Cert_5_6_01_NetworkDataRegisterBeforeAttachLeader.py b/tests/scripts/thread-cert/Cert_5_6_01_NetworkDataRegisterBeforeAttachLeader.py
index d7393dd..c018416 100755
--- a/tests/scripts/thread-cert/Cert_5_6_01_NetworkDataRegisterBeforeAttachLeader.py
+++ b/tests/scripts/thread-cert/Cert_5_6_01_NetworkDataRegisterBeforeAttachLeader.py
@@ -77,8 +77,8 @@
         self.nodes[LEADER].set_state('leader')
         self.assertEqual(self.nodes[LEADER].get_state(), 'leader')
 
-        self.nodes[LEADER].add_prefix('2001::/64', 'paros')
-        self.nodes[LEADER].add_prefix('2002::/64', 'paro')
+        self.nodes[LEADER].add_prefix('2001:2:0:1::/64', 'paros')
+        self.nodes[LEADER].add_prefix('2001:2:0:2::/64', 'paro')
         self.nodes[LEADER].register_netdata()
 
         self.nodes[ROUTER].start()
@@ -94,17 +94,17 @@
         self.assertEqual(self.nodes[SED1].get_state(), 'child')
 
         addrs = self.nodes[ED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
 if __name__ == '__main__':
diff --git a/tests/scripts/thread-cert/Cert_5_6_02_NetworkDataRegisterBeforeAttachRouter.py b/tests/scripts/thread-cert/Cert_5_6_02_NetworkDataRegisterBeforeAttachRouter.py
index 43bdd58..47e1542 100755
--- a/tests/scripts/thread-cert/Cert_5_6_02_NetworkDataRegisterBeforeAttachRouter.py
+++ b/tests/scripts/thread-cert/Cert_5_6_02_NetworkDataRegisterBeforeAttachRouter.py
@@ -81,8 +81,8 @@
         time.sleep(5)
         self.assertEqual(self.nodes[ROUTER].get_state(), 'router')
 
-        self.nodes[ROUTER].add_prefix('2001::/64', 'paros')
-        self.nodes[ROUTER].add_prefix('2002::/64', 'paro')
+        self.nodes[ROUTER].add_prefix('2001:2:0:1::/64', 'paros')
+        self.nodes[ROUTER].add_prefix('2001:2:0:2::/64', 'paro')
         self.nodes[ROUTER].register_netdata()
 
         self.nodes[ED1].start()
@@ -94,17 +94,17 @@
         self.assertEqual(self.nodes[SED1].get_state(), 'child')
 
         addrs = self.nodes[ED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
 if __name__ == '__main__':
diff --git a/tests/scripts/thread-cert/Cert_5_6_03_NetworkDataRegisterAfterAttachLeader.py b/tests/scripts/thread-cert/Cert_5_6_03_NetworkDataRegisterAfterAttachLeader.py
index de92581..2400475 100755
--- a/tests/scripts/thread-cert/Cert_5_6_03_NetworkDataRegisterAfterAttachLeader.py
+++ b/tests/scripts/thread-cert/Cert_5_6_03_NetworkDataRegisterAfterAttachLeader.py
@@ -89,24 +89,24 @@
         time.sleep(5)
         self.assertEqual(self.nodes[SED1].get_state(), 'child')
 
-        self.nodes[LEADER].add_prefix('2001::/64', 'paros')
-        self.nodes[LEADER].add_prefix('2002::/64', 'paro')
+        self.nodes[LEADER].add_prefix('2001:2:0:1::/64', 'paros')
+        self.nodes[LEADER].add_prefix('2001:2:0:2::/64', 'paro')
         self.nodes[LEADER].register_netdata()
 
         time.sleep(10)
 
         addrs = self.nodes[ED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
 if __name__ == '__main__':
diff --git a/tests/scripts/thread-cert/Cert_5_6_04_NetworkDataRegisterAfterAttachRouter.py b/tests/scripts/thread-cert/Cert_5_6_04_NetworkDataRegisterAfterAttachRouter.py
index 580954f..570b5e9 100755
--- a/tests/scripts/thread-cert/Cert_5_6_04_NetworkDataRegisterAfterAttachRouter.py
+++ b/tests/scripts/thread-cert/Cert_5_6_04_NetworkDataRegisterAfterAttachRouter.py
@@ -89,24 +89,24 @@
         time.sleep(5)
         self.assertEqual(self.nodes[SED1].get_state(), 'child')
 
-        self.nodes[ROUTER].add_prefix('2001::/64', 'paros')
-        self.nodes[ROUTER].add_prefix('2002::/64', 'paro')
+        self.nodes[ROUTER].add_prefix('2001:2:0:1::/64', 'paros')
+        self.nodes[ROUTER].add_prefix('2001:2:0:2::/64', 'paro')
         self.nodes[ROUTER].register_netdata()
 
         time.sleep(10)
 
         addrs = self.nodes[ED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
 if __name__ == '__main__':
diff --git a/tests/scripts/thread-cert/Cert_5_6_05_NetworkDataRegisterAfterAttachRouter.py b/tests/scripts/thread-cert/Cert_5_6_05_NetworkDataRegisterAfterAttachRouter.py
index 681627a..be0ccb7 100755
--- a/tests/scripts/thread-cert/Cert_5_6_05_NetworkDataRegisterAfterAttachRouter.py
+++ b/tests/scripts/thread-cert/Cert_5_6_05_NetworkDataRegisterAfterAttachRouter.py
@@ -89,43 +89,43 @@
         time.sleep(5)
         self.assertEqual(self.nodes[SED1].get_state(), 'child')
 
-        self.nodes[ROUTER].add_prefix('2001::/64', 'paros')
-        self.nodes[ROUTER].add_prefix('2002::/64', 'paro')
+        self.nodes[ROUTER].add_prefix('2001:2:0:1::/64', 'paros')
+        self.nodes[ROUTER].add_prefix('2001:2:0:2::/64', 'paro')
         self.nodes[ROUTER].register_netdata()
 
         time.sleep(10)
 
         addrs = self.nodes[ED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
-        self.nodes[ROUTER].add_prefix('2003::/64', 'pacs')
+        self.nodes[ROUTER].add_prefix('2001:2:0:3::/64', 'pacs')
         self.nodes[ROUTER].register_netdata()
 
         time.sleep(10)
 
         addrs = self.nodes[ED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2003' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:3' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2003' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:3' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
diff --git a/tests/scripts/thread-cert/Cert_5_6_06_NetworkDataExpiration.py b/tests/scripts/thread-cert/Cert_5_6_06_NetworkDataExpiration.py
index 2664213..ed71045 100755
--- a/tests/scripts/thread-cert/Cert_5_6_06_NetworkDataExpiration.py
+++ b/tests/scripts/thread-cert/Cert_5_6_06_NetworkDataExpiration.py
@@ -89,63 +89,63 @@
         time.sleep(5)
         self.assertEqual(self.nodes[SED1].get_state(), 'child')
 
-        self.nodes[ROUTER].add_prefix('2001::/64', 'paros')
-        self.nodes[ROUTER].add_prefix('2002::/64', 'paro')
+        self.nodes[ROUTER].add_prefix('2001:2:0:1::/64', 'paros')
+        self.nodes[ROUTER].add_prefix('2001:2:0:2::/64', 'paro')
         self.nodes[ROUTER].register_netdata()
 
         time.sleep(10)
 
         addrs = self.nodes[ED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
-        self.nodes[ROUTER].add_prefix('2003::/64', 'pacs')
+        self.nodes[ROUTER].add_prefix('2001:2:0:3::/64', 'pacs')
         self.nodes[ROUTER].register_netdata()
 
         time.sleep(10)
 
         addrs = self.nodes[ED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2003' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:3' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2003' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:3' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
-        self.nodes[ROUTER].remove_prefix('2003::/64')
+        self.nodes[ROUTER].remove_prefix('2001:2:0:3::/64')
         self.nodes[ROUTER].register_netdata()
         time.sleep(10)
 
         addrs = self.nodes[ED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2003' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:3' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2003' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:3' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
diff --git a/tests/scripts/thread-cert/Cert_5_6_07_NetworkDataRequestREED.py b/tests/scripts/thread-cert/Cert_5_6_07_NetworkDataRequestREED.py
index ea6c9a8..7ee00f8 100755
--- a/tests/scripts/thread-cert/Cert_5_6_07_NetworkDataRequestREED.py
+++ b/tests/scripts/thread-cert/Cert_5_6_07_NetworkDataRequestREED.py
@@ -81,7 +81,7 @@
         self.nodes[LEADER].remove_whitelist(self.nodes[REED].get_addr64())
         self.nodes[REED].remove_whitelist(self.nodes[LEADER].get_addr64())
 
-        self.nodes[ROUTER].add_prefix('2003::/64', 'paros')
+        self.nodes[ROUTER].add_prefix('2001:2:0:3::/64', 'paros')
         self.nodes[ROUTER].register_netdata()
 
         time.sleep(2)
@@ -92,9 +92,9 @@
         time.sleep(10)
 
         addrs = self.nodes[REED].get_addrs()
-        self.assertTrue(any('2003' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:3' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2003':
+            if addr[0:10] == '2001:2:0:3':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
 if __name__ == '__main__':
diff --git a/tests/scripts/thread-cert/Cert_5_6_08_ContextManagement.py b/tests/scripts/thread-cert/Cert_5_6_08_ContextManagement.py
index 3a1e7cc..cfc13bd 100755
--- a/tests/scripts/thread-cert/Cert_5_6_08_ContextManagement.py
+++ b/tests/scripts/thread-cert/Cert_5_6_08_ContextManagement.py
@@ -78,46 +78,46 @@
         time.sleep(5)
         self.assertEqual(self.nodes[ED].get_state(), 'child')
 
-        self.nodes[ROUTER].add_prefix('2001::/64', 'paros')
+        self.nodes[ROUTER].add_prefix('2001:2:0:1::/64', 'paros')
         self.nodes[ROUTER].register_netdata()
         time.sleep(2)
 
         addrs = self.nodes[LEADER].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[ED].ping(addr))
 
-        self.nodes[ROUTER].remove_prefix('2001::/64')
+        self.nodes[ROUTER].remove_prefix('2001:2:0:1::/64')
         self.nodes[ROUTER].register_netdata()
         time.sleep(5)
 
         addrs = self.nodes[LEADER].get_addrs()
-        self.assertFalse(any('2001' in addr[0:4] for addr in addrs))
+        self.assertFalse(any('2001:2:0:1' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[ED].ping(addr))
 
-        self.nodes[ROUTER].add_prefix('2002::/64', 'paros')
+        self.nodes[ROUTER].add_prefix('2001:2:0:2::/64', 'paros')
         self.nodes[ROUTER].register_netdata()
         time.sleep(5)
 
         addrs = self.nodes[LEADER].get_addrs()
-        self.assertFalse(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertFalse(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[ED].ping(addr))
 
         time.sleep(5)
-        self.nodes[ROUTER].add_prefix('2003::/64', 'paros')
+        self.nodes[ROUTER].add_prefix('2001:2:0:3::/64', 'paros')
         self.nodes[ROUTER].register_netdata()
         time.sleep(5)
 
         addrs = self.nodes[LEADER].get_addrs()
-        self.assertFalse(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2003' in addr[0:4] for addr in addrs))
+        self.assertFalse(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:3' in addr[0:10] for addr in addrs))
         for addr in addrs:
             if addr[0:3] == '200':
                 self.assertTrue(self.nodes[ED].ping(addr))
diff --git a/tests/scripts/thread-cert/Cert_5_6_09_NetworkDataForwarding.py b/tests/scripts/thread-cert/Cert_5_6_09_NetworkDataForwarding.py
index d12382f..8c77871 100755
--- a/tests/scripts/thread-cert/Cert_5_6_09_NetworkDataForwarding.py
+++ b/tests/scripts/thread-cert/Cert_5_6_09_NetworkDataForwarding.py
@@ -101,29 +101,29 @@
         time.sleep(5)
         self.assertEqual(self.nodes[SED].get_state(), 'child')
 
-        self.nodes[LEADER].add_prefix('2001::/64', 'paros', 'med')
-        self.nodes[LEADER].add_route('2002::/64', 'med')
+        self.nodes[LEADER].add_prefix('2001:2:0:1::/64', 'paros', 'med')
+        self.nodes[LEADER].add_route('2001:2:0:2::/64', 'med')
         self.nodes[LEADER].register_netdata()
         time.sleep(10)
 
-        self.nodes[ROUTER2].add_prefix('2001::/64', 'paros', 'low')
-        self.nodes[ROUTER2].add_route('2002::/64', 'high')
+        self.nodes[ROUTER2].add_prefix('2001:2:0:1::/64', 'paros', 'low')
+        self.nodes[ROUTER2].add_route('2001:2:0:2::/64', 'high')
         self.nodes[ROUTER2].register_netdata()
         time.sleep(10)
 
-        self.assertFalse(self.nodes[SED].ping('2002::1'))
+        self.assertFalse(self.nodes[SED].ping('2001:2:0:2::1'))
 
         self.assertFalse(self.nodes[SED].ping('2007::1'))
 
-        self.nodes[ROUTER2].remove_prefix('2001::/64')
-        self.nodes[ROUTER2].add_prefix('2001::/64', 'paros', 'high')
+        self.nodes[ROUTER2].remove_prefix('2001:2:0:1::/64')
+        self.nodes[ROUTER2].add_prefix('2001:2:0:1::/64', 'paros', 'high')
         self.nodes[ROUTER2].register_netdata()
         time.sleep(10)
 
         self.assertFalse(self.nodes[SED].ping('2007::1'))
 
-        self.nodes[ROUTER2].remove_prefix('2001::/64')
-        self.nodes[ROUTER2].add_prefix('2001::/64', 'paros', 'med')
+        self.nodes[ROUTER2].remove_prefix('2001:2:0:1::/64')
+        self.nodes[ROUTER2].add_prefix('2001:2:0:1::/64', 'paros', 'med')
         self.nodes[ROUTER2].register_netdata()
         time.sleep(10)
 
diff --git a/tests/scripts/thread-cert/Cert_6_3_02_NetworkDataUpdate.py b/tests/scripts/thread-cert/Cert_6_3_02_NetworkDataUpdate.py
index 1dc11a7..6207134 100755
--- a/tests/scripts/thread-cert/Cert_6_3_02_NetworkDataUpdate.py
+++ b/tests/scripts/thread-cert/Cert_6_3_02_NetworkDataUpdate.py
@@ -66,20 +66,20 @@
         time.sleep(5)
         self.assertEqual(self.nodes[ED].get_state(), 'child')
 
-        self.nodes[LEADER].add_prefix('2001::/64', 'paros')
+        self.nodes[LEADER].add_prefix('2001:2:0:1::/64', 'paros')
         self.nodes[LEADER].register_netdata()
         time.sleep(5)
 
         addrs = self.nodes[ED].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001':
+            if addr[0:10] == '2001:2:0:1':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         self.nodes[LEADER].remove_whitelist(self.nodes[ED].get_addr64())
         self.nodes[ED].remove_whitelist(self.nodes[LEADER].get_addr64())
 
-        self.nodes[LEADER].add_prefix('2002::/64', 'paros')
+        self.nodes[LEADER].add_prefix('2001:2:0:2::/64', 'paros')
         self.nodes[LEADER].register_netdata()
         time.sleep(5)
 
@@ -88,10 +88,10 @@
         time.sleep(10)
 
         addrs = self.nodes[ED].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
 if __name__ == '__main__':
diff --git a/tests/scripts/thread-cert/Cert_7_1_01_BorderRouterAsLeader.py b/tests/scripts/thread-cert/Cert_7_1_01_BorderRouterAsLeader.py
index 5f34fbc..fbfbbf0 100755
--- a/tests/scripts/thread-cert/Cert_7_1_01_BorderRouterAsLeader.py
+++ b/tests/scripts/thread-cert/Cert_7_1_01_BorderRouterAsLeader.py
@@ -77,8 +77,8 @@
         self.nodes[LEADER].set_state('leader')
         self.assertEqual(self.nodes[LEADER].get_state(), 'leader')
 
-        self.nodes[LEADER].add_prefix('2001::/64', 'paros')
-        self.nodes[LEADER].add_prefix('2002::/64', 'paro')
+        self.nodes[LEADER].add_prefix('2001:2:0:1::/64', 'paros')
+        self.nodes[LEADER].add_prefix('2001:2:0:2::/64', 'paro')
         self.nodes[LEADER].register_netdata()
 
         self.nodes[ROUTER].start()
@@ -94,17 +94,17 @@
         self.assertEqual(self.nodes[ED1].get_state(), 'child')
 
         addrs = self.nodes[SED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[ED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
 if __name__ == '__main__':
diff --git a/tests/scripts/thread-cert/Cert_7_1_02_BorderRouterAsRouter.py b/tests/scripts/thread-cert/Cert_7_1_02_BorderRouterAsRouter.py
index d2b1bff..1b72a00 100755
--- a/tests/scripts/thread-cert/Cert_7_1_02_BorderRouterAsRouter.py
+++ b/tests/scripts/thread-cert/Cert_7_1_02_BorderRouterAsRouter.py
@@ -81,8 +81,8 @@
         time.sleep(5)
         self.assertEqual(self.nodes[ROUTER].get_state(), 'router')
 
-        self.nodes[ROUTER].add_prefix('2001::/64', 'paros')
-        self.nodes[ROUTER].add_prefix('2002::/64', 'paro')
+        self.nodes[ROUTER].add_prefix('2001:2:0:1::/64', 'paros')
+        self.nodes[ROUTER].add_prefix('2001:2:0:2::/64', 'paro')
         self.nodes[ROUTER].register_netdata()
 
         self.nodes[ED2].start()
@@ -94,17 +94,17 @@
         self.assertEqual(self.nodes[SED2].get_state(), 'child')
 
         addrs = self.nodes[ED2].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED2].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
 if __name__ == '__main__':
diff --git a/tests/scripts/thread-cert/Cert_7_1_03_BorderRouterAsLeader.py b/tests/scripts/thread-cert/Cert_7_1_03_BorderRouterAsLeader.py
index 02aa57d..cda2c72 100755
--- a/tests/scripts/thread-cert/Cert_7_1_03_BorderRouterAsLeader.py
+++ b/tests/scripts/thread-cert/Cert_7_1_03_BorderRouterAsLeader.py
@@ -89,23 +89,23 @@
         time.sleep(5)
         self.assertEqual(self.nodes[ED1].get_state(), 'child')
 
-        self.nodes[LEADER].add_prefix('2001::/64', 'paros')
-        self.nodes[LEADER].add_prefix('2002::/64', 'paro')
+        self.nodes[LEADER].add_prefix('2001:2:0:1::/64', 'paros')
+        self.nodes[LEADER].add_prefix('2001:2:0:2::/64', 'paro')
         self.nodes[LEADER].register_netdata()
         time.sleep(5)
 
         addrs = self.nodes[SED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[ED1].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
 if __name__ == '__main__':
diff --git a/tests/scripts/thread-cert/Cert_7_1_04_BorderRouterAsRouter.py b/tests/scripts/thread-cert/Cert_7_1_04_BorderRouterAsRouter.py
index 39caff1..9b17ce2 100755
--- a/tests/scripts/thread-cert/Cert_7_1_04_BorderRouterAsRouter.py
+++ b/tests/scripts/thread-cert/Cert_7_1_04_BorderRouterAsRouter.py
@@ -89,23 +89,23 @@
         time.sleep(5)
         self.assertEqual(self.nodes[SED2].get_state(), 'child')
 
-        self.nodes[ROUTER].add_prefix('2001::/64', 'paros')
-        self.nodes[ROUTER].add_prefix('2002::/64', 'paro')
+        self.nodes[ROUTER].add_prefix('2001:2:0:1::/64', 'paros')
+        self.nodes[ROUTER].add_prefix('2001:2:0:2::/64', 'paro')
         self.nodes[ROUTER].register_netdata()
         time.sleep(5)
 
         addrs = self.nodes[ED2].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED2].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
 if __name__ == '__main__':
diff --git a/tests/scripts/thread-cert/Cert_7_1_05_BorderRouterAsRouter.py b/tests/scripts/thread-cert/Cert_7_1_05_BorderRouterAsRouter.py
index a2f67c2..9601d5e 100755
--- a/tests/scripts/thread-cert/Cert_7_1_05_BorderRouterAsRouter.py
+++ b/tests/scripts/thread-cert/Cert_7_1_05_BorderRouterAsRouter.py
@@ -89,43 +89,43 @@
         time.sleep(5)
         self.assertEqual(self.nodes[SED2].get_state(), 'child')
 
-        self.nodes[ROUTER].add_prefix('2001::/64', 'paros')
-        self.nodes[ROUTER].add_prefix('2002::/64', 'paro')
+        self.nodes[ROUTER].add_prefix('2001:2:0:1::/64', 'paros')
+        self.nodes[ROUTER].add_prefix('2001:2:0:2::/64', 'paro')
         self.nodes[ROUTER].register_netdata()
         time.sleep(5)
 
         addrs = self.nodes[ED2].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED2].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
-        self.nodes[ROUTER].add_prefix('2003::/64', 'paros')
+        self.nodes[ROUTER].add_prefix('2001:2:0:3::/64', 'paros')
         self.nodes[ROUTER].register_netdata()
         time.sleep(5)
 
         addrs = self.nodes[ED2].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2002' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2003' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:2' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:3' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002' or addr[0:4] == '2003':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2' or addr[0:10] == '2001:2:0:3':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
         addrs = self.nodes[SED2].get_addrs()
-        self.assertTrue(any('2001' in addr[0:4] for addr in addrs))
-        self.assertFalse(any('2002' in addr[0:4] for addr in addrs))
-        self.assertTrue(any('2003' in addr[0:4] for addr in addrs))
+        self.assertTrue(any('2001:2:0:1' in addr[0:10] for addr in addrs))
+        self.assertFalse(any('2001:2:0:2' in addr[0:10] for addr in addrs))
+        self.assertTrue(any('2001:2:0:3' in addr[0:10] for addr in addrs))
         for addr in addrs:
-            if addr[0:4] == '2001' or addr[0:4] == '2002' or addr[0:4] == '2003':
+            if addr[0:10] == '2001:2:0:1' or addr[0:10] == '2001:2:0:2' or addr[0:10] == '2001:2:0:3':
                 self.assertTrue(self.nodes[LEADER].ping(addr))
 
 if __name__ == '__main__':