{ "nftables": [ { "metainfo": { "version": "VERSION", "release_name": "RELEASE_NAME", "json_schema_version": 1 } }, { "table": { "family": "ip", "name": "x", "handle": 0 } }, { "chain": { "family": "ip", "table": "x", "name": "z", "handle": 0, "type": "filter", "hook": "input", "prio": 0, "policy": "accept" } }, { "set": { "family": "ip", "name": "y", "table": "x", "type": "ipv4_addr", "handle": 0, "size": 65535, "flags": [ "timeout", "dynamic" ] } }, { "rule": { "family": "ip", "table": "x", "chain": "z", "handle": 0, "expr": [ { "set": { "op": "add", "elem": { "payload": { "protocol": "ip", "field": "saddr" } }, "set": "@y" } } ] } }, { "rule": { "family": "ip", "table": "x", "chain": "z", "handle": 0, "expr": [ { "set": { "op": "update", "elem": { "elem": { "val": { "payload": { "protocol": "ip", "field": "saddr" } }, "timeout": 30 } }, "set": "@y" } } ] } }, { "rule": { "family": "ip", "table": "x", "chain": "z", "handle": 0, "expr": [ { "match": { "op": "==", "left": { "payload": { "protocol": "ip", "field": "saddr" } }, "right": "@y" } } ] } } ] }