Files
mdg-filius/packages/core/test/scenarios/nat-java-forward.java.json
T
julian.kiedaischandClaude Opus 5.5 7a77bc1b43 feat(core): home router NAT after Java, measured with Java FILIUS
The core translates before the IP thread, as Java's NAT threads sit
between card and Ethernet: out, the WAN address and the entry's port (ICMP
keeps its identifier); in, by remote end, port and protocol, else by the
port forwarding, which then makes a dynamic entry; a ping at the WAN
address is answered by the router, packets from outside for the LAN are
dropped, both sides pass the router's firewall, TTL 1 going out gets time
exceeded. Dynamic entries expire at Java's check each second, 300 s times
the delay factor old (55 minutes at 90 %), refreshed only by what comes in.
The home router forwards as a router does.

Measured and not taken: when a LAN endpoint sends to a second remote end,
Java gives it the entry's WAN port but no entry, and the answer stays at
the router; the core adds an entry for each new remote end on that port.

The oracle now records every card of a node (the second card of routers
was missing); the ARP and RIP runs are recorded anew and still match.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 20:06:04 +00:00

764 lines
20 KiB
JSON

{
"frames": {
"00000000-0000-0000-0000-000000000501": [
{
"time": 1342,
"source": "02:00:00:00:05:22",
"destination": "FF:FF:FF:FF:FF:FF",
"arp": 1,
"senderIp": "192.168.0.1",
"targetIp": "192.168.0.10"
},
{
"time": 1343,
"source": "02:00:00:00:05:11",
"destination": "02:00:00:00:05:22",
"arp": 2,
"senderIp": "192.168.0.10",
"targetIp": "192.168.0.1"
},
{
"time": 1454,
"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": 6,
"sourcePort": 49255,
"destinationPort": 80,
"payload": null,
"tcpFlags": "S",
"sequence": 3000000,
"acknowledgement": 0
},
{
"time": 1456,
"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": 6,
"sourcePort": 80,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "SA",
"sequence": 2000000,
"acknowledgement": 3000001
},
{
"time": 1791,
"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": 6,
"sourcePort": 49255,
"destinationPort": 80,
"payload": null,
"tcpFlags": "A",
"sequence": 3000001,
"acknowledgement": 2000001
},
{
"time": 1890,
"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": 6,
"sourcePort": 49255,
"destinationPort": 80,
"payload": "hello",
"tcpFlags": "P",
"sequence": 3000001,
"acknowledgement": 0
},
{
"time": 1890,
"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": 6,
"sourcePort": 80,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "A",
"sequence": 2000001,
"acknowledgement": 3000006
},
{
"time": 1946,
"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": 6,
"sourcePort": 80,
"destinationPort": 49255,
"payload": "reply hello",
"tcpFlags": "P",
"sequence": 2000001,
"acknowledgement": 0
},
{
"time": 2281,
"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": 6,
"sourcePort": 49255,
"destinationPort": 80,
"payload": null,
"tcpFlags": "A",
"sequence": 3000006,
"acknowledgement": 2000012
},
{
"time": 2337,
"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": 6,
"sourcePort": 49255,
"destinationPort": 80,
"payload": null,
"tcpFlags": "F",
"sequence": 3000006,
"acknowledgement": 0
},
{
"time": 2337,
"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": 6,
"sourcePort": 80,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "A",
"sequence": 2000012,
"acknowledgement": 3000007
},
{
"time": 2392,
"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": 6,
"sourcePort": 80,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "F",
"sequence": 2000012,
"acknowledgement": 0
},
{
"time": 2727,
"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": 6,
"sourcePort": 49255,
"destinationPort": 80,
"payload": null,
"tcpFlags": "A",
"sequence": 3000007,
"acknowledgement": 2000013
}
],
"00000000-0000-0000-0000-000000000502": [
{
"time": 1057,
"source": "02:00:00:00:05:41",
"destination": "FF:FF:FF:FF:FF:FF",
"arp": 1,
"senderIp": "42.0.0.20",
"targetIp": "42.0.0.10"
},
{
"time": 1058,
"source": "02:00:00:00:05:21",
"destination": "02:00:00:00:05:41",
"arp": 2,
"senderIp": "42.0.0.10",
"targetIp": "42.0.0.20"
},
{
"time": 1286,
"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": 6,
"sourcePort": 49255,
"destinationPort": 8080,
"payload": null,
"tcpFlags": "S",
"sequence": 3000000,
"acknowledgement": 0
},
{
"time": 1512,
"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": 6,
"sourcePort": 8080,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "SA",
"sequence": 2000000,
"acknowledgement": 3000001
},
{
"time": 1735,
"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": 6,
"sourcePort": 49255,
"destinationPort": 8080,
"payload": null,
"tcpFlags": "A",
"sequence": 3000001,
"acknowledgement": 2000001
},
{
"time": 1834,
"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": 6,
"sourcePort": 49255,
"destinationPort": 8080,
"payload": "hello",
"tcpFlags": "P",
"sequence": 3000001,
"acknowledgement": 0
},
{
"time": 1946,
"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": 6,
"sourcePort": 8080,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "A",
"sequence": 2000001,
"acknowledgement": 3000006
},
{
"time": 2002,
"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": 6,
"sourcePort": 8080,
"destinationPort": 49255,
"payload": "reply hello",
"tcpFlags": "P",
"sequence": 2000001,
"acknowledgement": 0
},
{
"time": 2225,
"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": 6,
"sourcePort": 49255,
"destinationPort": 8080,
"payload": null,
"tcpFlags": "A",
"sequence": 3000006,
"acknowledgement": 2000012
},
{
"time": 2281,
"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": 6,
"sourcePort": 49255,
"destinationPort": 8080,
"payload": null,
"tcpFlags": "F",
"sequence": 3000006,
"acknowledgement": 0
},
{
"time": 2393,
"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": 6,
"sourcePort": 8080,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "A",
"sequence": 2000012,
"acknowledgement": 3000007
},
{
"time": 2448,
"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": 6,
"sourcePort": 8080,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "F",
"sequence": 2000012,
"acknowledgement": 0
},
{
"time": 2671,
"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": 6,
"sourcePort": 49255,
"destinationPort": 8080,
"payload": null,
"tcpFlags": "A",
"sequence": 3000007,
"acknowledgement": 2000013
}
],
"00000000-0000-0000-0000-000000000502#1": [
{
"time": 1287,
"source": "02:00:00:00:05:22",
"destination": "FF:FF:FF:FF:FF:FF",
"arp": 1,
"senderIp": "192.168.0.1",
"targetIp": "192.168.0.10"
},
{
"time": 1398,
"source": "02:00:00:00:05:11",
"destination": "02:00:00:00:05:22",
"arp": 2,
"senderIp": "192.168.0.10",
"targetIp": "192.168.0.1"
},
{
"time": 1399,
"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": 6,
"sourcePort": 49255,
"destinationPort": 80,
"payload": null,
"tcpFlags": "S",
"sequence": 3000000,
"acknowledgement": 0
},
{
"time": 1512,
"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": 6,
"sourcePort": 80,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "SA",
"sequence": 2000000,
"acknowledgement": 3000001
},
{
"time": 1736,
"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": 6,
"sourcePort": 49255,
"destinationPort": 80,
"payload": null,
"tcpFlags": "A",
"sequence": 3000001,
"acknowledgement": 2000001
},
{
"time": 1834,
"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": 6,
"sourcePort": 49255,
"destinationPort": 80,
"payload": "hello",
"tcpFlags": "P",
"sequence": 3000001,
"acknowledgement": 0
},
{
"time": 1946,
"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": 6,
"sourcePort": 80,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "A",
"sequence": 2000001,
"acknowledgement": 3000006
},
{
"time": 2002,
"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": 6,
"sourcePort": 80,
"destinationPort": 49255,
"payload": "reply hello",
"tcpFlags": "P",
"sequence": 2000001,
"acknowledgement": 0
},
{
"time": 2225,
"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": 6,
"sourcePort": 49255,
"destinationPort": 80,
"payload": null,
"tcpFlags": "A",
"sequence": 3000006,
"acknowledgement": 2000012
},
{
"time": 2281,
"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": 6,
"sourcePort": 49255,
"destinationPort": 80,
"payload": null,
"tcpFlags": "F",
"sequence": 3000006,
"acknowledgement": 0
},
{
"time": 2392,
"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": 6,
"sourcePort": 80,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "A",
"sequence": 2000012,
"acknowledgement": 3000007
},
{
"time": 2448,
"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": 6,
"sourcePort": 80,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "F",
"sequence": 2000012,
"acknowledgement": 0
},
{
"time": 2671,
"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": 6,
"sourcePort": 49255,
"destinationPort": 80,
"payload": null,
"tcpFlags": "A",
"sequence": 3000007,
"acknowledgement": 2000013
}
],
"00000000-0000-0000-0000-000000000504": [
{
"time": 935,
"source": "02:00:00:00:05:41",
"destination": "FF:FF:FF:FF:FF:FF",
"arp": 1,
"senderIp": "42.0.0.20",
"targetIp": "42.0.0.10"
},
{
"time": 1170,
"source": "02:00:00:00:05:21",
"destination": "02:00:00:00:05:41",
"arp": 2,
"senderIp": "42.0.0.10",
"targetIp": "42.0.0.20"
},
{
"time": 1172,
"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": 6,
"sourcePort": 49255,
"destinationPort": 8080,
"payload": null,
"tcpFlags": "S",
"sequence": 3000000,
"acknowledgement": 0
},
{
"time": 1624,
"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": 6,
"sourcePort": 8080,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "SA",
"sequence": 2000000,
"acknowledgement": 3000001
},
{
"time": 1624,
"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": 6,
"sourcePort": 49255,
"destinationPort": 8080,
"payload": null,
"tcpFlags": "A",
"sequence": 3000001,
"acknowledgement": 2000001
},
{
"time": 1723,
"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": 6,
"sourcePort": 49255,
"destinationPort": 8080,
"payload": "hello",
"tcpFlags": "P",
"sequence": 3000001,
"acknowledgement": 0
},
{
"time": 2057,
"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": 6,
"sourcePort": 8080,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "A",
"sequence": 2000001,
"acknowledgement": 3000006
},
{
"time": 2113,
"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": 6,
"sourcePort": 8080,
"destinationPort": 49255,
"payload": "reply hello",
"tcpFlags": "P",
"sequence": 2000001,
"acknowledgement": 0
},
{
"time": 2114,
"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": 6,
"sourcePort": 49255,
"destinationPort": 8080,
"payload": null,
"tcpFlags": "A",
"sequence": 3000006,
"acknowledgement": 2000012
},
{
"time": 2169,
"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": 6,
"sourcePort": 49255,
"destinationPort": 8080,
"payload": null,
"tcpFlags": "F",
"sequence": 3000006,
"acknowledgement": 0
},
{
"time": 2504,
"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": 6,
"sourcePort": 8080,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "A",
"sequence": 2000012,
"acknowledgement": 3000007
},
{
"time": 2560,
"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": 6,
"sourcePort": 8080,
"destinationPort": 49255,
"payload": null,
"tcpFlags": "F",
"sequence": 2000012,
"acknowledgement": 0
},
{
"time": 2560,
"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": 6,
"sourcePort": 49255,
"destinationPort": 8080,
"payload": null,
"tcpFlags": "A",
"sequence": 3000007,
"acknowledgement": 2000013
}
],
"00000000-0000-0000-0000-000000000505": [
{
"time": 1057,
"source": "02:00:00:00:05:41",
"destination": "FF:FF:FF:FF:FF:FF",
"arp": 1,
"senderIp": "42.0.0.20",
"targetIp": "42.0.0.10"
}
]
},
"events": [
[
719,
"server oeffnen called"
],
[
921,
"client verbinden called"
],
[
1722,
"client verbinden returned "
],
[
1722,
"client senden called"
],
[
1820,
"server oeffnen returned filius.software.transportschicht.TCPSocket@290a67fb"
],
[
1820,
"server empfangen called"
],
[
1890,
"server empfangen returned hello"
],
[
1891,
"server senden called"
],
[
2058,
"client senden returned "
],
[
2058,
"client empfangen called"
],
[
2114,
"client empfangen returned reply hello"
],
[
2114,
"client schliessen called"
],
[
2114,
"client schliessen returned "
],
[
2281,
"server senden returned "
]
],
"nat": [
"6 42.0.0.20:8080 -> 192.168.0.10:80 DynamicEnryFromStatic"
]
}