oxidecomputer / oxidecomputer/opte
Unknown flows in dump-layer
Open
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 77
- Forks
- 11
- Avg merge
- 9d 20h
- Merged PRs (30d)
- 8
Description
I've noticed that opteadm dump-layer will sometimes show "unknown" flows that seems to just all-zeros:
$ pfexec opteadm dump-layer -p opte_nexus0 firewall
Layer firewall
======================================================================
Inbound Flows
----------------------------------------------------------------------
PROTO SRC IP SPORT DST IP DPORT HITS ACTION
TCP 192.168.1.2 63016 10.0.0.5 443 0 no-op
TCP 192.168.1.2 63018 10.0.0.5 80 0 no-op
TCP 192.168.3.2 63016 10.0.0.5 443 1 no-op
Unknown 0.0.0.0 0 0.0.0.0 0 0 no-op
Outbound Flows
----------------------------------------------------------------------
PROTO SRC IP SPORT DST IP DPORT HITS ACTION
TCP 10.0.0.5 80 192.168.1.2 63018 1 no-op
TCP 10.0.0.5 443 192.168.1.2 63016 2 no-op
TCP 10.0.0.5 443 192.168.3.2 63016 0 no-op
Unknown 0.0.0.0 0 0.0.0.0 0 0 no-op
Inbound Rules
----------------------------------------------------------------------
ID PRI HITS PREDICATES ACTION
0 100 17 inner.ulp.dst=80,443 "Stateful Allow"
1 65534 75 inner.ether.ether_type=ARP "Stateful Allow"
DEF -- 1021 -- "deny"
Outbound Rules
----------------------------------------------------------------------
ID PRI HITS PREDICATES ACTION
DEF -- 0 -- "stateful allow"
Unsure if that's expected but figured I'd just open an issue so I don't forget to investigate more.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the pfexec opteadm dump-layer -p opte_nexus0 firewall output and trace the dump-layer flow display and decoding path. Determine why all-zero flows are reported as Unknown, whether they are expected, and what observable behavior should count as resolved.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cli, networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100