rpcbind(8) on Solnix vs Linux and the BSDs

On Solnix, rpcbind is the illumos daemon at /usr/sbin/rpcbind, managed by SMF as svc:/network/rpc/bind. Its configuration lives in SMF properties, not command-line flags: it has only -d, -w and -l, while FreeBSD and NetBSD have many more options such as -h, -i and -s.

What Solnix runs

A default Solnix system runs the illumos rpcbind at /usr/sbin/rpcbind. No other variants are shipped. Enable, disable and restart it with svcadm(8) and change its properties with svccfg(8).

Differences

Compared withTopicWhat differs
FreeBSD, NetBSDservice managementOn Solnix, rpcbind runs as the SMF service svc:/network/rpc/bind, controlled with svcadm(8) and svccfg(8). The FreeBSD and NetBSD pages describe no service framework and document rpcbind only as a command run directly.
Source: Solnix rpcbind(8) DESCRIPTION (svc:/network/rpc/bind); FreeBSD rpcbind(8) DESCRIPTION; NetBSD rpcbind(8) DESCRIPTION
FreeBSD, NetBSDremote access defaultSolnix controls remote access with the SMF property config/local_only, which defaults to true and disallows remote access. The FreeBSD and NetBSD pages describe no such property. They restrict only SET and UNSET to the loopback interface unless -i is given.
Source: Solnix rpcbind(8) DESCRIPTION (config/local_only); FreeBSD rpcbind(8) -i; NetBSD rpcbind(8) -i
FreeBSD, NetBSDbinding addresses (-h)Solnix has no -h bindip option and the page does not describe binding to specific addresses. FreeBSD and NetBSD -h can be repeated to choose the IP addresses for TCP and UDP, which they say is typically necessary on a multi-homed host.
Source: Solnix rpcbind(8) SYNOPSIS; FreeBSD rpcbind(8) -h; NetBSD rpcbind(8) -h
FreeBSD, NetBSDTCP wrappersOn Solnix, TCP wrappers are enabled with the SMF property enable_tcpwrappers (default false), and verbose_logging controls what is logged. On FreeBSD and NetBSD, -W enables libwrap and -l turns on its connection logging.
Source: Solnix rpcbind(8) enable_tcpwrappers, verbose_logging; FreeBSD rpcbind(8) -W, -l; NetBSD rpcbind(8) -W, -l
FreeBSD, NetBSD-l meaningSolnix -l listen_backlog takes an argument and overrides the config/listen_backlog property (default 64). On FreeBSD and NetBSD, -l takes no argument and turns on libwrap connection logging.
Source: Solnix rpcbind(8) -l, listen_backlog; FreeBSD rpcbind(8) -l; NetBSD rpcbind(8) -l
FreeBSD, NetBSDwarm-start file locationWith -w, Solnix writes registrations to /var/run/daemon/portmap.file and /var/run/daemon/rpcbind.file, on SIGINT or SIGTERM. FreeBSD and NetBSD store them in /tmp/portmap.file and /tmp/rpcbind.file, and say warmstart support must be compiled in.
Source: Solnix rpcbind(8) -w; FreeBSD rpcbind(8) -w; NetBSD rpcbind(8) -w
FreeBSD, NetBSD-a, -s, -i, -L, -6 missingSolnix has none of -a (abort on errors in debug mode), -s (drop to user daemon), -i (allow SET/UNSET from any host), -L (old-style loopback connections) or -6 (IPv6 only). In Solnix, -d itself aborts on certain errors.
Source: Solnix rpcbind(8) SYNOPSIS, -d; FreeBSD rpcbind(8) -a, -s, -i, -L, -6; NetBSD rpcbind(8) -a, -s, -i, -L, -6
FreeBSDforeground, PID file, -IFreeBSD has -N (run in the foreground), -P (alternative PID file, default /var/run/rpcbind.pid) and -I (do not bind to localhost when -h is given). Solnix has none of these. Only -d keeps it from forking.
Source: FreeBSD rpcbind(8) -N, -P, -I; Solnix rpcbind(8) -d
FreeBSD, NetBSDindirect calls and threadsSolnix has SMF properties allow_indirect (default true) and max_threads (default 72). Setting max_threads below 9 effectively disables indirect calls. The FreeBSD and NetBSD pages document no equivalents.
Source: Solnix rpcbind(8) allow_indirect, max_threads; FreeBSD rpcbind(8) OPTIONS; NetBSD rpcbind(8) OPTIONS
FreeBSD, NetBSDrestart consequencesFreeBSD and NetBSD say all RPC servers must be restarted if rpcbind is restarted. Solnix says this happens if rpcbind crashes or is killed with SIGKILL, or is started without -w after a graceful termination. A warm start avoids it.
Source: Solnix rpcbind(8) NOTES; FreeBSD rpcbind(8) NOTES; NetBSD rpcbind(8) NOTES
NetBSDaccess control filesNetBSD documents access control through /etc/hosts.allow and /etc/hosts.deny with daemon name rpcbind. The Solnix page points to hosts_access(5) and enable_tcpwrappers but names no files.
Source: NetBSD rpcbind(8) DESCRIPTION; Solnix rpcbind(8) enable_tcpwrappers, SEE ALSO

Standards

  • POSIX: rpcbind is not a POSIX.1-2024 utility.
  • Solnix: ATTRIBUTES: Interface Stability is given as "See below". The page says TCP wrappers is External.

Writing portable scripts

  • Do not rely on rpcbind command-line flags in cross-platform scripts. Solnix configures it through SMF properties and svcadm, while the BSDs use flags such as -h, -i and -s.
  • Do not hard-code warm-start file paths: Solnix uses /var/run/daemon/, FreeBSD and NetBSD use /tmp/.

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.