Files
MikrotikManager/docs/ux-ui/acceptance/native-ipv6-ipfix-2026-10-11.json
T

911 lines
24 KiB
JSON

{
"date": "2026-10-11",
"block": "12.5.145",
"runtime": {
"backend": "ux-ipfix144",
"frontend": "ux-traffic141",
"backendHealthy": true
},
"native": {
"date": "2026-10-11",
"block": "12.5.145",
"name": "mm-flow145-1791712666652",
"runtime": {
"backend": "ux-ipfix144",
"frontend": "ux-traffic141"
},
"devices": [
{
"serverId": 1,
"host": "194.226.121.150",
"version": "7.24.5 (stable)",
"reachable": true
},
{
"serverId": 2,
"host": "104.165.244.7",
"version": "7.24.5 (stable)",
"reachable": true
}
],
"pings": [
{
"serverId": 1,
"sent": 5,
"received": 5,
"rows": [
{
"avg-rtt": "54ms548us",
"host": "fd00:145:1::2",
"max-rtt": "54ms548us",
"min-rtt": "54ms548us",
"packet-loss": "0",
"received": "1",
"sent": "1",
"seq": "0",
"size": "128",
"status": "echo reply",
"time": "54ms548us",
"ttl": "64"
},
{
"avg-rtt": "54ms427us",
"host": "fd00:145:1::2",
"max-rtt": "54ms548us",
"min-rtt": "54ms307us",
"packet-loss": "0",
"received": "2",
"sent": "2",
"seq": "1",
"size": "128",
"status": "echo reply",
"time": "54ms307us",
"ttl": "64"
},
{
"avg-rtt": "54ms515us",
"host": "fd00:145:1::2",
"max-rtt": "54ms692us",
"min-rtt": "54ms307us",
"packet-loss": "0",
"received": "3",
"sent": "3",
"seq": "2",
"size": "128",
"status": "echo reply",
"time": "54ms692us",
"ttl": "64"
},
{
"avg-rtt": "54ms492us",
"host": "fd00:145:1::2",
"max-rtt": "54ms692us",
"min-rtt": "54ms307us",
"packet-loss": "0",
"received": "4",
"sent": "4",
"seq": "3",
"size": "128",
"status": "echo reply",
"time": "54ms423us",
"ttl": "64"
},
{
"avg-rtt": "54ms440us",
"host": "fd00:145:1::2",
"max-rtt": "54ms692us",
"min-rtt": "54ms231us",
"packet-loss": "0",
"received": "5",
"sent": "5",
"seq": "4",
"size": "128",
"status": "echo reply",
"time": "54ms231us",
"ttl": "64"
}
]
},
{
"serverId": 2,
"sent": 5,
"received": 5,
"rows": [
{
"avg-rtt": "53ms466us",
"host": "fd00:145:1::1",
"max-rtt": "53ms466us",
"min-rtt": "53ms466us",
"packet-loss": "0",
"received": "1",
"sent": "1",
"seq": "0",
"size": "128",
"status": "echo reply",
"time": "53ms466us",
"ttl": "64"
},
{
"avg-rtt": "53ms480us",
"host": "fd00:145:1::1",
"max-rtt": "53ms494us",
"min-rtt": "53ms466us",
"packet-loss": "0",
"received": "2",
"sent": "2",
"seq": "1",
"size": "128",
"status": "echo reply",
"time": "53ms494us",
"ttl": "64"
},
{
"avg-rtt": "53ms498us",
"host": "fd00:145:1::1",
"max-rtt": "53ms534us",
"min-rtt": "53ms466us",
"packet-loss": "0",
"received": "3",
"sent": "3",
"seq": "2",
"size": "128",
"status": "echo reply",
"time": "53ms534us",
"ttl": "64"
},
{
"avg-rtt": "53ms469us",
"host": "fd00:145:1::1",
"max-rtt": "53ms534us",
"min-rtt": "53ms383us",
"packet-loss": "0",
"received": "4",
"sent": "4",
"seq": "3",
"size": "128",
"status": "echo reply",
"time": "53ms383us",
"ttl": "64"
},
{
"avg-rtt": "53ms467us",
"host": "fd00:145:1::1",
"max-rtt": "53ms534us",
"min-rtt": "53ms383us",
"packet-loss": "0",
"received": "5",
"sent": "5",
"seq": "4",
"size": "128",
"status": "echo reply",
"time": "53ms460us",
"ttl": "64"
}
]
}
],
"cleanup": [],
"limits": [
"Own GRE IPv6 ULA over IPv4 outer; native IPFIX over IPv4 WAN UDP; not IPv6 outer/WAN or throughput acceptance",
"Dedicated database/application process, main database not seeded with fixture rows; ordinary background polling remains active; preview UI uses explicit real API relay to isolated backend"
],
"controlledTrafficFlow": {
"active-flow-timeout": "10s",
"cache-entries": "256k",
"enabled": "true",
"inactive-flow-timeout": "3s",
"interfaces": "mm-flow145-1791712666652-g",
"packet-sampling": "false",
"sampling-interval": "0",
"sampling-space": "0"
},
"apiTalkers": {
"exportersOnline": 1,
"bytesPerMin": 844.8,
"uniqueSrc": 4,
"uniqueDst": 4,
"topProto": "58",
"talkers": [
{
"serverId": "1",
"serverName": "CHR · native145",
"src": "194.226.121.150",
"dst": "104.165.244.7",
"proto": 47,
"protoName": "GRE",
"srcPort": 0,
"dstPort": 0,
"bytes": 1616,
"packets": 12,
"bps": 43.093333333333334,
"inIface": "#144",
"inIfaceIndex": "144",
"application": "GRE"
},
{
"serverId": "1",
"serverName": "CHR · native145",
"src": "fd00:145:1::2",
"dst": "fd00:145:1::1",
"proto": 58,
"protoName": "58",
"srcPort": 0,
"dstPort": 0,
"bytes": 1280,
"packets": 10,
"bps": 34.13333333333333,
"inIface": "#144",
"inIfaceIndex": "144",
"application": "58/—"
},
{
"serverId": "1",
"serverName": "CHR · native145",
"src": "fd00:145:1::1",
"dst": "fd00:145:1::2",
"proto": 58,
"protoName": "58",
"srcPort": 0,
"dstPort": 0,
"bytes": 1280,
"packets": 10,
"bps": 34.13333333333333,
"inIface": "—",
"inIfaceIndex": "0",
"application": "58/—"
},
{
"serverId": "1",
"serverName": "CHR · native145",
"src": "fe80::2:68a5:f407",
"dst": "ff02::2",
"proto": 58,
"protoName": "58",
"srcPort": 0,
"dstPort": 0,
"bytes": 48,
"packets": 1,
"bps": 1.28,
"inIface": "—",
"inIfaceIndex": "0",
"application": "58/—"
}
],
"lastExporterIp": "194.226.121.150",
"lastError": null,
"packetsReceived": 6,
"lastDatagramAt": "2026-10-11T09:58:07.508Z",
"listenerBound": true,
"listenerAddress": "0.0.0.0:48145"
},
"apiAnalytics": {
"bpsNow": 112.64,
"bytes": 4224,
"packets": 33,
"conversations": 4,
"conversationsRaw": 4,
"uniqueSrc": 4,
"uniqueDst": 4,
"topProto": "58",
"topCategory": "Прочее",
"rxSeries": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0.000192,
0,
0.01024,
0,
0,
0,
0
],
"txSeries": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"applications": [
{
"id": "58/—",
"label": "58/—",
"bytes": 2608,
"packets": 21,
"bps": 69.54666666666667,
"percent": 61.74242424242424
},
{
"id": "GRE",
"label": "GRE",
"bytes": 1616,
"packets": 12,
"bps": 43.093333333333334,
"percent": 38.25757575757576
}
],
"protocols": [
{
"id": "58",
"label": "58",
"bytes": 2608,
"packets": 21,
"bps": 69.54666666666667,
"percent": 61.74242424242424
},
{
"id": "GRE",
"label": "GRE",
"bytes": 1616,
"packets": 12,
"bps": 43.093333333333334,
"percent": 38.25757575757576
}
],
"sources": [
{
"id": "194.226.121.150",
"label": "194.226.121.150",
"bytes": 1616,
"packets": 12,
"bps": 43.093333333333334,
"percent": 38.25757575757576
},
{
"id": "fd00:145:1::2",
"label": "fd00:145:1::2",
"bytes": 1280,
"packets": 10,
"bps": 34.13333333333333,
"percent": 30.303030303030305
},
{
"id": "fd00:145:1::1",
"label": "fd00:145:1::1",
"bytes": 1280,
"packets": 10,
"bps": 34.13333333333333,
"percent": 30.303030303030305
},
{
"id": "fe80::2:68a5:f407",
"label": "fe80::2:68a5:f407",
"bytes": 48,
"packets": 1,
"bps": 1.28,
"percent": 1.1363636363636365
}
],
"destinations": [
{
"id": "104.165.244.7",
"label": "104.165.244.7",
"bytes": 1616,
"packets": 12,
"bps": 43.093333333333334,
"percent": 38.25757575757576
},
{
"id": "fd00:145:1::1",
"label": "fd00:145:1::1",
"bytes": 1280,
"packets": 10,
"bps": 34.13333333333333,
"percent": 30.303030303030305
},
{
"id": "fd00:145:1::2",
"label": "fd00:145:1::2",
"bytes": 1280,
"packets": 10,
"bps": 34.13333333333333,
"percent": 30.303030303030305
},
{
"id": "ff02::2",
"label": "ff02::2",
"bytes": 48,
"packets": 1,
"bps": 1.28,
"percent": 1.1363636363636365
}
],
"interfaces": [
{
"id": "#144",
"label": "#144",
"bytes": 2896,
"packets": 22,
"bps": 77.22666666666667,
"percent": 68.56060606060606
},
{
"id": "—",
"label": "—",
"bytes": 1328,
"packets": 11,
"bps": 35.413333333333334,
"percent": 31.439393939393938
}
],
"asns": [],
"countries": [],
"categories": [
{
"id": "Прочее",
"label": "Прочее",
"bytes": 2608,
"packets": 21,
"bps": 69.54666666666667,
"percent": 61.74242424242424
},
{
"id": "Туннель",
"label": "Туннель",
"bytes": 1616,
"packets": 12,
"bps": 43.093333333333334,
"percent": 38.25757575757576
}
],
"services": [
{
"id": "Прочее",
"label": "Прочее",
"bytes": 4224,
"packets": 33,
"bps": 112.64,
"percent": 100
}
],
"mapEdges": [],
"conversationsList": [
{
"serverId": "1",
"serverName": "CHR · native145",
"src": "194.226.121.150",
"dst": "104.165.244.7",
"proto": 47,
"protoName": "GRE",
"srcPort": 0,
"dstPort": 0,
"bytes": 1616,
"packets": 12,
"bps": 2260.13986013986,
"inIface": "#144",
"inIfaceIndex": "144",
"outIface": "#2",
"nextHop": "194.226.121.1",
"application": "GRE",
"category": "Туннель",
"service": "Прочее",
"internetPeer": "104.165.244.7",
"direction": "transit",
"plane": "overlay"
},
{
"serverId": "1",
"serverName": "CHR · native145",
"src": "fd00:145:1::2",
"dst": "fd00:145:1::1",
"proto": 58,
"protoName": "58",
"srcPort": 0,
"dstPort": 0,
"bytes": 1280,
"packets": 10,
"bps": 2509.8039215686276,
"inIface": "#144",
"inIfaceIndex": "144",
"nextHop": "::1:8000:0:0:0",
"application": "58/—",
"category": "Прочее",
"service": "Прочее",
"clientIp": "fd00:145:1::2",
"internetPeer": "fd00:145:1::1",
"direction": "from_client",
"plane": "payload"
},
{
"serverId": "1",
"serverName": "CHR · native145",
"src": "fd00:145:1::1",
"dst": "fd00:145:1::2",
"proto": 58,
"protoName": "58",
"srcPort": 0,
"dstPort": 0,
"bytes": 1280,
"packets": 10,
"bps": 2479.418886198547,
"inIface": "—",
"inIfaceIndex": "0",
"outIface": "#144",
"nextHop": "::4000:0:0:0",
"application": "58/—",
"category": "Прочее",
"service": "Прочее",
"clientIp": "fd00:145:1::1",
"internetPeer": "fd00:145:1::2",
"direction": "from_client",
"plane": "payload"
},
{
"serverId": "1",
"serverName": "CHR · native145",
"src": "fe80::2:68a5:f407",
"dst": "ff02::2",
"proto": 58,
"protoName": "58",
"srcPort": 0,
"dstPort": 0,
"bytes": 48,
"packets": 1,
"bps": 1.28,
"inIface": "—",
"inIfaceIndex": "0",
"outIface": "#144",
"nextHop": "::800:0:0:0",
"application": "58/—",
"category": "Прочее",
"service": "Прочее",
"clientIp": "fe80::2:68a5:f407",
"internetPeer": "ff02::2",
"direction": "from_client",
"plane": "payload"
}
],
"paths": [
{
"id": "unknown|1||104.165.244.7|#144",
"clientId": "unknown",
"clientName": "Неизвестный клиент",
"ifaces": "#144",
"serverId": "1",
"serverName": "CHR · native145",
"inIface": "#144",
"outIface": "#2",
"enId": "",
"enName": "",
"dst": "104.165.244.7",
"service": "Прочее",
"category": "Туннель",
"plane": "overlay",
"bytes": 1616,
"packets": 12,
"bps": 43.093333333333334
},
{
"id": "unknown|1||fd00:145:1::1|#144",
"clientId": "unknown",
"clientName": "Неизвестный клиент",
"ifaces": "#144",
"serverId": "1",
"serverName": "CHR · native145",
"inIface": "#144",
"outIface": "",
"enId": "",
"enName": "",
"dst": "fd00:145:1::1",
"service": "Прочее",
"category": "Прочее",
"plane": "payload",
"bytes": 1280,
"packets": 10,
"bps": 34.13333333333333
},
{
"id": "unknown|1||fd00:145:1::2|—",
"clientId": "unknown",
"clientName": "Неизвестный клиент",
"ifaces": "—",
"serverId": "1",
"serverName": "CHR · native145",
"inIface": "—",
"outIface": "#144",
"enId": "",
"enName": "",
"dst": "fd00:145:1::2",
"service": "Прочее",
"category": "Прочее",
"plane": "payload",
"bytes": 1280,
"packets": 10,
"bps": 34.13333333333333
},
{
"id": "unknown|1||ff02::2|—",
"clientId": "unknown",
"clientName": "Неизвестный клиент",
"ifaces": "—",
"serverId": "1",
"serverName": "CHR · native145",
"inIface": "—",
"outIface": "#144",
"enId": "",
"enName": "",
"dst": "ff02::2",
"service": "Прочее",
"category": "Прочее",
"plane": "payload",
"bytes": 48,
"packets": 1,
"bps": 1.28
}
],
"ifaces": [
{
"name": "#144",
"index": "144",
"bps": 77.22666666666667
},
{
"name": "—",
"index": "0",
"bps": 35.413333333333334
}
],
"live": true,
"dedupApplied": false,
"degraded": false,
"bytesPayload": 2608,
"bytesOverlay": 1616,
"bytesMesh": 0,
"bytesWire": 0,
"bpsOverlay": 43.093333333333334,
"bpsWire": 0,
"excludeMeshApplied": false,
"excludeOverlayApplied": false
},
"nativeDataReceived": true,
"browserCheckpoint": true,
"cleanupError": "RouterOS API error 401 on /interface/gre/*71: {\"error\":401,\"message\":\"Unauthorized\"}",
"childDrained": true,
"childExit": 0,
"databaseRemoved": true,
"childDiagnostic": "Private child stderr retained separately; no credential-bearing error text published"
},
"postFailureReadOnlyInspect": {
"date": "2026-10-11",
"name": "mm-flow145-1791712666652",
"readOnly": true,
"devices": [
{
"serverId": 1,
"host": "194.226.121.150",
"gre": [],
"addresses": [],
"systemReadSucceeded": true
},
{
"serverId": 2,
"host": "104.165.244.7",
"gre": [
{
".id": "*71",
"actual-mtu": "1400",
"allow-fast-path": "false",
"clamp-tcp-mss": "true",
"comment": "mm-flow145-1791712666652",
"disabled": "false",
"dont-fragment": "no",
"dscp": "inherit",
"keepalive": "10s,10",
"local-address": "104.165.244.7",
"mtu": "1400",
"name": "mm-flow145-1791712666652-g",
"remote-address": "194.226.121.150",
"running": "false"
}
],
"addresses": [
{
".id": "*73",
"actual-interface": "mm-flow145-1791712666652-g",
"address": "fd00:145:1::2/64",
"advertise": "false",
"auto-link-local": "true",
"comment": "mm-flow145-1791712666652",
"deprecated": "false",
"disabled": "false",
"dynamic": "false",
"eui-64": "false",
"from-pool": "",
"global": "true",
"interface": "mm-flow145-1791712666652-g",
"invalid": "false",
"no-dad": "false",
"slave": "false",
"vrf": "main"
}
],
"systemReadSucceeded": true
}
]
},
"recoveryCleanup": {
"date": "2026-10-11",
"name": "mm-flow145-1791712666652",
"actions": [
{
"serverId": 2,
"path": "/ipv6/address",
"id": "*73",
"method": "DELETE",
"removed": true
},
{
"serverId": 2,
"path": "/interface/gre",
"id": "*71",
"method": "DELETE",
"removed": true
}
],
"cleanup": [
{
"serverId": 1,
"/interface/gre": true,
"/ipv6/address": true,
"/ipv6/route": true,
"/ipv6/nd": true,
"/ipv6/firewall/filter": true,
"/ipv6/firewall/raw": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/filter": true,
"/ip/firewall/nat": true,
"/ip/firewall/mangle": true,
"/ip/traffic-flow/target": true,
"trafficFlowRestored": true,
"ipfixFieldsUnchanged": true,
"ipv6SettingsUnchanged": true
},
{
"serverId": 2,
"/interface/gre": true,
"/ipv6/address": true,
"/ipv6/route": true,
"/ipv6/nd": true,
"/ipv6/firewall/filter": true,
"/ipv6/firewall/raw": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/filter": true,
"/ip/firewall/nat": true,
"/ip/firewall/mangle": true,
"/ip/traffic-flow/target": true,
"trafficFlowRestored": true,
"ipfixFieldsUnchanged": true,
"ipv6SettingsUnchanged": true
}
],
"success": true
},
"infrastructureCleanup": {
"ownedContainerId": "ce12762cb132ced5dba28b28443eb0327d135dcd8e751e719b562b4ef606d73f",
"removedAfterIdentityCheck": true,
"udp48145Closed": true,
"isolatedHttp18145Closed": true,
"ssh18145TunnelClosed": true
},
"bounds": [
"Two native CHR RouterOS7.24.5; own GRE ULA addresses and allow-fast-path=false; native IPFIX from CHR1 through IPv4 WAN to real production listener",
"Traffic Flow was initially disabled with no targets; enabled only on own GRE, short timers, one own target; restored exact original settings",
"Owned isolated DB cloned only CHR1 configuration for a separate application/worker; credentials never published; ordinary main-app background polling stayed active, so no claim of zero background DB writes",
"Ping5/5 both directions, actual native IPv6 fields and positive bytes/packets observed through production API and frontend Sessions DOM; no synthetic IPFIX sender for this block",
"UI relay used real isolated HTTP backend responses, not mocked JSON; screenshots show current frame/scroll position, not every row; initial wrong tab/role selectors retained in UI protocol",
"Initial invalid host port81245 was rejected before container launch/native changes, corrected18145",
"Automatic cleanup on CHR2 hit one401 reading own GRE by id; credentials still permitted system/full-catalog reads. Two exact-owned remaining objects deleted by DELETE after fresh catalog ownership checks; all12 static collection projections per device and three config groups restored",
"Cause of the isolated GET-by-id401 not determined; do not infer password rotation or full permission failure",
"Own DB removed and child drain acknowledged; temporary receiver/API/container/tunnel closed; public/metadata/default routes and original settings preserved by baseline checks",
"IPv6 inner over IPv4 GRE outer/export transport; no public IPv6 WAN, arbitrary client OS, maximum throughput or all configurations acceptance"
]
}