ScenarioNetwork builds home routers (their first card the WAN port) and their port forwarding (portForwarding, through GatewayFirmware.setStaticNAT). NatRun plays six stories on nat-home's network and writes the frames, the calls and the router's NAT table: a ping, a UDP exchange, the same socket to a second server (whose answer never reaches the LAN: Java keeps one entry per LAN endpoint, for the first remote only), a TCP connection out, a forwarded one in, and pings at the WAN address and past it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
275 lines
6.5 KiB
JSON
275 lines
6.5 KiB
JSON
{
|
|
"frames": {
|
|
"00000000-0000-0000-0000-000000000501": [
|
|
{
|
|
"time": 921,
|
|
"source": "02:00:00:00:05:11",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "192.168.0.10",
|
|
"targetIp": "192.168.0.1"
|
|
},
|
|
{
|
|
"time": 1041,
|
|
"source": "02:00:00:00:05:22",
|
|
"destination": "02:00:00:00:05:11",
|
|
"arp": 2,
|
|
"senderIp": "192.168.0.1",
|
|
"targetIp": "192.168.0.10"
|
|
},
|
|
{
|
|
"time": 1044,
|
|
"source": "02:00:00:00:05:11",
|
|
"destination": "02:00:00:00:05:22",
|
|
"sourceIp": "192.168.0.10",
|
|
"destinationIp": "42.0.0.20",
|
|
"protocol": 17,
|
|
"sourcePort": 53169,
|
|
"destinationPort": 7,
|
|
"payload": "one"
|
|
},
|
|
{
|
|
"time": 1612,
|
|
"source": "02:00:00:00:05:22",
|
|
"destination": "02:00:00:00:05:11",
|
|
"sourceIp": "42.0.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 17,
|
|
"sourcePort": 7,
|
|
"destinationPort": 53169,
|
|
"payload": "pong one"
|
|
},
|
|
{
|
|
"time": 1613,
|
|
"source": "02:00:00:00:05:11",
|
|
"destination": "02:00:00:00:05:22",
|
|
"sourceIp": "192.168.0.10",
|
|
"destinationIp": "42.0.0.30",
|
|
"protocol": 17,
|
|
"sourcePort": 53169,
|
|
"destinationPort": 7,
|
|
"payload": "two"
|
|
}
|
|
],
|
|
"00000000-0000-0000-0000-000000000502": [
|
|
{
|
|
"time": 1105,
|
|
"source": "02:00:00:00:05:21",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "42.0.0.10",
|
|
"targetIp": "42.0.0.20"
|
|
},
|
|
{
|
|
"time": 1331,
|
|
"source": "02:00:00:00:05:41",
|
|
"destination": "02:00:00:00:05:21",
|
|
"arp": 2,
|
|
"senderIp": "42.0.0.20",
|
|
"targetIp": "42.0.0.10"
|
|
},
|
|
{
|
|
"time": 1331,
|
|
"source": "02:00:00:00:05:21",
|
|
"destination": "02:00:00:00:05:41",
|
|
"sourceIp": "42.0.0.10",
|
|
"destinationIp": "42.0.0.20",
|
|
"protocol": 17,
|
|
"sourcePort": 58343,
|
|
"destinationPort": 7,
|
|
"payload": "one"
|
|
},
|
|
{
|
|
"time": 1556,
|
|
"source": "02:00:00:00:05:41",
|
|
"destination": "02:00:00:00:05:21",
|
|
"sourceIp": "42.0.0.20",
|
|
"destinationIp": "42.0.0.10",
|
|
"protocol": 17,
|
|
"sourcePort": 7,
|
|
"destinationPort": 58343,
|
|
"payload": "pong one"
|
|
},
|
|
{
|
|
"time": 1669,
|
|
"source": "02:00:00:00:05:21",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "42.0.0.10",
|
|
"targetIp": "42.0.0.30"
|
|
},
|
|
{
|
|
"time": 1892,
|
|
"source": "02:00:00:00:05:51",
|
|
"destination": "02:00:00:00:05:21",
|
|
"arp": 2,
|
|
"senderIp": "42.0.0.30",
|
|
"targetIp": "42.0.0.10"
|
|
},
|
|
{
|
|
"time": 1892,
|
|
"source": "02:00:00:00:05:21",
|
|
"destination": "02:00:00:00:05:51",
|
|
"sourceIp": "42.0.0.10",
|
|
"destinationIp": "42.0.0.30",
|
|
"protocol": 17,
|
|
"sourcePort": 58343,
|
|
"destinationPort": 7,
|
|
"payload": "two"
|
|
},
|
|
{
|
|
"time": 2115,
|
|
"source": "02:00:00:00:05:51",
|
|
"destination": "02:00:00:00:05:21",
|
|
"sourceIp": "42.0.0.30",
|
|
"destinationIp": "42.0.0.10",
|
|
"protocol": 17,
|
|
"sourcePort": 7,
|
|
"destinationPort": 58343,
|
|
"payload": "pong two"
|
|
}
|
|
],
|
|
"00000000-0000-0000-0000-000000000504": [
|
|
{
|
|
"time": 1220,
|
|
"source": "02:00:00:00:05:21",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "42.0.0.10",
|
|
"targetIp": "42.0.0.20"
|
|
},
|
|
{
|
|
"time": 1220,
|
|
"source": "02:00:00:00:05:41",
|
|
"destination": "02:00:00:00:05:21",
|
|
"arp": 2,
|
|
"senderIp": "42.0.0.20",
|
|
"targetIp": "42.0.0.10"
|
|
},
|
|
{
|
|
"time": 1443,
|
|
"source": "02:00:00:00:05:21",
|
|
"destination": "02:00:00:00:05:41",
|
|
"sourceIp": "42.0.0.10",
|
|
"destinationIp": "42.0.0.20",
|
|
"protocol": 17,
|
|
"sourcePort": 58343,
|
|
"destinationPort": 7,
|
|
"payload": "one"
|
|
},
|
|
{
|
|
"time": 1445,
|
|
"source": "02:00:00:00:05:41",
|
|
"destination": "02:00:00:00:05:21",
|
|
"sourceIp": "42.0.0.20",
|
|
"destinationIp": "42.0.0.10",
|
|
"protocol": 17,
|
|
"sourcePort": 7,
|
|
"destinationPort": 58343,
|
|
"payload": "pong one"
|
|
},
|
|
{
|
|
"time": 1780,
|
|
"source": "02:00:00:00:05:21",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "42.0.0.10",
|
|
"targetIp": "42.0.0.30"
|
|
}
|
|
],
|
|
"00000000-0000-0000-0000-000000000505": [
|
|
{
|
|
"time": 1220,
|
|
"source": "02:00:00:00:05:21",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "42.0.0.10",
|
|
"targetIp": "42.0.0.20"
|
|
},
|
|
{
|
|
"time": 1780,
|
|
"source": "02:00:00:00:05:21",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "42.0.0.10",
|
|
"targetIp": "42.0.0.30"
|
|
},
|
|
{
|
|
"time": 1781,
|
|
"source": "02:00:00:00:05:51",
|
|
"destination": "02:00:00:00:05:21",
|
|
"arp": 2,
|
|
"senderIp": "42.0.0.30",
|
|
"targetIp": "42.0.0.10"
|
|
},
|
|
{
|
|
"time": 2003,
|
|
"source": "02:00:00:00:05:21",
|
|
"destination": "02:00:00:00:05:51",
|
|
"sourceIp": "42.0.0.10",
|
|
"destinationIp": "42.0.0.30",
|
|
"protocol": 17,
|
|
"sourcePort": 58343,
|
|
"destinationPort": 7,
|
|
"payload": "two"
|
|
},
|
|
{
|
|
"time": 2003,
|
|
"source": "02:00:00:00:05:51",
|
|
"destination": "02:00:00:00:05:21",
|
|
"sourceIp": "42.0.0.30",
|
|
"destinationIp": "42.0.0.10",
|
|
"protocol": 17,
|
|
"sourcePort": 7,
|
|
"destinationPort": 58343,
|
|
"payload": "pong two"
|
|
}
|
|
]
|
|
},
|
|
"events": [
|
|
[
|
|
916,
|
|
"senden 42.0.0.20 called"
|
|
],
|
|
[
|
|
918,
|
|
"senden 42.0.0.20 returned "
|
|
],
|
|
[
|
|
918,
|
|
"empfangen called"
|
|
],
|
|
[
|
|
1445,
|
|
"server received one"
|
|
],
|
|
[
|
|
1613,
|
|
"empfangen returned pong one"
|
|
],
|
|
[
|
|
1613,
|
|
"senden 42.0.0.30 called"
|
|
],
|
|
[
|
|
1613,
|
|
"senden 42.0.0.30 returned "
|
|
],
|
|
[
|
|
1613,
|
|
"empfangen called"
|
|
],
|
|
[
|
|
2003,
|
|
"other server received two"
|
|
],
|
|
[
|
|
15363,
|
|
"empfangen returned null"
|
|
]
|
|
],
|
|
"nat": [
|
|
"17 42.0.0.20:58343 -> 192.168.0.10:53169 DynamicEntry"
|
|
]
|
|
}
|