CDRouter Apple HomeKit Test Summaries (Full)
Test Case Descriptions
- Modules: 2
- Test Cases: 97
Below is a full description of the testcases in each module
homekit.tcl
Apple HomeKit-enabled Router Certification Test Plan
Test |
Name |
Synopsis |
HomeKit Test TCSR003 |
homekit_TCSR003 |
HomeKit Test TCSR003 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Use HAT to unpair with the router accessory.
Step 3. Use HAT to attempt to pair with the router accessory without an ownership token.
Step 4. Use HAT to attempt to pair with the router accessory with an invalid ownership token.
Test Metrics:
1. After step 3, the trace view in HAT shows a M2 event that includes
PairingTypeFlags with Bit 30 set.
2. After step 4, the trace view in HAT shows a M6 event that contains
error TLV 070108 <kTLVError_OwnershipFailure>.
Test |
Name |
Synopsis |
HomeKit Test TCSR004 |
homekit_TCSR004 |
HomeKit Test TCSR004 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Perform a port scan on the LAN from a secondary LAN client using TCP and UDP.
Step 3. Perform a ICMP ping from the secondary LAN client to the LAN client.
Step 4. Start a HAP client on the LAN client and allow HAT to discover it.
Step 5. Apply network rules file TCSR004.json through HAT to the client created in step 2.
Step 6. Start a HTTP server on port 2234 on the HAP client started in step 2.
Step 7. Perform a HTTP Get from a second LAN client on the LAN client started in step 2 using port 2234.
Step 8. Perform a UDP Echo from a second LAN client on the LAN client started in step 2.
Step 9. Perform a ICMP ping from a second LAN client on the LAN client started in step 2.
Step 10. Perform a port scan on the LAN from a secondary LAN client using TCP and UDP.
Step 11. Perform a ICMP ping from the secondary LAN client to the LAN client.
Test Metrics:
1. Ensure no ports are blocked in step 2
2. Ensure ICMP is not blocked in step 3.
4. Ensure the HTTP Get in step 7 does succeed.
5. Ensure the UDP echo in step 8 does not succeed.
6. Ensure the ICMP ping in step 9 does not succeed.
7. Ensure only port 2234 over TCP is not blocked in step 10.
8. Ensure ICMP is blocked in step 11.
Test |
Name |
Synopsis |
HomeKit Test TCSR006 |
homekit_TCSR006 |
HomeKit Test TCSR006 |
Test Procedure:
Step 1. Ensure the CDRouter LAN client is configured to connect to
the guest network of the HomeKit enabled router.
Step 2. Send a mDNS PTR request from the LAN client for _hap._tcp.local.
Test Metrics:
1. Ensure that after step 2 the HomeKit enabled router does not
respond to the mDNS request.
Test |
Name |
Synopsis |
HomeKit Test TCSR007 |
homekit_TCSR007 |
HomeKit Test TCSR007 |
Test Procedure:
Step 1. Ensure the HAP client is configured to connect to the satellite node
on the router's network.
Step 2. Send a mDNS query for _hap._tcp.local clients from the HAP client.
Test Metrics:
1. Ensure the router responds to the mDNS query through the satellite node.
Test |
Name |
Synopsis |
HomeKit Test TCSR008 |
homekit_TCSR008 |
HomeKit Test TCSR008 |
Test Procedure:
Step 1. Send a mDNS PTR request from a host on the WAN for _hap._tcp.local.
to the router.
Test Metrics:
1. Ensure that after step 1 the HomeKit enabled router does not
respond to the mDNS request.
Test |
Name |
Synopsis |
HomeKit Test TCSR010 |
homekit_TCSR010 |
HomeKit Test TCSR010 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Confgure the Network Client Profile 1 using '010100' for the WAN Firewall
config and '0101000' for the LAN Firewall config with a PSK of '11111111'.
Step 4. Attempt to reassocicate the HAP client to the router's wireless network
using the new PSK.
Step 5. Attempt to reassocicate the HAP client to the router's wireless network
using the original PSK.
Test Metrics:
1. The HAP client is able to sucessfully associate to the wireless network in step 4.
2. The HAP client is able to sucessfully associate to the wireless network in step 5.
Test |
Name |
Synopsis |
HomeKit Test TCSR011 |
homekit_TCSR011 |
HomeKit Test TCSR011 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Connect an additonal secondary client to the LAN network.
Step 4. Perform a port scan on the HAP client created in step 2 from a
host on the WAN.
Step 5. Perform a port scan on the secondary LAN client created in step 3 from
a host on the WAN.
Step 6. Confgure the Network Client Profile using '0101010200' for the WAN Firewall
config and '0101000' for the LAN Firewall config.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure traffic from the WAN side is not blocked in step 4.
2. Ensure traffic from the WAN side is not blocked in step 5.
3. Ensure traffic from the WAN side is blocked in step 7.
4. Ensure traffic from the WAN side is blocked in step 8.
Test |
Name |
Synopsis |
HomeKit Test TCSR012 |
homekit_TCSR012 |
HomeKit Test TCSR012 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to apply the TCSR012.json network rules file to the HAP client
created in step 2.
Step 4. Use the HAP client to fetch https://www.engadget.com.
Step 5. Use the HAP client to fetch http://www.facebook.com.
Step 6. Use the HAP client to fetch https://www.gizmodo.com.
Step 7. Use the HAP client to fetch https://www.techcrunch.com.
Step 8. Use the HAP client to fetch https://aws.amazon.com.
Step 9. Configure a host on the WAN with IP 200.0.0.10 with an HTTP server running on port 8000
Step 10. Perform a HTTP Get from the HAP LAN client started in step 2 to the host created in step 9 using port 8000.
Step 11. Perform a UDP Echo from the HAP LAN client started in step 2 to the host created in step 9 using port 8000.
Step 12. Perform a ICMP ping from the HAP LAN client started in step 2 to the host created in step 9.
Step 13. Reconfigure the host from step 9 to have IP 200.0.0.11 and a HTTP server running on port 8101
Step 14. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 15. Reconfigure the host from step 9 to have IP 200.0.0.11 and a HTTP server running on port 8181
Step 16. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 17. Reconfigure the host from step 9 to have IP 200.0.0.16 and a HTTP server running on port 8200
Step 18. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 19. Reconfigure the host from step 9 to have IP 200.0.0.20 and a HTTP server running on port 8200
Step 20. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 21. Reconfigure the host from step 9 to have IP 200.0.0.25 and a HTTP server running on port 8300
Step 22. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 23. Reconfigure the host from step 9 to have IP 200.0.0.27 and a HTTP server running on port 8300
Step 24. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 25. Reconfigure the host from step 9 to have IP 200.0.0.30 and a HTTP server running on port 11000
Step 26. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Test Metrics:
1. In step 4 ensure the HAP client is successful in fetching the remote site.
2. In step 5 ensure the HAP client is unsuccessful in fetching the remote site.
3. In step 6 ensure the HAP client is successful in fetching the remote site.
4. In step 7 ensure the HAP client is successful in fetching the remote site.
5. In step 8 ensure the HAP client is successful in fetching the remote site.
6. Ensure step 10 is successful in all interations.
7. Ensure step 11 is unsuccessful in all interations.
8. Ensure step 12 is unsuccessful in all interations.
Test |
Name |
Synopsis |
HomeKit Test TCSR013 |
homekit_TCSR013 |
HomeKit Test TCSR013 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to apply the TCSR013.json network rules file to the HAP client
created in step 2.
Step 4. Configure a host on the WAN with IP 200.0.0.10 with an HTTP server running on port 8000
Step 5. Perform a HTTP Get from the HAP LAN client started in step 2 to the host created in step 9 using port 8000.
Step 6. Perform a UDP Echo from the HAP LAN client started in step 2 to the host created in step 9 using port 8000.
Step 7. Perform a ICMP ping from the HAP LAN client started in step 2 to the host created in step 9.
Step 8. Reconfigure the host from step 9 to have IP 200.0.0.11 and a HTTP server running on port 8101
Step 9. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 10. Reconfigure the host from step 9 to have IP 200.0.0.11 and a HTTP server running on port 8181
Step 11. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 12. Reconfigure the host from step 9 to have IP 200.0.0.16 and a HTTP server running on port 8200
Step 13. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 14. Reconfigure the host from step 9 to have IP 200.0.0.20 and a HTTP server running on port 8200
Step 15. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 16. Reconfigure the host from step 9 to have IP 200.0.0.25 and a HTTP server running on port 8300
Step 17. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 18. Reconfigure the host from step 9 to have IP 200.0.0.27 and a HTTP server running on port 8300
Step 19. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 20. Reconfigure the host from step 9 to have IP 200.0.0.30 and a HTTP server running on port 11000
Step 21. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Test Metrics:
1. Ensure step 5 is unsuccessful in all interations.
2. Ensure step 6 is successful in all interations.
3. Ensure step 7 is unsuccessful in all interations.
Test |
Name |
Synopsis |
HomeKit Test TCSR014 |
homekit_TCSR014 |
HomeKit Test TCSR014 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to apply the TCSR014.json network rules file to the HAP client
created in step 2.
Step 4. Send a ICMP ping from the HAP client started in step 2 to www.engadget.com
Step 5. Send a ICMP ping from the HAP client started in step 2 to www.cnn.com
Step 6. Send a ICMP ping from the HAP client started in step 2 to www.gizmodo.com
Step 7. Send a ICMP ping from the HAP client started in step 2 to www.techcrunch.com
Step 8. Send a ICMP ping from the HAP client started in step 2 to store.amazon.com
Step 9. Send a ICMP ping from the HAP client started in step 2 to www.facebook.com
Step 10. Send a ICMP ping from the HAP client started in step 2 to www.apple.com
Step 11. Configure a host on the WAN with IP 200.0.0.10 with an HTTP server running on port 8000
Step 12. Perform a HTTP Get from the HAP LAN client started in step 2 to the host created in step 11 using port 8000.
Step 13. Perform a UDP Echo from the HAP LAN client started in step 2 to the host created in step 11 using port 8000.
Step 14. Perform a ICMP ping from the HAP LAN client started in step 2 to the host created in step 11.
Test Metrics:
1. The ICMP ping in step 4 is successful.
2. The ICMP ping in step 5 is successful.
3. The ICMP ping in step 6 is successful.
4. The ICMP ping in step 7 is successful.
5. The ICMP ping in step 8 is successful.
6. The ICMP ping in step 9 is unsuccessful.
7. The ICMP ping in step 10 is unsuccessful.
8. The HTTP get in step 12 is unsuccessful.
8. The UDP echo in step 13 is unsuccessful.
8. The ICMP ping in step 14 is successful.
Test |
Name |
Synopsis |
HomeKit Test TCSR015 |
homekit_TCSR015 |
HomeKit Test TCSR015 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Connect a second client to the LAN network.
Step 4. Start a multicast server on the HAP client listening on the 239.255.1.3 group.
Step 5. Send UDP multicast traffic to 239.255.1.3 from the secondary LAN client.
Step 6. Send TCP traffic from the secondary LAN client to the HAP client.
Step 7. Use HAT to apply the TCSR015.json network rules file to the HAP client
created in step 2.
Step 8. Repeat steps 5 and 6.
Test Metrics:
1. UDP multicast traffic is not blocked in step 6.
2. TCP traffic is not blocked in step 7.
3. UDP multicast traffic is not blocked after the network rule has been applied in step 7.
4. TCP traffic is blocked after the network rule has been applied in step 7.
Test |
Name |
Synopsis |
HomeKit Test TCSR016 |
homekit_TCSR016 |
HomeKit Test TCSR016 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Connect a second client to the LAN network.
Step 4. Start a multicast server on the secondary LAN client listening on the 239.255.1.3 group.
Step 5. Send UDP multicast traffic to 239.255.1.3 from the HAP client.
Step 6. Send TCP traffic from the HAP client to the secondary LAN client.
Step 7. Use HAT to apply the TCSR016.json network rules file to the HAP client
created in step 2.
Step 8. Repeat steps 5 and 6.
Test Metrics:
1. UDP multicast traffic is not blocked in step 6.
2. TCP traffic is not blocked in step 7.
3. UDP multicast traffic is not blocked after the network rule has been applied in step 7.
4. TCP traffic is blocked after the network rule has been applied in step 7.
Test |
Name |
Synopsis |
HomeKit Test TCSR017 |
homekit_TCSR017 |
HomeKit Test TCSR017 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client added in step 3 on the HAP client.
Step 5. Perform an ICMP ping from the LAN client added in step 3 to the HAP client.
Step 6. Use HAT to apply the TCSR017.json network rules file to the HAP client started
in step 2.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure only port 9000 over TCP is not blocked in the port scan in step 7.
4. Ensure the ICMP ping fails in step 8.
Test |
Name |
Synopsis |
HomeKit Test TCSR018 |
homekit_TCSR018 |
HomeKit Test TCSR018 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client added in step 3 on the HAP client.
Step 5. Perform an ICMP ping from the LAN client added in step 3 to the HAP client.
Step 6. Use HAT to apply the TCSR018.json network rules file to the HAP client started
in step 2.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure only ports 9000-9100 over TCP are not blocked in the port scan in step 7.
4. Ensure the ICMP ping fails in step 8.
Test |
Name |
Synopsis |
HomeKit Test TCSR019 |
homekit_TCSR019 |
HomeKit Test TCSR019 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client added in step 3 on the HAP client.
Step 5. Perform an ICMP ping from the LAN client added in step 3 to the HAP client.
Step 6. Use HAT to apply the TCSR019.json network rules file to the HAP client started
in step 2.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure only ports 9000 over UDP is not blocked in the port scan in step 7.
4. Ensure the ICMP ping fails in step 8.
Test |
Name |
Synopsis |
HomeKit Test TCSR020 |
homekit_TCSR020 |
HomeKit Test TCSR020 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client added in step 3 on the HAP client.
Step 5. Perform an ICMP ping from the LAN client added in step 3 to the HAP client.
Step 6. Use HAT to apply the TCSR020.json network rules file to the HAP client started
in step 2.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure only ports 9000-9100 over UDP are not blocked in the port scan in step 7.
4. Ensure the ICMP ping fails in step 8.
Test |
Name |
Synopsis |
HomeKit Test TCSR021 |
homekit_TCSR021 |
HomeKit Test TCSR021 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client added in step 3 on the HAP client.
Step 5. Perform an ICMP ping from the LAN client added in step 3 to the HAP client.
Step 6. Use HAT to apply the TCSR021.json network rules file to the HAP client started
in step 2.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure all ports are blocked in the port scan in step 7.
4. Ensure the ICMP ping succeeds in step 8.
Test |
Name |
Synopsis |
HomeKit Test TCSR022 |
homekit_TCSR022 |
HomeKit Test TCSR022 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMP ping from the HAP client to the LAN client added in step 3.
Step 6. Use HAT to apply the TCSR022.json network rules file to the HAP client started
in step 2.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure only port 9000 over TCP is not blocked in the port scan in step 7.
4. Ensure the ICMP ping fails in step 8.
Test |
Name |
Synopsis |
HomeKit Test TCSR023 |
homekit_TCSR023 |
HomeKit Test TCSR023 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMP ping from the HAP client to the LAN client added in step 3.
Step 6. Use HAT to apply the TCSR023.json network rules file to the HAP client started
in step 2.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure only ports 9000-9100 over TCP are not blocked in the port scan in step 7.
4. Ensure the ICMP ping fails in step 8.
Test |
Name |
Synopsis |
HomeKit Test TCSR024 |
homekit_TCSR024 |
HomeKit Test TCSR024 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMP ping from the HAP client to the LAN client added in step 3.
Step 6. Use HAT to apply the TCSR024.json network rules file to the HAP client started
in step 2.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure only port 9000 over UDP is not blocked in the port scan in step 7.
4. Ensure the ICMP ping fails in step 8.
Test |
Name |
Synopsis |
HomeKit Test TCSR025 |
homekit_TCSR025 |
HomeKit Test TCSR025 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMP ping from the HAP client to the LAN client added in step 3.
Step 6. Use HAT to apply the TCSR025.json network rules file to the HAP client started
in step 2.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure only ports 9000-9100 over UDP are not blocked in the port scan in step 7.
4. Ensure the ICMP ping fails in step 8.
Test |
Name |
Synopsis |
HomeKit Test TCSR026 |
homekit_TCSR026 |
HomeKit Test TCSR026 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMP ping from the HAP client to the LAN client added in step 3.
Step 6. Use HAT to apply the TCSR026.json network rules file to the HAP client started
in step 2.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure all ports blocked in the port scan in step 7.
4. Ensure the ICMP ping succeeds in step 8.
Test |
Name |
Synopsis |
HomeKit Test TCSR027 |
homekit_TCSR027 |
HomeKit Test TCSR027 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client added in step 3 to the HAP client.
Step 5. Perform an ICMP ping from the LAN client added in step 3 to the HAP client.
Step 6. Use HAT to apply the TCSR027.json network rules file to the HAP client started
in step 2.
Step 7. Start a DNS-SD server on the HAP client started in step 2 with a _http._tcp service
advertised port 80.
Step 8. Start a DNS-SD client on the secondary LAN client started in step 3.
Step 9. Send a mDNS query to the mDNS multicast group from the mDNS client started in step
8 for _http._tcp.local.
Step 10. Send a HTTP Get to the HAP client from the secondary LAN client.
Step 11. Repeat step 4.
Step 12. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure the mDNS query in step 9 is successful.
4. Ensure the HTTP GET in step 10 is successful.
5. Ensure only port 80 is not blocked in the port scan in step 11.
6. Ensure the ICMP ping in step 12 is unsuccessful.
Test |
Name |
Synopsis |
HomeKit Test TCSR028 |
homekit_TCSR028 |
HomeKit Test TCSR028 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client to the secondary LAN client added in step 2.
Step 5. Perform an ICMP ping from the LAN client to the HAP client added in step 2.
Step 6. Use HAT to apply the TCSR028.json network rules file to the HAP client started
in step 2.
Step 7. Start a SSDP server on the HAP client started in step 2.
Step 8. Start a SSDP client on the secondary LAN client started in step 3.
Step 9. Send a SSDP M-SEARCH to the SSDP multicast group from the secondary LAN client started in step 8.
Step 10. Repeat step 4.
Step 11. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure the SSDP M-SEARCH reaches the HAP client.
5. Ensure all ports are blocked in step 10.
6. Ensure the ICMP ping in step 11 is unsuccessful.
Test |
Name |
Synopsis |
HomeKit Test TCSR029 |
homekit_TCSR029 |
HomeKit Test TCSR029 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMP ping from the HAP client to the LAN client added in step 3.
Step 6. Use HAT to apply the TCSR029.json network rules file to the HAP client started
in step 2.
Step 7. Start a DNS-SD server on the secondary LAN client started in step 3 with a _http._tcp service
advertised port 80.
Step 8. Start a DNS-SD client on the HAP client started in step 2.
Step 9. Send a mDNS query to the mDNS multicast group from the HAP client started in step
2 for _http._tcp.local.
Step 10. Send a HTTP Get to the secondary LAN client from the HAP client.
Step 11. Repeat step 4.
Step 12. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure the mDNS query in step 9 is successful.
4. Ensure the HTTP GET in step 10 is successful.
5. Ensure only port 80 is not blocked in the port scan in step 11.
6. Ensure the ICMP ping in step 12 is unsuccessful.
Test |
Name |
Synopsis |
HomeKit Test TCSR030 |
homekit_TCSR030 |
HomeKit Test TCSR030 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMP ping from the HAP client to the LAN client added in step 3.
Step 6. Use HAT to apply the TCSR030.json network rules file to the HAP client started
in step 2.
Step 7. Start a SSDP server on the secondary LAN client started in step 3.
Step 8. Start a SSDP client on the HAP client started in step 2.
Step 9. Send a SSDP M-SEARCH to the SSDP multicast group from the HAP client started in step 2.
Step 10. Repeat step 4.
Step 11. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure the SSDP M-SEARCH reaches the secondary LAN client.
5. Ensure all ports are blocked in step 10.
6. Ensure the ICMP ping in step 11 is unsuccessful.
Test |
Name |
Synopsis |
HomeKit Test TCSR031 |
homekit_TCSR031 |
HomeKit Test TCSR031 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Send a DNS request from the HAP for www.engadget.com
Step 4. Use HAT to apply the TCSR031.json network rules file to the HAP client started
in step 2.
Step 5. Repeat step 3.
Test Metrics:
1. Ensure the DNS request in step 3 is successful.
2. Ensure the DNS request in step 5 is successful and all TTL values are
clamped to 10 by the router.
Test |
Name |
Synopsis |
HomeKit Test TCSR032 |
homekit_TCSR032 |
HomeKit Test TCSR032 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Send a recursive DNS request from the HAP for api.xbcs.net
Step 4. Use HAT to apply the TCSR032.json network rules file to the HAP client started
in step 2.
Step 5. Repeat step 3.
Test Metrics:
1. Ensure the DNS request in step 3 is successful.
2. Ensure the DNS request in step 5 is successful and all TTL values are
clamped to 10 by the router and the response contains both an A/AAAA and
CNAME anwser.
Test |
Name |
Synopsis |
HomeKit Test TCSR033 |
homekit_TCSR033 |
HomeKit Test TCSR033 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Send a DNS request from the HAP for api.xbcs.net
Test Metrics:
1. Ensure the DNS request in step 3 is successful and that the TTL values are not
clamped to 10 by the router.
Test |
Name |
Synopsis |
HomeKit Test TCSR034 |
homekit_TCSR034 |
HomeKit Test TCSR034 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to apply the TCSR034.json network rules file to the HAP client started
in step 2.
Step 4. Send a UPnP action from the HAP client to the router accessory to add a port mapping
from external port 3333 to internal port 22.
Step 5. Attempt to establish a connection through the port mapping.
Test Metrics:
1. The UPnP action fails and a port mapping cannot be created.
2. A connection through the port mapping in step 5 cannot be established.
Test |
Name |
Synopsis |
HomeKit Test TCSR035 |
homekit_TCSR035 |
HomeKit Test TCSR035 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to apply the TCSR035.json network rules file to the HAP client started
in step 2.
Step 4. Send a UPnP action from the HAP client to the router accessory to add a port mapping
from external port 3333 to internal port 22.
Step 5. Attempt to establish a connection through the port mapping.
Test Metrics:
1. The UPnP action succeeds and a port mapping is created.
2. A connection through the port mapping in step 5 successfully established.
Test |
Name |
Synopsis |
HomeKit Test TCSR036 |
homekit_TCSR036 |
HomeKit Test TCSR036 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to apply the TCSR036.json network rules file to the HAP client started
in step 2.
Step 4. Configure a second LAN client on the LAN to act as a DNS server
Step 5. Using the third-party vendor app configure a DNS server on the LAN at the
address specified by the prompt.
Step 6. Configure an entry in the DNS server from step 5 to point example.com to
a host on the WAN.
Step 7. Perform a HTTP GET for example.com from the HAP client.
Step 8. Update the IP address of the host of example.com and update the DNS entry to be correct.
Step 9. Repeat step 7.
Test Metrics:
1. Both HTTP GETs should succeed.
Test |
Name |
Synopsis |
HomeKit Test TCSR037 |
homekit_TCSR037 |
HomeKit Test TCSR037 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to apply the TCSR037.json network rules file to the HAP client started
in step 2.
Step 4. Perform a HTTP GET from the HAP client to a secondary LAN client on port 9000.
Step 5. Perform a UDP echo from the HAP client to a secondary LAN client on port 9000.
Step 6. Perform a ICMP ping from the HAP client to a secondary LAN client.
Step 7. Perform a HTTP GET from a secondary LAN client to the HAP client on port 9005.
Step 8. Perform a UDP echo from a secondary LAN client to the HAP client on port 9005.
Step 9. Perform a ICMP ping from a secondary LAN client to the HAP client.
Step 10. Perform a port scan of the HAP client from the secondary LAN client.
Step 11. Perform a port scan of a secondary LAN client from the HAP client.
Step 12. Reconfigure the HAP client to have a different IP address.
Step 13. Repeat steps 4 through 11.
Test Metrics:
1. The HTTP GET in step 4 is successful before and after step 13.
2. The UDP echo in step 5 is not successful before and after step 13.
3. The ICMP ping in step 6 is not successful before and after step 13.
4. The port scan in step 10 shows only TCP port 9005 is allowed before and after step 13.
4. The port scan in step 11 shows only TCP port 9000 is allowed before and after step 13.
Test |
Name |
Synopsis |
HomeKit Test TCSR038 |
homekit_TCSR038 |
HomeKit Test TCSR038 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to apply the TCSR038.json network rules file to the HAP client started
in step 2.
Step 4. Perform a HTTP GET from the HAP client to a secondary LAN client on port 9000.
Step 5. Perform a UDP echo from the HAP client to a secondary LAN client on port 9000.
Step 6. Perform a ICMP ping from the HAP client to a secondary LAN client.
Step 7. Perform a HTTP GET from a secondary LAN client to the HAP client on port 9005.
Step 8. Perform a UDP echo from a secondary LAN client to the HAP client on port 9005.
Step 9. Perform a ICMP ping from a secondary LAN client to the HAP client.
Step 10. Perform a port scan of the HAP client from the secondary LAN client.
Step 11. Perform a port scan of a secondary LAN client from the HAP client.
Step 12. Reconfigure the HAP client to have a different IP address.
Step 13. Repeat steps 4 through 11.
Test Metrics:
1. The HTTP GET in step 4 is not successful before and after step 13.
2. The UDP echo in step 5 is successful before and after step 13.
3. The ICMP ping in step 6 is not successful before and after step 13.
4. The port scan in step 10 shows only UDP port 9005 is allowed before and after step 13.
4. The port scan in step 11 shows only UDP port 9000 is allowed before and after step 13.
Test |
Name |
Synopsis |
HomeKit Test TCSR039 |
homekit_TCSR039 |
HomeKit Test TCSR039 |
Test Procedure:
Step 1. Ensure both the gateway node and satellite node are connected and configured to mesh
Step 2. Start discovery on HAT.
Test Metrics:
1. After step 2 both the gateway and satellite nodes are found by HAT.
Test |
Name |
Synopsis |
HomeKit Test TCSR041 |
homekit_TCSR041 |
HomeKit Test TCSR041 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Attempt to pair with the HAP client from step 2.
Step 4. Use HAT to apply the TCSR041.json network rules file to the HAP client started
in step 2.
Step 5. Repeat step 3.
Test Metrics:
1. Before and after the network is applied in step 4 HAT is able to send HAP traffic
to the HAP client.
Test |
Name |
Synopsis |
HomeKit Test TCSR042 |
homekit_TCSR042 |
HomeKit Test TCSR042 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to apply the TCSR042.json network rules file to the HAP client started
in step 2 with the Restricted flag set.
Step 4. Perform a TCP port scan of the HAP client from a second LAN client.
Step 5. Perform a UDP port scan of the HAP client from a second LAN client.
Step 6. Attempt to ping the HAP client from a second LAN client.
Step 7. Perform a TCP scan of a second LAN client from the HAP Client.
Step 8. Perform a UDP scan of a second LAN client from the HAP Client.
Step 9. Attempt to ping a second LAN client from the HAP client.
Test Metrics:
1. In steps 4 through 9 no traffic is permitted to flow to or from the HAP client.
Test |
Name |
Synopsis |
HomeKit Test TCSR043 |
homekit_TCSR043 |
HomeKit Test TCSR043 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Test Metrics:
1. Verify 'Version' is a characteristic under the 'WiFi Router' service
2. Verify 'Supported Router Configuration' is a characteristic under the 'WiFi Router' service
3. Verify 'Configured Name' is a characteristic under the 'WiFi Router' service
4. Verify 'Router Status' is a characteristic under the 'WiFi Router' service
5. Verify 'WAN Configuration List' is a characteristic under the 'WiFi Router' service
6. Verify 'WAN Status List' is a characteristic under the 'WiFi Router' service
7. Verify 'Managed Network Enable' is a characteristic under the 'WiFi Router' service
8. Verify 'Network Client Profile Control' is a characteristic under the 'WiFi Router' service
9. Verify 'Network Client Status Control' is a characteristic under the 'WiFi Router' service
10. Verify 'Network Access Violation Control' is a characteristic under the 'WiFi Router' service
Note:
This is manual test case, the a HAP client will be started and the Discover action will be
called on the router accessory, but the presense of the aformentioned characteristics must be verified
manually.
Test |
Name |
Synopsis |
HomeKit Test TCSR044 |
homekit_TCSR044 |
HomeKit Test TCSR044 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 010100.
Step 3. Repeat step 3 including an additional Client profile addition in the TLV
to bulk add multiple profile.
Step 4. Use HAT to send a timed write to the router accessory with an update operation
and a remove operation on the same profile created in step 3.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the timed write in step 4 is successful.
3. Ensure the timed write in step 5 does not succeed.
Test |
Name |
Synopsis |
HomeKit Test TCSR045 |
homekit_TCSR045 |
HomeKit Test TCSR045 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 010100.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use HAT to send timed write to the router accessory to list the members of
the Client Group Identifer 1.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the routers response from step 5 contains the client profile 1.
Test |
Name |
Synopsis |
HomeKit Test TCSR046 |
homekit_TCSR046 |
HomeKit Test TCSR046 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 010100.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use HAT to send timed write to the router accessory to read the configuration of
the Client Profile 1.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the routers response from step 5 contains the network client
profile configuration for Network Client Profile 1.
Test |
Name |
Synopsis |
HomeKit Test TCSR047 |
homekit_TCSR047 |
HomeKit Test TCSR047 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 010100.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use HAT to send timed write to the router accessory to remove
Client Profile 1.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the routers response does not contain information about the removed
client profile.
Test |
Name |
Synopsis |
HomeKit Test TCSR048 |
homekit_TCSR048 |
HomeKit Test TCSR048 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 010100.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use HAT to send timed write to the router accessory to update
Client Profile 1 to use the Client Group identifier of 3 and a WAN and LAN
firewall configuration of 0101010200.
Step 6. Using the HAP client created in step 2, attempt to reach a restricted host on
the WAN.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the timed write in step 5 is successful.
4. Ensure the HAP client cannot access a restricted host in step 6.
Test |
Name |
Synopsis |
HomeKit Test TCSR049 |
homekit_TCSR049 |
HomeKit Test TCSR049 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 010100.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use the Network Client Status form in the Wifi Router service summary page
to read all clients with a client profile ID of 1 from the router.
Step 6. Use the Network Client Status form in the Wifi Router service summary page
to read all clients with the IP of the HAP Client from the router.
Step 7. Use the Network Client Status form in the Wifi Router service summary page
to read all clients with the MAC of the HAP client from the router.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the client information returned from the router in step 5 matches the
HAP client.
4. Ensure the client information returned from the router in step 6 matches the
HAP client.
5. Ensure the client information returned from the router in step 7 matches the
HAP client.
Test |
Name |
Synopsis |
HomeKit Test TCSR050 |
homekit_TCSR050 |
HomeKit Test TCSR050 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 3
and a WAN and LAN firewall config value of 0101010200.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use the HAP client created in step 2 to attempt to reach a restricted domain
on the WAN.
Step 6. Use HAT to list the network access violations control.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the HAP client cannot reach a restricted host in step 5.
4. Ensure the router returns an entry with a timestamp that matches step 5.
Test |
Name |
Synopsis |
HomeKit Test TCSR051 |
homekit_TCSR051 |
HomeKit Test TCSR051 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 0101010200.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use the HAP client created in step 2 to attempt to reach a restricted domain
on the WAN.
Step 6. Use HAT to list the network access control violations.
Step 7. Use HAT to send a reset to the Network Access Violations Control for the
client identifier of 1.
Step 8. Use HAT to list the network access violations control.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the HAP client cannot reach a restricted host in step 5.
4. Ensure the router returns an entry with a timestamp that matches step 5.
5. Ensure the router does not return an entry with a timestamp that matches step 5,
after the Network Access Violation Control has been reset.
Test |
Name |
Synopsis |
HomeKit Test TCSR052 |
homekit_TCSR052 |
HomeKit Test TCSR052 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to apply the TCSR052.json network rules file to the HAP client started
in step 2 with the Full Access flag set.
Step 4. Start a TCP session between a second LAN client and the HAP client.
Step 5. Use HAT to apply the TCSR052.json network rules file to the HAP client started
in step 2.
Step 6. Reset the Network Rules using the Full Access Flag.
Step 7. Start a TCP session between a second LAN client and the HAP client.
Step 8. Use HAT to apply the TCSR052.json network rules file to the HAP client started
in step 2 with the Restricted flag set.
Test Metrics:
1. Verify a TCP session could be established between the second LAN client and the
HAP client in step 4.
2. Verify the TCP session is not severed after step 5.
3. Verify a TCP session could be established between the second LAN client and the
HAP client in step 6.
4. Verify the TCP session is severed after step 7.
Test |
Name |
Synopsis |
HomeKit Test TCSR053 |
homekit_TCSR053 |
HomeKit Test TCSR053 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to apply the TCSR053.json network rules file to the HAP client
created in step 2.
Step 4. Create a second HAP client and allow it to be discovered by the router accessory.
Step 5. Use HAT to apply the TCSR053.json network rules file to the second HAP client
created in step 4.
Step 5. Perform a HTTP Get from the second HAP client started in step 4 to the HAP client created in step 2 using port 9000.
Step 5. Perform a HTTP Get from the HAP client created in step 2 to the second HAP client started in step 4 using port 9000.
Step 8. Perform a port scan on the HAP client created in step 2 from the second HAP client created in step 4.
Test Metrics:
1. Ensure the HTTP GET is successful in step 5.
2. Ensure the HTTP GET is successful in step 6.
3. Ensure only port 9000 over TCP is not block in the port scan during step 8.
Test |
Name |
Synopsis |
HomeKit Test TCSR054 |
homekit_TCSR054 |
HomeKit Test TCSR054 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 0101010200.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use HAT to enable Event Notifcations for Network Violations.
Step 6. Use HAT to send a reset to the Network Access Violations Control for the
client identifier of 1.
Step 7. Use the HAP client created in step 2 to attempt to reach a restricted domain
on the WAN.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the HAP client cannot reach a restricted host in step 6.
5. Ensure the router sends a Network Access Violation for the attempted access
in step 7.
homekit-v6.tcl
IPv6 Apple HomeKit-enabled Router Certification Test Plan
Test |
Name |
Synopsis |
HomeKit TCSR003 IPv6 |
homekit_TCSR003_ipv6 |
HomeKit TCSR003 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Use HAT to unpair with the router accessory.
Step 3. Use HAT to attempt to pair with the router accessory without an ownership token.
Step 4. Use HAT to attempt to pair with the router accessory with an invalid ownership token.
Test Metrics:
1. After step 3, the trace view in HAT shows a M2 event that includes PairingTypeFlags with Bit 30 set.
2. After step 4, the trace view in HAT shows a M6 event that contains error TLV 070108 <kTLVError_OwnershipFailure>.
Test |
Name |
Synopsis |
HomeKit TCSR004 IPv6 |
homekit_TCSR004_ipv6 |
HomeKit TCSR004 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Perform a port scan on the LAN from a secondary LAN client using TCP and UDP.
Step 3. Perform a ICMPv6 ping from the secondary LAN client to the LAN client.
Step 4. Start a HAP client on the IPv6-only LAN client and allow HAT to discover it.
Step 5. Apply network rules file TCSR004_IPV6.json through HAT to the client created in step 2.
Step 6. Start a HTTP server on port 2234 on the HAP client started in step 2.
Step 7. Perform a HTTP Get from a second LAN client on the LAN client started in step 2 using port 2234.
Step 8. Perform a UDP Echo from a second LAN client on the LAN client started in step 2.
Step 9. Perform a ICMPv6 ping from a second LAN client on the LAN client started in step 2.
Step 10. Perform a port scan on the LAN from a secondary LAN client using TCP and UDP.
Step 11. Perform a ICMPv6 ping from the secondary LAN client to the LAN client.
Step 12. Perform Step 3 thru 11 using link-local address of both LAN clients.
Test Metrics:
1. Ensure no ports are blocked in step 2
2. Ensure ICMPv6 is not blocked in step 3.
3. Ensure the HTTP Get in step 7 does succeed.
4. Ensure the UDP echo in step 8 does not succeed.
5. Ensure the ICMPv6 ping in step 9 does not succeed.
6. Ensure only port 2234 over TCP is not blocked in step 10.
7. Ensure ICMPv6 is blocked in step 11.
8. Ensure Steps 1 thru 7 work with link-local addresses.
Test |
Name |
Synopsis |
HomeKit TCSR006 IPv6 |
homekit_TCSR006_ipv6 |
HomeKit TCSR006 IPv6 |
Test Procedure:
Step 1. Ensure the CDRouter IPv6 LAN client is configured to connect to the
guest network of the HomeKit enabled router.
Step 2. Send a mDNS PTR request from the LAN client for _hap._tcp.local using
a global source address.
Step 3. Send a mDNS PTR request from the LAN client for _hap._tcp.local using
a link-local source address.
Test Metrics:
1. Ensure that after step 2 the HomeKit enabled router does not respond to the
mDNS request from the global address.
2. Ensure that after step 2 the HomeKit enabled router does not respond to the
mDNS request from the link-local.
Test |
Name |
Synopsis |
HomeKit TCSR007 IPv6 |
homekit_TCSR007_ipv6 |
HomeKit TCSR007 IPv6 |
Test Procedure:
Step 1. Ensure the HAP client is configured to connect to the satellite node on the router's network.
Step 2. Send a mDNS query for _hap._tcp.local clients from the HAP client.
Test Metrics:
1. Ensure the router responds to the mDNS query through the satellite node.
Test |
Name |
Synopsis |
HomeKit TCSR008 IPv6 |
homekit_TCSR008_ipv6 |
HomeKit TCSR008 IPv6 |
Test Procedure:
Step 1. Send a mDNS PTR request over IPv6 from a host on the WAN for
_hap._tcp.local. to the router.
Step 2. Send a mDNS PTR request over IPv6 from a host using the link-local
address on the WAN for _hap._tcp.local. to the router.
Test Metrics:
1. Ensure that after step 1 the HomeKit enabled router does not respond to
the mDNS request.
2. Ensure that after step 2 the HomeKit enabled router does not respond to
the link-local mDNS request.
Test |
Name |
Synopsis |
HomeKit TCSR010 IPv6 |
homekit_TCSR010_ipv6 |
HomeKit TCSR010 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Confgure the Network Client Profile 1 using '010100' for the WAN
Firewall config and '0101000' for the LAN Firewall config with a PSK of '11111111'.
Step 4. Attempt to reassocicate the HAP client to the router's wireless network using the new PSK.
Step 5. Attempt to reassocicate the HAP client to the router's wireless network using the original PSK.
Test Metrics:
1. The HAP client is able to sucessfully associate to the wireless network in step 4.
2. The HAP client is able to sucessfully associate to the wireless network in step 5.
Test |
Name |
Synopsis |
HomeKit TCSR011 IPv6 |
homekit_TCSR011_ipv6 |
HomeKit TCSR011 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Connect an additonal secondary client to the LAN network.
Step 4. Perform a port scan over IPv6 on the HAP client created in step 2 from a host on the WAN.
Step 5. Perform a port scan over IPv6 on the secondary LAN client created in
step 3 from a host on the WAN.
Step 6. Confgure the Network Client Profile using '0101010200' for the WAN
Firewall config and '0101000' for the LAN Firewall config.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure traffic from the WAN side is not blocked in step 4.
2. Ensure traffic from the WAN side is not blocked in step 5.
3. Ensure traffic from the WAN side is blocked in step 7.
4. Ensure traffic from the WAN side is blocked in step 8.
Test |
Name |
Synopsis |
HomeKit TCSR012 IPv6 |
homekit_TCSR012_ipv6 |
HomeKit TCSR012 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to apply the TCSR012_IPV6.json network rules file to the HAP client
created in step 2.
Step 4. Use the HAP client to fetch https://www.engadget.com.
Step 5. Use the HAP client to fetch http://www.facebook.com.
Step 6. Use the HAP client to fetch https://www.gizmodo.com.
Step 7. Use the HAP client to fetch https://www.techcrunch.com.
Step 8. Use the HAP client to fetch https://aws.amazon.com.
Step 9. Configure a host on the WAN with IPv6 3001:cafe:1000::10 with an HTTP server running on port 8000
Step 10. Perform a HTTP Get from the HAP LAN client started in step 2 to the host created in step 9 using port 8000.
Step 11. Perform a UDP Echo from the HAP LAN client started in step 2 to the host created in step 9 using port 8000.
Step 12. Perform a ICMP ping from the HAP LAN client started in step 2 to the host created in step 9.
Step 13. Reconfigure the host from step 9 to have IPv6 3001:cafe:1000::11 and a HTTP server running on port 8101
Step 14. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 15. Reconfigure the host from step 9 to have IPv6 3001:cafe:1000::11 and a HTTP server running on port 8181
Step 16. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 17. Reconfigure the host from step 9 to have IPv6 3001:cafe:1000::16 and a HTTP server running on port 8200
Step 18. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 19. Reconfigure the host from step 9 to have IPv6 3001:cafe:1000::20 and a HTTP server running on port 8200
Step 20. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 21. Reconfigure the host from step 9 to have IPv6 3001:cafe:1000::25 and a HTTP server running on port 8300
Step 22. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 23. Reconfigure the host from step 9 to have IPv6 3001:cafe:1000::27 and a HTTP server running on port 8300
Step 24. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 25. Reconfigure the host from step 9 to have IPv6 3001:cafe:1000::30 and a HTTP server running on port 11000
Step 26. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Test Metrics:
1. In step 4 ensure the HAP client is successful in fetching the remote site.
2. In step 5 ensure the HAP client is unsuccessful in fetching the remote site.
3. In step 6 ensure the HAP client is successful in fetching the remote site.
4. In step 7 ensure the HAP client is successful in fetching the remote site.
5. In step 8 ensure the HAP client is successful in fetching the remote site.
6. Ensure step 10 is successful in all interations.
7. Ensure step 11 is unsuccessful in all interations.
8. Ensure step 12 is unsuccessful in all interations.
Test |
Name |
Synopsis |
HomeKit TCSR013 IPv6 |
homekit_TCSR013_ipv6 |
HomeKit TCSR013 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to apply the TCSR013_IPV6.json network rules file to the HAP client created in step 2.
Step 4. Configure a host on the WAN with IPv6 3001:cafe:1000:10 with an HTTP server running on port 8000
Step 5. Perform a HTTP Get from the HAP LAN client started in step 2 to the host created in step 9 using port 8000.
Step 6. Perform a UDP Echo from the HAP LAN client started in step 2 to the host created in step 9 using port 8000.
Step 7. Perform a ICMPv6 ping from the HAP LAN client started in step 2 to the host created in step 9.
Step 8. Reconfigure the host from step 9 to have IP 3001:cafe:1000::11 and a HTTP server running on port 8101
Step 9. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 10. Reconfigure the host from step 9 to have IP 3001:cafe:1000::11 and a HTTP server running on port 8181
Step 11. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 12. Reconfigure the host from step 9 to have IP 3001:cafe:1000::16 and a HTTP server running on port 8200
Step 13. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 14. Reconfigure the host from step 9 to have IP 3001:cafe:1000::20 and a HTTP server running on port 8200
Step 15. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 16. Reconfigure the host from step 9 to have IP 3001:cafe:1000::25 and a HTTP server running on port 8300
Step 17. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Step 18. Reconfigure the host from step 9 to have IP 3001:cafe:1000::27 and a HTTP server running on port 8300
Step 19. Repeat steps 10-12 using the IP and port reconfigured in step 13.
Test Metrics:
1. Ensure step 5 is unsuccessful in all interations.
2. Ensure step 6 is successful in all interations.
3. Ensure step 7 is unsuccessful in all interations.
Test |
Name |
Synopsis |
HomeKit TCSR014 IPv6 |
homekit_TCSR014_ipv6 |
HomeKit TCSR014 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to apply the TCSR014_IPV6.json network rules file to the HAP client created in step 2.
Step 4. Send a ICMPv6 ping from the HAP client started in step 2 to www.engadget.com
Step 5. Send a ICMPv6 ping from the HAP client started in step 2 to www.cnn.com
Step 6. Send a ICMPv6 ping from the HAP client started in step 2 to www.gizmodo.com
Step 7. Send a ICMPv6 ping from the HAP client started in step 2 to www.techcrunch.com
Step 8. Send a ICMPv6 ping from the HAP client started in step 2 to store.amazon.com
Step 9. Send a ICMPv6 ping from the HAP client started in step 2 to www.facebook.com
Step 10. Send a ICMPv6 ping from the HAP client started in step 2 to www.apple.com
Step 11. Configure a host on the WAN with IP 3001:cafe:1000::10 with an HTTP server running on port 8000
Step 12. Perform a HTTP Get from the HAP LAN client started in step 2 to the host created in step 11 using port 8000.
Step 13. Perform a UDP Echo from the HAP LAN client started in step 2 to the host created in step 11 using port 8000.
Step 14. Perform a ICMPv6 ping from the HAP LAN client started in step 2 to the host created in step 11.
Test Metrics:
1. The ICMPv6 ping in step 4 is successful.
2. The ICMPv6 ping in step 5 is successful.
3. The ICMPv6 ping in step 6 is successful.
4. The ICMPv6 ping in step 7 is successful.
5. The ICMPv6 ping in step 8 is successful.
6. The ICMPv6 ping in step 9 is unsuccessful.
7. The ICMPv6 ping in step 10 is unsuccessful.
8. The HTTP get in step 12 is unsuccessful.
9. The UDP echo in step 13 is unsuccessful.
10. The ICMP ping in step 14 is successful
Test |
Name |
Synopsis |
HomeKit TCSR015 IPv6 |
homekit_TCSR015_ipv6 |
HomeKit TCSR015 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Connect a second client to the LAN network.
Step 4. Start a multicast server on the HAP client listening on the FF0E::FF:1:3 group.
Step 5. Send UDP multicast traffic to FF0E::FF:1:3 from the secondary LAN client.
Step 6. Send TCP traffic from the secondary LAN client to the HAP client.
Step 7. Use HAT to apply the TCSR015_IPv6.json network rules file to the HAP client created in step 2.
Step 8. Repeat steps 5 and 6
Test Metrics:
1. UDP multicast traffic is not blocked in step 6.
2. TCP traffic is not blocked in step 7.
3. UDP multicast traffic is not blocked after the network rule has been applied in step 7.
4. TCP traffic is blocked after the network rule has been applied in step 7.
Test |
Name |
Synopsis |
HomeKit TCSR016 IPv6 |
homekit_TCSR016_ipv6 |
HomeKit TCSR016 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Connect a second client to the LAN network.
Step 4. Start a multicast server on the secondary LAN client listening on the FF0E::FF:1:3 group.
Step 5. Send UDP multicast traffic to FF0E::FF:1:3 from the HAP client.
Step 6. Send TCP traffic from the HAP client to the secondary LAN client.
Step 7. Use HAT to apply the TCSR016_IPV6.json network rules file to the HAP client
created in step 2.
Step 8. Repeat steps 5 and 6.
Test Metrics:
1. UDP multicast traffic is not blocked in step 6.
2. TCP traffic is not blocked in step 7.
3. UDP multicast traffic is not blocked after the network rule has been applied in step 7.
4. TCP traffic is blocked after the network rule has been applied in step 7.
Test |
Name |
Synopsis |
HomeKit TCSR017 IPv6 |
homekit_TCSR017_ipv6 |
HomeKit TCSR017 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client added in step 3 on the HAP client.
Step 5. Perform an ICMPv6 ping from the LAN client added in step 3 to the HAP client.
Step 6. Perform a link-local TCP and UDP port scan on the LAN client added in step 3 on the HAP client.
Step 7. Perform a link-local ICMPv6 ping from the LAN client added in step 3 to the HAP client.
Step 8. Use HAT to apply the TCSR017.json network rules file to the HAP client started in step 2.
Step 9. Repeat step 4.
Step 10. Repeat step 5.
Step 11. Repeat step 6.
Step 12. Repeat step 7.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMPv6 ping in step 5 is successful.
3. Ensure no ports are blocked during the link-local TCP or UDP port scan in step 6.
4. Ensure the link-local ICMPv6 ping in step 7 is successful.
5. Ensure only port 9000 over TCP is not blocked in the port scan in step 9.
6. Ensure the ICMPv6 ping fails in step 10.
7. Ensure only port 9000 over link-local TCP is not blocked in the port scan in step 11.
8. Ensure the link-local ICMPv6 ping fails in step 12.
Test |
Name |
Synopsis |
HomeKit TCSR018 IPv6 |
homekit_TCSR018_ipv6 |
HomeKit TCSR018 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client added in step 3 on the HAP client.
Step 5. Perform an ICMPv6 ping from the LAN client added in step 3 to the HAP client.
Step 6. Perform a link-local TCP and UDP port scan from the LAN client added in step 3 on the HAP client.
Step 7. Perform an link-local ICMPv6 ping from the LAN client added in step 3 to the HAP client.
Step 8. Use HAT to apply the TCSR018.json network rules file to the HAP client started
in step 2.
Step 9. Repeat step 4.
Step 10. Repeat step 5.
Step 11. Repeat step 6.
Step 12. Repeat step 7.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMPv6 ping in step 5 is successful.
3. Ensure no ports are blocked during the TCP or UDP link-local port scan in step 6.
4. Ensure the link-local ICMPv6 ping in step 7 is successful.
5. Ensure only ports 9000-9100 over TCP are not blocked in the port scan in step 9.
6. Ensure the ICMPv6 ping fails in step 10.
7. Ensure only ports 9000-9100 over link-local TCP are not blocked in the link-local port scan in step 11.
8. Ensure the link-local ICMPv6 ping fails in step 12.
Test |
Name |
Synopsis |
HomeKit TCSR020 IPv6 |
homekit_TCSR020_ipv6 |
HomeKit TCSR020 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client added in step 3 on the HAP client.
Step 5. Perform an ICMPv6 ping from the LAN client added in step 3 to the HAP client.
Step 6. Perform a link-local TCP and UDP port scan from the LAN client added in step 3 on the HAP client.
Step 7. Perfrom an link-local ICMPv6 ping from the LAN client added in step to the HAP client.
Step 8. Use HAT to apply the TCSR020.json network rules file to the HAP client started
in step 2.
Step 9. Repeat step 4.
Step 10. Repeat step 5.
Step 11. Repeat step 6.
Step 12. Repeat step 7.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMPv6 ping in step 5 is successful.
3. Ensure no ports are blocked during the TCP or UDP link-local port scan in step 6.
4. Ensure the ICMPv6 link-local ping in step 7 is successful.
5. Ensure only ports 9000-9100 over UDP are not blocked in the port scan in step 9.
6. Ensure the ICMPv6 ping fails in step 10.
7. Ensure only ports 9000-9100 over link-local UDP are not blocked in the port scan in step 11.
8. Ensure the link-local ICMPv6 ping fails in step 12.
Test |
Name |
Synopsis |
HomeKit TCSR021 IPv6 |
homekit_TCSR021_ipv6 |
HomeKit TCSR021 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client added in step 3 on the HAP client.
Step 5. Perform an ICMPv6 ping from the LAN client added in step 3 to the HAP client.
Step 6. Use HAT to apply the TCSR021.json network rules file to the HAP client started
in step 2.
Step 7. Repeat step 4.
Step 8. Repeat step 5.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMPv6 ping in step 5 is successful.
3. Ensure all ports are blocked in the port scan in step 7.
4. Ensure the ICMPv6 ping succeeds in step 8.
Test |
Name |
Synopsis |
HomeKit TCSR022 IPv6 |
homekit_TCSR022_ipv6 |
HomeKit TCSR022 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMPv6 ping from the HAP client to the LAN client added in step 3.
Step 6. Perform a link-local TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 7. Perform an link-local ICMPv6 ping from the HAP client to the LAN client added in step 3.
Step 8. Use HAT to apply the TCSR022.json network rules file to the HAP client started
in step 2.
Step 9. Repeat step 4.
Step 10. Repeat step 5.
Step 11. Repeat step 6.
Step 12. Repeat step 7.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMPv6 ping in step 5 is successful.
3. Ensure no ports are blocked during the link-local TCP or UDP port scan in step 6.
4. Ensure the link-local ICMPv6 ping in step 7 is successful.
5. Ensure only port 9000 over TCP is not blocked in the port scan in step 9.
6. Ensure the ICMPv6 ping fails in step 10.
7. Ensure only port 9000 over link-local TCP is not blocked in the port scan in step 11.
8. Ensure the link-local ICMPv6 ping fails in step 12.
Test |
Name |
Synopsis |
HomeKit TCSR023 IPv6 |
homekit_TCSR023_ipv6 |
HomeKit TCSR023 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMPv6 ping from the HAP client to the LAN client added in step 3.
Step 6. Perform a link-local TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 7. Perform an link-local ICMPv6 ping from the link-local address on the HAP client to the LAN client added in step 3.
Step 8. Use HAT to apply the TCSR023.json network rules file to the HAP client started
in step 2.
Step 9. Repeat step 4.
Step 10. Repeat step 5.
Step 11. Repeat step 6.
Step 12. Repeat step 7.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMPv6 ping in step 5 is successful.
3. Ensure no ports are blocked during the link-local TCP or UDP port scan in step 6.
4. Ensure the link-local ICMPv6 ping in step 7 is successful.
5. Ensure only ports 9000-9100 over TCP are not blocked in the port scan in step 9.
6. Ensure the ICMPv6 ping fails in step 10.
7. Ensure only ports 9000-9100 over link-local TCP are not blocked in the port scan in step 11.
8. Ensure the link-local ICMPv6 ping fails in step 12.
Test |
Name |
Synopsis |
HomeKit TCSR024 IPv6 |
homekit_TCSR024_ipv6 |
HomeKit TCSR024 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMPv6 ping from the HAP client to the LAN client added in step 3.
Step 6. Perform a link-local TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 7. Perform an link-local ICMPv6 ping from the HAP client to the LAN client added in step 3.
Step 8. Use HAT to apply the TCSR024.json network rules file to the HAP client started
in step 2.
Step 9. Repeat step 4.
Step 10. Repeat step 5.
Step 11. Repeat step 6.
Step 12. Repeat step 7.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMPv6 ping in step 5 is successful.
3. Ensure no ports are blocked during the link-local TCP or UDP port scan in step 6.
4. Ensure the link-local ICMPv6 ping in step 7 is successful.
5. Ensure only port 9000 over UDP is not blocked in the port scan in step 9.
6. Ensure the ICMPv6 ping fails in step 10.
7. Ensure only port 9000 over link-local UDP is not blocked in the port scan in step 11.
8. Ensure the link-local ICMPv6 ping fails in step 12.
Test |
Name |
Synopsis |
HomeKit TCSR025 IPv6 |
homekit_TCSR025_ipv6 |
HomeKit TCSR025 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMP ping from the HAP client to the LAN client added in step 3.
Step 6. Perform a link-local TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 7. Perform an link-local ICMPv6 ping from the HAP client to the LAN client added in step 3.
Step 8. Use HAT to apply the TCSR025.json network rules file to the HAP client started
in step 2.
Step 9. Repeat step 4.
Step 10. Repeat step 5.
Step 11. Repeat step 6.
Step 12. Repeat step 7.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMPv6 ping in step 5 is successful.
3. Ensure no ports are blocked during the link-local TCP or UDP port scan in step 4.
4. Ensure the link-local ICMPv6 ping in step 5 is successful.
5. Ensure only ports 9000-9100 over UDP are not blocked in the port scan in step 7.
6. Ensure the ICMPv6 ping fails in step 8.
7. Ensure only ports 9000-9100 over link-local UDP are not blocked in the port scan in step 7.
8. Ensure the link-local ICMPv6 ping fails in step 8.
Test |
Name |
Synopsis |
HomeKit TCSR026 IPv6 |
homekit_TCSR026_ipv6 |
HomeKit TCSR026 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMPv6 ping from the HAP client to the LAN client added in step 3.
Step 6. Perform a link-local TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 7. Perform an link-local ICMPv6 ping from the HAP client to the LAN client added in step 3.
Step 8. Use HAT to apply the TCSR026.json network rules file to the HAP client started
in step 2.
Step 9. Repeat step 4.
Step 10. Repeat step 5.
Step 11. Repeat step 6.
Step 12. Repeat step 7.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMPv6 ping in step 5 is successful.
3. Ensure no ports are blocked during the link-local TCP or UDP port scan in step 6.
4. Ensure the link-local ICMPv6 ping in step 7 is successful.
5. Ensure all ports blocked in the port scan in step 9.
6. Ensure the ICMPv6 ping succeeds in step 10.
7. Ensure all ports blocked in the link-local port scan in step 11.
8. Ensure the link-local ICMPv6 ping succeeds in step 12.
Test |
Name |
Synopsis |
HomeKit TCSR027 IPv6 |
homekit_TCSR027_ipv6 |
HomeKit TCSR027 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client added in step 3 to the HAP client.
Step 5. Perform an ICMPv6 ping from the LAN client added in step 3 to the HAP client.
Step 6. Perform a link-local TCP and UDP port scan from the LAN client added in step 3 to the HAP client.
Step 7. Perform a link-local ICMPv6 ping from the LAN client added in step 3 to the HAP client.
Step 8. Use HAT to apply the TCSR027.json network rules file to the HAP client started
in step 2.
Step 9. Start a DNS-SD server on the HAP client started in step 2 with a _http._tcp service
advertised port 80.
Step 10. Start a DNS-SD client on the secondary LAN client started in step 3.
Step 11. Send a mDNS query to the mDNS multicast group from the mDNS client started in step
8 for _http._tcp.local.
Step 12. Send a HTTP Get to the HAP client from the secondary LAN client.
Step 13. Repeat step 4.
Step 14. Repeat step 5.
Step 15. Repeat step 6.
Step 16. Repeat step 7.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMPv6 ping in step 5 is successful.
3. Ensure no ports are blocked during the link-local TCP or UDP port scan in step 6.
4. Ensure the link-local ICMPv6 ping in step 7 is successful.
3. Ensure the mDNS query in step 11 is successful.
4. Ensure the HTTP GET in step 12 is successful.
5. Ensure only port 80 is not blocked in the port scan in step 13.
6. Ensure the ICMPv6 ping in step 14 is unsuccessful.
7. Ensure only port 80 is not blocked in the link-local port scan in step 15.
8. Ensure the link-local ICMPv6 ping in step 16 is unsuccessful.
Test |
Name |
Synopsis |
HomeKit TCSR028 IPv6 |
homekit_TCSR028_ipv6 |
HomeKit TCSR028 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the LAN client to the secondary LAN client added in step 2.
Step 5. Perform an ICMPv6 ping from the LAN client to the HAP client added in step 2.
Step 6. Perform a link-local TCP and UDP port scan from the LAN client to the secondary LAN client added in step 2.
Step 7. Perform an link-local ICMPv6 ping from the LAN client to the HAP client added in step 2.
Step 8. Use HAT to apply the TCSR028.json network rules file to the HAP client started
in step 2.
Step 9. Start a SSDP server on the HAP client started in step 2.
Step 10. Start a SSDP client on the secondary LAN client started in step 3.
Step 11. Send a SSDP M-SEARCH to the SSDP multicast group from the secondary LAN client started in step 8.
Step 12. Repeat step 4.
Step 13. Repeat step 5.
Step 14. Repeat step 6.
Step 15. Repeat step 7.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMP ping in step 5 is successful.
3. Ensure the SSDP M-SEARCH reaches the HAP client.
4. Ensure all ports are blocked in step 12.
5. Ensure the ICMPv6 ping in step 13 is unsuccessful.
5. Ensure all link-local ports are blocked in step 14.
6. Ensure the link-local ICMPv6 ping in step 15 is unsuccessful.
Test |
Name |
Synopsis |
HomeKit TCSR029 IPv6 |
homekit_TCSR029_ipv6 |
HomeKit TCSR029 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMPv6 ping from the HAP client to the LAN client added in step 3.
Step 6. Perform a link-local TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 7. Perform a link-local ICMPv6 ping from the HAP client to the LAN client added in step 3.
Step 8. Use HAT to apply the TCSR029_IPv6.json network rules file to the HAP client started
in step 2.
Step 9. Start a DNS-SD server on the secondary LAN client started in step 3 with a _http._tcp service
advertised port 80.
Step 10. Start a DNS-SD client on the HAP client started in step 2.
Step 11. Send a mDNS query to the mDNS multicast group from the HAP client started in step
2 for _http._tcp.local.
Step 12. Send a HTTP Get to the secondary LAN client from the HAP client.
Step 13. Repeat step 4.
Step 14. Repeat step 5.
Step 15. Repeat step 6.
Step 16. Repeat step 7.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMPv6 ping in step 5 is successful.
3. Ensure the mDNS query in step 9 is successful.
4. Ensure the HTTP GET in step 10 is successful.
5. Ensure only port 80 is not blocked in the port scan in step 13.
6. Ensure the ICMPv6 ping in step 14 is unsuccessful.
7. Ensure only port 80 is not blocked in the link-local port scan in step 13.
8. Ensure the link-local ICMPv6 ping in step 14 is unsuccessful.
Test |
Name |
Synopsis |
HomeKit TCSR030 IPv6 |
homekit_TCSR030_ipv6 |
HomeKit TCSR030 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Add a secondary client to the LAN network.
Step 4. Perform a TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 5. Perform an ICMPv6 ping from the HAP client to the LAN client added in step 3.
Step 6. Perform a link-local TCP and UDP port scan from the HAP client on the LAN client added in step 3.
Step 7. Perform a link-local ICMPv6 ping from the HAP client to the LAN client added in step 3.
Step 8. Use HAT to apply the TCSR030_IPv6.json network rules file to the HAP client started
in step 2.
Step 9. Start a SSDP server on the secondary LAN client started in step 3.
Step 10. Start a SSDP client on the HAP client started in step 2.
Step 11. Send a SSDP M-SEARCH to the SSDP multicast group from the HAP client started in step 2.
Step 12. Repeat step 4.
Step 13. Repeat step 5.
Step 14. Repeat step 6.
Step 15. Repeat step 7.
Test Metrics:
1. Ensure no ports are blocked during the TCP or UDP port scan in step 4.
2. Ensure the ICMPv6 ping in step 5 is successful.
3. Ensure the SSDP M-SEARCH reaches the secondary LAN client.
4. Ensure all ports are blocked in step 12.
5. Ensure the ICMPv6 ping in step 13 is unsuccessful.
6. Ensure all link-local ports are blocked in step 12.
7. Ensure the link-local ICMPv6 ping in step 13 is unsuccessful.
Test |
Name |
Synopsis |
HomeKit TCSR031 IPv6 |
homekit_TCSR031_ipv6 |
HomeKit TCSR031 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Send a DNS request from the HAP for www.engadget.com
Step 4. Use HAT to apply the TCSR031.json network rules file to the HAP client started
in step 2.
Step 5. Repeat step 3.
Test Metrics:
1. Ensure the DNS request in step 3 is successful.
2. Ensure the DNS request in step 5 is successful and all TTL values are
clamped to 10 by the router.
Test |
Name |
Synopsis |
HomeKit TCSR032 IPv6 |
homekit_TCSR032_ipv6 |
HomeKit TCSR032 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Send a recursive DNS request from the HAP for api.xbcs.net
Step 4. Use HAT to apply the TCSR032.json network rules file to the HAP client started
in step 2.
Step 5. Repeat step 3.
Test Metrics:
1. Ensure the DNS request in step 3 is successful.
2. Ensure the DNS request in step 5 is successful and all TTL values are
clamped to 10 by the router and the response contains both an A/AAAA and
CNAME anwser.
Test |
Name |
Synopsis |
HomeKit TCSR033 IPv6 |
homekit_TCSR033_ipv6 |
HomeKit TCSR033 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Send a DNS request from the HAP for api.xbcs.ne
Test Metrics:
1. Ensure the DNS request in step 3 is successful and that the TTL values are not
clamped to 10 by the router.
Test |
Name |
Synopsis |
HomeKit TCSR034 IPv6 |
homekit_TCSR034_ipv6 |
HomeKit TCSR034 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to apply the TCSR034.json network rules file to the HAP client started
in step 2.
Step 4. Send a UPnP action from the HAP client to the router accessory to add a port mapping
from external port 3333 to internal port 22.
Step 5. Attempt to establish a connection through the port mapping.
Test Metrics:
1. The UPnP action fails and a port mapping cannot be created.
2. A connection through the port mapping in step 5 cannot be established.
Test |
Name |
Synopsis |
HomeKit TCSR035 IPv6 |
homekit_TCSR035_ipv6 |
HomeKit TCSR035 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory.
Step 2. Create a HAP client and allow it to be discovered by the router accessory.
Step 3. Use HAT to apply the TCSR035.json network rules file to the HAP client started
in step 2.
Step 4. Send a UPnP action from the HAP client to the router accessory to add a port mapping
from external port 3333 to internal port 22.
Step 5. Attempt to establish a connection through the port mapping.
Test Metrics:
1. The UPnP action succeeds and a port mapping is created.
2. A connection through the port mapping in step 5 successfully established.
Test |
Name |
Synopsis |
HomeKit TCSR036 IPv6 |
homekit_TCSR036_ipv6 |
HomeKit TCSR036 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to apply the TCSR036.json network rules file to the HAP client started
in step 2.
Step 4. Configure a second LAN client on the LAN to act as a DNS server
Step 5. Using the third-party vendor app configure a DNS server on the LAN at the
address specified by the prompt.
Step 6. Configure an entry in the DNS server from step 5 to point example.com to
a host on the WAN.
Step 7. Perform a HTTP GET for example.com from the HAP client.
Step 8. Update the IP address of the host of example.com and update the DNS entry to be correct.
Step 9. Repeat step 7.
Test Metrics:
1. Both HTTP GETs should succeed.
Test |
Name |
Synopsis |
HomeKit TCSR037 IPv6 |
homekit_TCSR037_ipv6 |
HomeKit TCSR037 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to apply the TCSR037.json network rules file to the HAP client started
in step 2.
Step 4. Perform a HTTP GET from the HAP client to a secondary LAN client on port 9000.
Step 5. Perform a UDP echo from the HAP client to a secondary LAN client on port 9000.
Step 6. Perform a ICMPv6 ping from the HAP client to a secondary LAN client.
Step 7. Perform a HTTP GET from a secondary LAN client to the HAP client on port 9005.
Step 8. Perform a UDP echo from a secondary LAN client to the HAP client on port 9005.
Step 9. Perform a ICMPv6 ping from a secondary LAN client to the HAP client.
Step 10. Perform a port scan of the HAP client from the secondary LAN client.
Step 11. Perform a port scan of a secondary LAN client from the HAP client.
Step 12. Reconfigure the HAP client to have a different global IPv6 address.
Step 13. Repeat steps 4 through 11.
Test Metrics:
1. The HTTP GET in step 4 is successful before and after step 13.
2. The UDP echo in step 5 is not successful before and after step 13.
3. The ICMPv6 ping in step 6 is not successful before and after step 13.
4. The port scan in step 10 shows only TCP port 9005 is allowed before and after step 13.
4. The port scan in step 11 shows only TCP port 9000 is allowed before and after step 13.
Test |
Name |
Synopsis |
HomeKit TCSR038 IPv6 |
homekit_TCSR038_ipv6 |
HomeKit TCSR038 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to apply the TCSR038.json network rules file to the HAP client started
in step 2.
Step 4. Perform a HTTP GET from the HAP client to a secondary LAN client on port 9000.
Step 5. Perform a UDP echo from the HAP client to a secondary LAN client on port 9000.
Step 6. Perform a ICMPv6 ping from the HAP client to a secondary LAN client.
Step 7. Perform a HTTP GET from a secondary LAN client to the HAP client on port 9005.
Step 8. Perform a UDP echo from a secondary LAN client to the HAP client on port 9005.
Step 9. Perform a ICMPv6 ping from a secondary LAN client to the HAP client.
Step 10. Perform a port scan of the HAP client from the secondary LAN client.
Step 11. Perform a port scan of a secondary LAN client from the HAP client.
Step 12. Reconfigure the HAP client to have a different global IPv6 address.
Step 13. Repeat steps 4 through 11.
Test Metrics:
1. The HTTP GET in step 4 is not successful before and after step 13.
2. The UDP echo in step 5 is successful before and after step 13.
3. The ICMPv6 ping in step 6 is not successful before and after step 13.
4. The port scan in step 10 shows only UDP port 9005 is allowed before and after step 13.
5. The port scan in step 11 shows only UDP port 9000 is allowed before and after step 13.
Test |
Name |
Synopsis |
HomeKit TCSR039 IPv6 |
homekit_TCSR039_ipv6 |
HomeKit TCSR039 IPv6 |
Test Procedure:
Step 1. Ensure both the gateway node and satellite node are connected and configured to IPv6-only mesh.
Step 2. Start discovery on HAT.
Test Metrics:
1. After step 2 both the gateway and satellite nodes are found by HAT.
Test |
Name |
Synopsis |
HomeKit TCSR041 IPv6 |
homekit_TCSR041_ipv6 |
HomeKit TCSR041 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Attempt to pair with the HAP client from step 2.
Step 4. Use HAT to apply the TCSR041.json network rules file to the HAP client started
in step 2.
Step 5. Repeat step 3.
Test Metrics:
1. Before and after the network is applied in step 4 HAT is able to send HAP traffic
to the HAP client.
Test |
Name |
Synopsis |
HomeKit TCSR042 IPv6 |
homekit_TCSR042_ipv6 |
HomeKit TCSR042 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to apply the TCSR042.json network rules file to the HAP client started
in step 2 with the Restricted flag set.
Step 4. Perform a TCP port scan of the HAP client from a second LAN client.
Step 5. Perform a UDP port scan of the HAP client from a second LAN client.
Step 6. Attempt to ping the HAP client from a second LAN client.
Step 7. Perform a TCP scan of a second LAN client from the HAP Client.
Step 8. Perform a UDP scan of a second LAN client from the HAP Client.
Step 9. Attempt to ping a second LAN client from the HAP client.
Step 10. Perform a link-local TCP port scan of the HAP client from a second LAN client.
Step 11. Perform a link-local UDP port scan of the HAP client from a second LAN client.
Step 12. Attempt to ping the HAP client from a second LAN client using link-local.
Step 13. Perform a link-local TCP scan of a second LAN client from the HAP Client.
Step 14. Perform a link-local UDP scan of a second LAN client from the HAP Client.
Step 15. Attempt to ping a second LAN client from the HAP client using link-local.
Test Metrics:
1. In steps 4 through 15 no traffic is permitted to flow to or from the HAP client.
Test |
Name |
Synopsis |
HomeKit TCSR043 IPv6 |
homekit_TCSR043_ipv6 |
HomeKit TCSR043 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Test Metrics:
1. Verify 'Version' is a characteristic under the 'WiFi Router' service
2. Verify 'Supported Router Configuration' is a characteristic under the 'WiFi Router' service
3. Verify 'Configured Name' is a characteristic under the 'WiFi Router' service
4. Verify 'Router Status' is a characteristic under the 'WiFi Router' service
5. Verify 'WAN Configuration List' is a characteristic under the 'WiFi Router' service
6. Verify 'WAN Status List' is a characteristic under the 'WiFi Router' service
7. Verify 'Managed Network Enable' is a characteristic under the 'WiFi Router' service
8. Verify 'Network Client Profile Control' is a characteristic under the 'WiFi Router' service
9. Verify 'Network Client Status Control' is a characteristic under the 'WiFi Router' service
10. Verify 'Network Access Violation Control' is a characteristic under the 'WiFi Router' service
Test |
Name |
Synopsis |
HomeKit TCSR044 IPv6 |
homekit_TCSR044_ipv6 |
HomeKit TCSR044 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 010100.
Step 3. Repeat step 3 including an additional Client profile addition in the TLV
to bulk add multiple profile.
Step 4. Use HAT to send a timed write to the router accessory with an update operation
and a remove operation on the same profile created in step 3.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the timed write in step 4 is successful.
3. Ensure the timed write in step 5 does not succeed.
Test |
Name |
Synopsis |
HomeKit TCSR045 IPv6 |
homekit_TCSR045_ipv6 |
HomeKit TCSR045 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 010100.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use HAT to send timed write to the router accessory to list the members of
the Client Group Identifer 1.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the routers response from step 5 contains the client profile 1.
Test |
Name |
Synopsis |
HomeKit TCSR046 IPv6 |
homekit_TCSR046_ipv6 |
HomeKit TCSR046 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 010100.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use HAT to send timed write to the router accessory to read the configuration of
the Client Profile 1.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the routers response from step 5 contains the network client
profile configuration for Network Client Profile 1.
Test |
Name |
Synopsis |
HomeKit TCSR047 IPv6 |
homekit_TCSR047_ipv6 |
HomeKit TCSR047 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 010100.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use HAT to send timed write to the router accessory to remove
Client Profile 1.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the routers response does not contain information about the removed
client profile.
Test |
Name |
Synopsis |
HomeKit TCSR048 IPv6 |
homekit_TCSR048_ipv6 |
HomeKit TCSR048 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 010100.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use HAT to send timed write to the router accessory to update
Client Profile 1 to use the Client Group identifier of 3 and a WAN and LAN
firewall configuration of 0101010200.
Step 6. Using the HAP client created in step 2, attempt to reach a restricted host on
the WAN
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the timed write in step 5 is successful.
4. Ensure the HAP client cannot access a restricted host in step 6
Test |
Name |
Synopsis |
HomeKit TCSR049 IPv6 |
homekit_TCSR049_ipv6 |
HomeKit TCSR049 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 010100.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use the Network Client Status form in the Wifi Router service summary page
to read all clients with a client profile ID of 1 from the router.
Step 6. Use the Network Client Status form in the Wifi Router service summary page
to read all clients with the IP of the HAP Client from the router.
Step 7. Use the Network Client Status form in the Wifi Router service summary page
to read all clients with the MAC of the HAP client from the router.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the client information returned from the router in step 5 matches the
HAP client.
4. Ensure the client information returned from the router in step 6 matches the
HAP client.
5. Ensure the client information returned from the router in step 7 matches the
HAP client.
Test |
Name |
Synopsis |
HomeKit TCSR050 IPv6 |
homekit_TCSR050_ipv6 |
HomeKit TCSR050 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 3
and a WAN and LAN firewall config value of 0101010200.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use the HAP client created in step 2 to attempt to reach a restricted domain
on the WAN.
Step 6. Use HAT to list the network access violations control.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the HAP client cannot reach a restricted host in step 5.
4. Ensure the router returns an entry with a timestamp that matches step 5.
Test |
Name |
Synopsis |
HomeKit TCSR051 IPv6 |
homekit_TCSR051_ipv6 |
HomeKit TCSR051 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 0101010200.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use the HAP client created in step 2 to attempt to reach a restricted domain
on the WAN.
Step 6. Use HAT to list the network access control violations.
Step 7. Use HAT to send a reset to the Network Access Violations Control for the
client identifier of 1.
Step 8. Use HAT to list the network access violations control.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the HAP client cannot reach a restricted host in step 5.
4. Ensure the router returns an entry with a timestamp that matches step 5.
5. Ensure the router does not return an entry with a timestamp that matches step 5,
after the Network Access Violation Control has been reset.
Test |
Name |
Synopsis |
HomeKit TCSR052 IPv6 |
homekit_TCSR052_ipv6 |
HomeKit TCSR052 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to apply the TCSR052.json network rules file to the HAP client started
in step 2 with the Full Access flag set.
Step 4. Start a TCP session between a second LAN client and the HAP client.
Step 5. Use HAT to apply the TCSR052.json network rules file to the HAP client started
in step 2.
Step 6. Reset the Network Rules using the Full Access Flag.
Step 7. Start a TCP session between a second LAN client and the HAP client.
Step 8. Use HAT to apply the TCSR052.json network rules file to the HAP client started
in step 2 with the Restricted flag set.
Test Metrics:
1. Verify a TCP session could be established between the second LAN client and the
HAP client in step 4.
2. Verify the TCP session is not severed after step 5.
3. Verify a TCP session could be established between the second LAN client and the
HAP client in step 6.
4. Verify the TCP session is severed after step 7.
Test |
Name |
Synopsis |
HomeKit TCSR053 IPv6 |
homekit_TCSR053_ipv6 |
HomeKit TCSR053 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to apply the TCSR053.json network rules file to the HAP client
created in step 2.
Step 4. Create a second HAP client and allow it to be discovered by the router accessory.
Step 5. Use HAT to apply the TCSR053.json network rules file to the second HAP client
created in step 4.
Step 5. Perform a HTTP Get from the second HAP client started in step 4 to the HAP client created in step 2 using port 9000.
Step 5. Perform a HTTP Get from the HAP client created in step 2 to the second HAP client started in step 4 using port 9000.
Step 8. Perform a port scan on the HAP client created in step 2 from the second HAP client created in step 4.
Test Metrics:
1. Ensure the HTTP GET is successful in step 5.
2. Ensure the HTTP GET is successful in step 6.
3. Ensure only port 9000 over TCP is not block in the port scan during step 8.
Test |
Name |
Synopsis |
HomeKit TCSR054 IPv6 |
homekit_TCSR054_ipv6 |
HomeKit TCSR054 IPv6 |
Test Procedure:
Step 1. Ensure HAT has discovered and paired with the router accessory over IPv6.
Step 2. Create a HAP client and allow it to be discovered by the router accessory over IPv6.
Step 3. Use HAT to send a timed write to the router accessory to create a Network
Client Profile with a psk of '11111111', a client group identifier of 1
and a WAN and LAN firewall config value of 0101010200.
Step 4. Connect the HAP client created in step 2 to the wireless network using the
psk '11111111'.
Step 5. Use HAT to enable Event Notifcations for Network Violations.
Step 6. Use HAT to send a reset to the Network Access Violations Control for the
client identifier of 1.
Step 7. Use the HAP client created in step 2 to attempt to reach a restricted domain
on the WAN.
Test Metrics:
1. Ensure the timed write in step 3 is successful.
2. Ensure the HAP client is able to connect to the wireless network using the
specified psk.
3. Ensure the HAP client cannot reach a restricted host in step 6.
5. Ensure the router sends a Network Access Violation for the attempted access
in step 7.