ipfstat(8) on Solnix vs Linux and the BSDs
On Solnix, ipfstat is the illumos IP Filter statistics tool at /usr/sbin/ipfstat. Unlike the FreeBSD and NetBSD pages, it adds -z and -G to select a zone and -l to list state entries. It also documents kstat(8) as an alternative, and it has no -4 option.
The manual pages
- Solnix: ipfstat(8) from
pkgs.solnix.illumos-world-man· illumos.org - FreeBSD: ipfstat(8) 15.1-RELEASE
- NetBSD: ipfstat(8) 11.0
What Solnix runs
A default Solnix system runs the illumos ipfstat at /usr/sbin/ipfstat. No other variants are shipped. The page says all operations need root because of the default permissions on the kernel device files. The bundle's ATTRIBUTES section is trimmed, so no interface stability level is available here.
Differences
| Compared with | Topic | What differs |
|---|---|---|
| FreeBSD, NetBSD | zone selection (-z, -G) | Solnix ipfstat has -z zonename (in-zone statistics) and -G zonename (global-zone-controlled statistics). Both work only from the Global Zone. The FreeBSD and NetBSD pages have neither option.Source: Solnix ipfstat(8) SYNOPSIS, -z, -G; FreeBSD ipfstat(8) OPTIONS; NetBSD ipfstat(8) OPTIONS |
| FreeBSD, NetBSD | listing state entries: -l vs -sl | On Solnix, -l used with -s lists active state entries without statistics, and -l is a separate documented option. FreeBSD and NetBSD document -sl as a single option that shows held state information, and their pages have no separate -l.Source: Solnix ipfstat(8) -l; FreeBSD ipfstat(8) -sl; NetBSD ipfstat(8) -sl |
| FreeBSD | -4 option | FreeBSD has -4 for IPv4 and says -4 and -6 are both on by default when displaying lists. Solnix has no -4. Its -6 shows IPv6 lists and states 'if available' and 'might change in the future'.Source: FreeBSD ipfstat(8) -4, -6; Solnix ipfstat(8) -6 |
| FreeBSD, NetBSD | -h and -I scope | Solnix -h and -I are documented for use with -i only. NetBSD documents both for use with -i or -o. FreeBSD's -I is for -i only, and its -h has no stated restriction.Source: Solnix ipfstat(8) -h, -I; NetBSD ipfstat(8) -h, -I; FreeBSD ipfstat(8) -h, -I |
| FreeBSD, NetBSD | -v behaviour | On FreeBSD and NetBSD, -v with -i or -o also prints per-rule match and byte counters, plus active session counts for 'keep state' rules. The Solnix page says only that -v turns on verbose mode with extra debugging information. Use -h on Solnix for hit counts.Source: FreeBSD ipfstat(8) -v; NetBSD ipfstat(8) -v; Solnix ipfstat(8) -v, -h |
| FreeBSD, NetBSD | kernel image and data source | FreeBSD and NetBSD state a default kernel name (/boot/kernel/kernel and /netbsd). The Solnix page names no kernel file. It says ipfstat reads /dev/kmem and the kernel, and that the kstat facility offers an alternative. Source: FreeBSD ipfstat(8) DESCRIPTION; NetBSD ipfstat(8) DESCRIPTION; Solnix ipfstat(8) DESCRIPTION |
| FreeBSD, NetBSD | kstat alternative | The Solnix page says that ipfstat supports kstat(3KSTAT), so you can run kstat -m ipf instead of ipfstat. The FreeBSD and NetBSD pages mention no such alternative.Source: Solnix ipfstat(8) DESCRIPTION (kstat -m ipf); FreeBSD ipfstat(8); NetBSD ipfstat(8) |
| FreeBSD, NetBSD | state top mode details | The Solnix page documents the keys d, l, q, s and r in -t mode. It sorts by bytes in descending order by default, needs 80 columns without checking, and shows only the first X-5 matching entries. The BSD pages point to a keys section that is not in the bundle. They say -t needs curses(3) and may be missing on some systems.Source: Solnix ipfstat(8) DESCRIPTION (state top mode); FreeBSD ipfstat(8) -t; NetBSD ipfstat(8) -t |
| FreeBSD, NetBSD | synopsis form of -t | On FreeBSD and NetBSD, -t has its own synopsis line, and -6 and -C can be combined with it. On Solnix, -C -D -P -S -T are listed in a second synopsis line, and -t sits in the first line's option group.Source: Solnix ipfstat(8) SYNOPSIS; FreeBSD ipfstat(8) SYNOPSIS; NetBSD ipfstat(8) SYNOPSIS |
| FreeBSD | known bug with -4/-6 | The FreeBSD page lists a bug: -4 and -6 are valid only with -i, -o and -t, and no error is raised otherwise. The Solnix page lists no such limit.Source: FreeBSD ipfstat(8) BUGS; Solnix ipfstat(8) -6 |
Standards
- POSIX: ipfstat is not a POSIX.1-2024 utility.
- Solnix: The page has an ATTRIBUTES section, but the bundle trims it, so the interface stability is not available.
Writing portable scripts
- Stick to the options all three pages share:
-a,-A,-d,-f,-g,-h,-i,-I,-n,-o,-R,-s,-v,-6and the-tgroup. Do not rely on-4,-l,-sl,-zor-G. - Run ipfstat as root. Do not parse the
-tscreen output, because it is interactive.
Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.