Expand description
Layer 4 — capability traits.
Backends implement the subset they can. The CLI holds them as trait
objects (Box<dyn Trait>) so NetworkManager, netlink, or shell-out
backends can be selected at runtime based on what’s available.
All traits are object-safe: no generics on methods, no Self returns,
no async (we stay sync for a sub-100ms CLI).
Traits§
- Actions
- Write operations on connections (requires NetworkManager or similar).
- Diagnostician
- Orchestrates the others into end-to-end health checks and path probes.
- Firewall
- Firewall posture.
- Inventory
- Domain-level inventory. Composes primitives into
Connectionetc., applies smart filtering (IPv6 collapse, APIPA, metadata IPs). - Inventory
Raw - Raw kernel-primitive inventory. Backends implementing this expose
unfiltered data for
jip raw *. - Reachability
- Active probes: ICMP, TCP connect, TLS handshake, HTTP HEAD, traceroute.
- Resolver
- DNS resolution, per-link resolver discovery.