SYSTEMD.SOCKET(5) systemd.socket SYSTEMD.SOCKET(5) (NAME) systemd.socket - (SYNOPSIS) socket.socket (DESCRIPTION) ".socket" IPC FIFO systemd . . systemd.unit(5) . [Unit] [Install] . [Socket] . systemd.exec(5) ExecStartPre= ExecStartPost= ExecStopPre= ExecStopPost= systemd.kill(5) systemd.resource-control(5) . ( .service systemd.service(5) ). .service .socket Service= . Accept= .service .socket Service= . : foo.socket Accept=no foo.service . Accept=yes foo@.service . WantedBy= RequiredBy= . . Requires= . . . systemd systemd ( sd_listen_fds(3) ) inetd(8) ( StandardInput=socket ). .socket ( network_namespaces(7) ). . ( PrivateNetwork= systemd.exec(5) ) . . .socket PrivateNetwork=yes JoinsNamespaceOf= systemd.exec(5) systemd.unit(5) . (AUTOMATIC DEPENDENCIES) (Implicit Dependencies) : o Before= . o ( AF_UNIX FIFO) Requires= After= . o BindToDevice= BindsTo= After= . systemd.exec(5) systemd.resource-control(5) . (Default Dependencies) DefaultDependencies=no : o Before= sockets.target . o After= Requires= sysinit.target Before= Conflicts= shutdown.target . . DefaultDependencies= . (OPTIONS) [Unit] [Install] systemd.unit(5) . [Socket] FIFO . . systemd.exec(5) systemd.kill(5) systemd.resource-control(5) . [Socket] : ListenStream=, ListenDatagram=, ListenSequentialPacket= (SOCK_STREAM) (SOCK_DGRAM) (SOCK_SEQPACKET) . : ("/") AF_UNIX . ("@") AF_UNIX . "@" NUL . unix(7) . IPv6 . BindIPv6Only= ( ) IPv6 IPv4 () IPv6 . "v.w.x.y:z" IPv4 v.w.x.y z . "[x]:y" IPv6 x y . ( ) "%" : "[x]:y%dev". . IPv6 BindIPv6Only= ( ) IPv4 . "vsock:x:y" CID x y AF_VSOCK . CID AF_VSOCK IP . CID . "vsock" "vsock-stream" "vsock-dgram" "vsock-seqpacket" . SOCK_SEQPACKET ( ListenSequentialPacket=) AF_UNIX . SOCK_STREAM ( ListenStream=) IP TCP SOCK_DGRAM ( ListenDatagram=) UDP . . . Service= . . IP . FreeBind= . ListenFIFO= FIFO ( fifo(7) ) . . ListenDatagram= . ListenSpecial= . . ListenFIFO= . /proc/ /sys/ . ListenNetlink= Netlink . AF_NETLINK ( audit kobject-uevent) . ListenDatagram= . ListenMessageQueue= POSIX ( mq_overview(7) ). ( "/") . ListenFIFO= . . ListenUSBFunction= USB FunctionFS[1] USB . FunctionFS . ListenFIFO= . FunctionFS ep0 . USBFunctionDescriptors= USBFunctionStrings= . . SocketProtocol= udplite sctp mptcp . UDP-Lite (IPPROTO_UDPLITE) SCTP (IPPROTO_SCTP) MPTCP (IPPROTO_MPTCP) . . BindIPv6Only= default both ipv6-only . IPV6_V6ONLY ( ipv6(7) ). both IPv6 IPv4 IPv6 . ipv6-only IPv6 . default ( !) /proc/sys/net/ipv6/bindv6only both . Backlog= . . . listen(2) . 4294967295 . sysctl "net.core.somaxconn" 4096 sysctl . BindToDevice= . . SO_BINDTODEVICE ( socket(7) ). ( systemd.device(5) ). ( ). SocketUser=, SocketGroup= / . AF_UNIX FIFO . () / root ( ) / ( ). . . SocketMode= FIFO . . 0666 . DirectoryMode= FIFO . . . 0755 . Accept= . yes . no ( ). FIFO . no . Accept=no . Accept=yes ( ) ( ). AF_UNIX close(2) . . shutdown(2) Accept=no Accept=yes . Accept=yes inetd(8) systemd . ( Accept=no) ( Accept=yes). . IPv4 IPv6 $REMOTE_ADDR IP $REMOTE_PORT . CGI ( RFC 3875[2] ). AF_UNIX $REMOTE_ADDR ("/") ("@") . $REMOTE_ADDR . Accept=yes $SO_COOKIE . getsockopt(7) . CollectMode=inactive-or-failed Accept=yes . Writable= . ListenSpecial= . true - false . false . . FlushPending= . Accept=no . yes . . no . no . . MaxConnections= Accept=yes . . Accept=no . 64 . MaxConnectionsPerSource= IP ( IPv4/IPv6) CID ( AF_VSOCK) UID ( AF_UNIX). MaxConnections= . 0 . . KeepAlive= . true TCP/IP ( /proc/sys/net/ipv4/tcp_keepalive_time) TCP . SO_KEEPALIVE ( socket(7) TCP Keepalive HOWTO[3] ). false . KeepAliveTimeSec= ( ) . TCP . TCP_KEEPIDLE ( socket(7) TCP Keepalive HOWTO[3] ). 7200 ( ) . . KeepAliveIntervalSec= ( ) SO_KEEPALIVE . TCP_KEEPINTVL ( socket(7) TCP Keepalive HOWTO[3] ). 75 . . KeepAliveProbes= . . TCP_KEEPCNT ( socket(7) TCP Keepalive HOWTO[3] ). 9 . . NoDelay= . TCP . TCP_NODELAY ( tcp(7) ). false . . Priority= . SO_PRIORITY ( socket(7) ). DeferAcceptSec= ( ) . . TCP_DEFER_ACCEPT ( tcp(7) ) ACK . ACK . ( HTTP SMTP) . TCP_DEFER_ACCEPT ( ) . . . ReceiveBuffer=, SendBuffer= . SO_RCVBUF SO_SNDBUF ( socket(7) ). K M G 1024 . IPTOS= IP . IP_TOS ( ip(7) ). low-delay throughput reliability low-cost . IPTTL= IPv4 / IPv6 . IP_TTL/IPV6_UNICAST_HOPS ( ip(7) ipv6(7) ). Mark= . . . SO_MARK . iptables(8) . ReusePort= . true bind(2) TCP UDP . SO_REUSEPORT . socket(7) . . SmackLabel=, SmackLabelIPIn=, SmackLabelIPOut= . "security.SMACK64" "security.SMACK64IPIN" "security.SMACK64IPOUT" FIFO . Smack[4] . . SELinuxContextFromNet= . true systemd SELinux . . SELinux SELinuxContext= . . SELinux MLS/MCS . "false" . . PipeSize= . FIFO . fcntl(2) . K M G 1024 . MessageQueueMaxMessages=, MessageQueueMessageSize= mq_maxmsg mq_msgsize . . mq_setattr(3) . FreeBind= . IP . IP IP . IP_FREEBIND/IPV6_FREEBIND . IP . false . Transparent= . IP_TRANSPARENT/IPV6_TRANSPARENT . false . Broadcast= . SO_BROADCAST . false . PassCredentials= . SO_PASSCRED AF_UNIX . false . PassPIDFD= . SO_PASSPIDFD AF_UNIX pidfd . false . . PassSecurity= . SO_PASSSEC AF_UNIX . false . PassPacketInfo= . IP_PKTINFO IPV6_RECVPKTINFO NETLINK_PKTINFO PACKET_AUXDATA AF_INET AF_INET6 AF_UNIX AF_PACKET . false . . AcceptFileDescriptors= . SO_PASSRIGHTS SCM_RIGHTS ( ) AF_UNIX . true . . Timestamping= "off" "us" ( : "usec" "s") "ns" ( : "nsec") . SO_TIMESTAMP SO_TIMESTAMPNS . off . . TCPCongestion= . TCP . "westwood" "reno" "cubic" "lp" IP . . ExecStartPre=, ExecStartPost= /FIFO . . ExecStartPre= . ExecStopPre=, ExecStopPost= /FIFO . ExecStartPre= . TimeoutSec= ExecStartPre= ExecStartPost= ExecStopPre= ExecStopPost= . . SIGTERM SIGKILL. ( KillMode= systemd.kill(5) ). "5min 20s" . "0" . DefaultTimeoutStartSec= ( systemd- system.conf(5) ). Service= . Accept=no . ( ). . ( ). RemoveOnStop= . . AF_UNIX POSIX FIFO Symlinks= . . off . . Symlinks= . AF_UNIX FIFO . AF_UNIX FIFO . . . . . . FileDescriptorName= . . sd_listen_fds_with_names(3) . ASCII ":" . Accept=no ( .socket ) "connection" . . TriggerLimitIntervalSec=, TriggerLimitBurst= . TriggerLimitIntervalSec= "us" "ms" "s" "min" "h" ... 2s ( systemd.time(7) ). TriggerLimitBurst= Accept=yes 200 ( ) 20 ( ). 0 . . . PollLimitIntervalSec=/PollLimitBurst= TriggerLimitIntervalSec=/TriggerLimitBurst= . . PollLimitIntervalSec=, PollLimitBurst= . TriggerLimitIntervalSec=/TriggerLimitBurst= () () . . . . . . ( ListenXYZ= ). 150 ( Accept=yes) 15 ( ) . ( ) . . DeferTrigger= "patient" . Accept=no . "lenient" "replace" / / . . DeferTriggerMaxSec= . yes . patient DeferTriggerMaxSec= . no . switch-root/soft-reboot . . DeferTriggerMaxSec= DeferTrigger= . . "5min 20s" . () "0" "infinity" . . PassFileDescriptorsToExec= . off . ExecStartPost= ExecStopPre= ExecStopPost= . sd_listen_fds(3) . ExecStartPre= . . systemd.unit(5) systemd.exec(5) systemd.kill(5) . (SEE ALSO) systemd(1), systemctl(1), systemd-system.conf(5), systemd.unit(5), systemd.exec(5), systemd.kill(5), systemd.resource-control(5), systemd.service(5), systemd.directives(7), sd_listen_fds(3), sd_listen_fds_with_names(3) < >> : Socket Activation[5], Socket Activation, part II[6], Converting inetd Services[7], Socket Activated Internet Services and OS Containers[8]. (NOTES) 1. USB FunctionFS https://docs.kernel.org/usb/functionfs.html 2. RFC 3875 https://datatracker.ietf.org/doc/html/rfc3875 3. TCP Keepalive HOWTO http://www.tldp.org/HOWTO/html_single/TCP-Keepalive-HOWTO 4. Smack https://docs.kernel.org/admin-guide/LSM/Smack.html 5. Socket Activation https://0pointer.de/blog/projects/socket-activation.html 6. Socket Activation, part II https://0pointer.de/blog/projects/socket-activation2.html 7. Converting inetd Services https://0pointer.de/blog/projects/inetd.html 8. Socket Activated Internet Services and OS Containers https://0pointer.de/blog/projects/socket-activated-containers.html systemd 261.2 SYSTEMD.SOCKET(5)