{
  "recorded_utc": "2026-09-29T23:37:17.673069+00:00",
  "gns3_version": "2.2.54",
  "tests": [
    {
      "test": "VLAN 10: cross-switch connectivity",
      "source": "VLAN10-A",
      "destination": "192.168.10.12",
      "expected": "reachable",
      "replies": 5,
      "passed": true,
      "output": "ping 192.168.10.12 -c 5\r\n\r\n84 bytes from 192.168.10.12 icmp_seq=1 ttl=64 time=0.269 ms\r\n84 bytes from 192.168.10.12 icmp_seq=2 ttl=64 time=0.489 ms\r\n84 bytes from 192.168.10.12 icmp_seq=3 ttl=64 time=0.571 ms\r\n84 bytes from 192.168.10.12 icmp_seq=4 ttl=64 time=0.406 ms\r\n84 bytes from 192.168.10.12 icmp_seq=5 ttl=64 time=0.352 ms\r\n\r\n\rVLAN10-A> "
    },
    {
      "test": "VLAN 20: cross-switch connectivity",
      "source": "VLAN20-A",
      "destination": "192.168.20.12",
      "expected": "reachable",
      "replies": 5,
      "passed": true,
      "output": "ping 192.168.20.12 -c 5\r\n\r\n84 bytes from 192.168.20.12 icmp_seq=1 ttl=64 time=0.348 ms\r\n84 bytes from 192.168.20.12 icmp_seq=2 ttl=64 time=0.637 ms\r\n84 bytes from 192.168.20.12 icmp_seq=3 ttl=64 time=0.437 ms\r\n84 bytes from 192.168.20.12 icmp_seq=4 ttl=64 time=0.422 ms\r\n84 bytes from 192.168.20.12 icmp_seq=5 ttl=64 time=0.370 ms\r\n\r\n\rVLAN20-A> "
    },
    {
      "test": "VLAN 30: cross-switch connectivity",
      "source": "VLAN30-A",
      "destination": "192.168.30.12",
      "expected": "reachable",
      "replies": 5,
      "passed": true,
      "output": "ping 192.168.30.12 -c 5\r\n\r\n84 bytes from 192.168.30.12 icmp_seq=1 ttl=64 time=0.325 ms\r\n84 bytes from 192.168.30.12 icmp_seq=2 ttl=64 time=0.551 ms\r\n84 bytes from 192.168.30.12 icmp_seq=3 ttl=64 time=0.508 ms\r\n84 bytes from 192.168.30.12 icmp_seq=4 ttl=64 time=0.330 ms\r\n84 bytes from 192.168.30.12 icmp_seq=5 ttl=64 time=0.406 ms\r\n\r\n\rVLAN30-A> "
    },
    {
      "test": "VLAN 10 to VLAN 20: same-subnet isolation",
      "source": "VLAN10-A",
      "destination": "192.168.10.99",
      "expected": "blocked",
      "replies": 0,
      "passed": true,
      "output": "ping 192.168.10.99 -c 5\r\n\r\nhost (192.168.10.99) not reachable\r\n\r\n\rVLAN10-A> "
    },
    {
      "test": "VLAN 10 to VLAN 30: same-subnet isolation",
      "source": "VLAN10-A",
      "destination": "192.168.10.98",
      "expected": "blocked",
      "replies": 0,
      "passed": true,
      "output": "ping 192.168.10.98 -c 5\r\n\r\nhost (192.168.10.98) not reachable\r\n\r\n\rVLAN10-A> "
    },
    {
      "test": "Injected access-port mismatch: connectivity fails",
      "source": "VLAN10-A",
      "destination": "192.168.10.12",
      "expected": "blocked",
      "replies": 0,
      "passed": true,
      "output": "ping 192.168.10.12 -c 5\r\n\r\nhost (192.168.10.12) not reachable\r\n\r\n\rVLAN10-A> "
    },
    {
      "test": "Access-port repair: connectivity restored",
      "source": "VLAN10-A",
      "destination": "192.168.10.12",
      "expected": "reachable",
      "replies": 5,
      "passed": true,
      "output": "ping 192.168.10.12 -c 5\r\n\r\n84 bytes from 192.168.10.12 icmp_seq=1 ttl=64 time=0.290 ms\r\n84 bytes from 192.168.10.12 icmp_seq=2 ttl=64 time=0.328 ms\r\n84 bytes from 192.168.10.12 icmp_seq=3 ttl=64 time=0.424 ms\r\n84 bytes from 192.168.10.12 icmp_seq=4 ttl=64 time=0.355 ms\r\n84 bytes from 192.168.10.12 icmp_seq=5 ttl=64 time=0.379 ms\r\n\r\n\rVLAN10-A> "
    }
  ]
}