fedora doesn't ship inetd vs xinetd

debian ships

gentoo has a convenient virtual/inetd that lists out any satisfying packages:

also has others not listed in the virtual package:

we'll be comparing a simple use case of hooking up the systat port to the whocommand

inetd

/etc/init.d.conf

systat stream tcp nowait root /usr/bin/who /usr/bin/who

uses /etc/services to look up service port (col 1)

uses /etc/protocols to look up protocol type (col 3)

all in a single file

xinetd

has an /etc/xinetd.d directory so you don't have to modify inetd.conf with a stupid helper

/etc/xinit.d/systat

service systat
{
        id              = systat
        socket_type     = stream
        protocol        = tcp
        user            = root
        wait            = no
        server = /usr/bin/who
}

uses /etc/services & /etc/protocol for lookups. yippeee

and if I want to add a udp listener I can append a new listenever service to the same file:

TODO

yippee:

$ telnet 10.213.0.151 systat
Trying 10.213.0.151...
Connected to 10.213.0.151.
Escape character is '^]'.
m        sshd         2026-06-13 21:54 (10.200.254.12)
Connection closed by foreign host.

systemd

I'm a systemd hater and it'll show a little bit here, but I think this is one of the better features of systemd

doesn't list the listening application under netstat -tulpn

doesn't let me specify the port as a name listed under /etc/services `

rinetd

turns out this isn't a service redirector, woops! all rinetd does is redirect port connections to other addresses' ports. a simple proxy.

rlinetd

// TODO: TEST

service "systat" {  
	enabled yes;  
	protocol tcp;  
	user "nobody";  
	  
	server "/usr/bin/who";  
}

specifically useful though is the exec option which lets you pass in some string modifiers into the execution arguments

https://manpages.debian.org/trixie/rlinetd/rlinetd.conf.5.en.html