Daemons (also known as servers) are processes that run continuously in the background and perform functions required by other processes. Transmission Control Protocol/Internet Protocol (TCP/IP) provides daemons for implementing certain functions in the operating system. These daemons are background processes that run without interrupting other processes (unless that is part of the daemon function).
Daemons are invoked by commands at the system management level, by other daemons, or by shell scripts. You can also control daemons with the inetd daemon, the rc.tcpip shell script, and the System Resource Controller (SRC).
A subsystem is a daemon, or server, that is controlled by the SRC. A subserver is a daemon that is controlled by a subsystem. (Daemon commands and daemon names are usually denoted by a d at the end of the name.) The categories of subsystem and subserver are mutually exclusive. That is, daemons are not listed as both a subsystem and as a subserver. The only TCP/IP subsystem that controls other daemons is the inetd daemon. All TCP/IP subservers are also inetd subservers.
The following are TCP/IP daemons controlled by the SRC:
Subsystems
gated | Provides gateway routing functions and supports the Routing Information Protocol (RIP), the Routing Information Protocol Next Generation (RIPng), Exterior Gateway Protocol (EGP), the Border Gateway Protocol (BGP) and BGP4+, the Defense Communications Network Local-Network Protocol (HELLO), Open Shortest Path First (OSPF), Intermediate System to Intermediate System (IS-IS), and Internet Control Message Protocol (ICMP and ICMPv6)/Router Discovery routing protocols. In addition, the gated daemon supports the Simple Network Management Protocol (SNMP). The gated daemon is one of two routing daemons available for routing to network addresses and is the preferred routing daemon. The gated daemon is preferred over the routed daemon because the gated daemon supports more gateway protocols. |
inetd | Invokes and schedules other daemons when requests for the daemon services are received. This daemon can also start other daemons. The inetd daemon is also known as the super daemon. |
iptrace | Provides interface-level packet-tracing function for Internet protocols. |
named | Provides the naming function for the Domain Name Server protocol (DOMAIN). |
routed | Manages the network routing tables and supports the Routing Information Protocol (RIP). The gated daemon is preferred over the routed daemon because the gated daemon supports more gateway protocols. |
rwhod | Sends broadcasts to all other hosts every three minutes and stores information about logged-in users and network status. Use the rwhod daemon with extreme care, because it can use significant amounts of machine resources. |
timed | Provides the time server function. |
Note: Both the routed and gated daemons are listed as TCP/IP subsystems. Do not run the startsrc -g tcpip command, which initiates both of these routing daemons, along with all the other TCP/IP subsystems. Running both daemons simultaneously on one machine can produce unpredictable results.
TCP/IP daemons controlled by the inetd subsystem are the following:
inetd Subservers
comsat | Notifies users of incoming mail. |
fingerd | Provides a status report on all logged-in users and network status at the specified remote host. This daemon uses the Finger protocol. |
ftpd | Provides the file transfer function for a client process using the File Transfer Protocol (FTP). |
rexecd | Provides the foreign host server function for the rexec command. |
rlogind | Provides the remote login facility function for the rlogin command. |
rshd | Provides the remote command execution server function for the rcp and rsh commands. |
talkd | Provides the conversation function for the talk command. |
syslogd | Reads and logs system messages. This daemon is in the Remote Access Service (RAS) group of subsystems. |
telnetd | Provides the server function for the TELNET protocol. |
tftpd | Provides the server function for the Trivial File Transfer Protocol (TFTP). |
uucpd | Handles communications between the Basic Network Utilities (BNU) and TCP/IP. |
Among other functions, SRC allows you to start daemons, stop them, and trace their activity. In addition, SRC provides the ability to group daemons into subsystems and subservers.
System Resource Control is a tool designed to aid the person who manages your system in controlling daemons. SRC allows control beyond the flags and parameters available with each daemon command.
See the System Resource Controller Overview in AIX 5L Version 5.2 System Management Concepts: Operating System and Devices for more information concerning the System Resource Controller.
SRC commands can affect one daemon, a group of daemons, or a daemon and those daemons it controls (subsystem with subservers). In addition, some TCP/IP daemons do not respond to all SRC commands. The following is a list of SRC commands that can be used to control TCP/IP daemons and their exceptions.
startsrc | Starts all TCP/IP subsystems and inetd subservers. The startsrc command works for all TCP/IP subsystems and inetd subservers. |
stopsrc | Stops all TCP/IP subsystems and inetd subservers. This command is also called the stop normal command. The stop normal command allows subsystems to process all outstanding work and terminate gracefully. For inetd subservers, all pending connections are allowed to start and all existing connections are allowed to complete. The stop normal command works for all TCP/IP subsystems and inetd subservers. |
stopsrc -f | Stops all TCP/IP subsystems and inetd subservers. This command is also called the stop force. The stop force command immediately terminates all subsystems. For inetd subservers, all pending connections and existing connections are terminated immediately. |
refresh | Refreshes the following subsystems and subservers: the inetd, syslogd, named, dhcpsd, and gated subsystems. |
lssrc | Provides short status for subsystems, which is the state of the specified subsystem (active or inoperative). Also provides short status for inetd subservers. The short status for inetd subservers includes: subserver name, state, subserver description, command name, and the arguments with which it was invoked. |
lssrc -l | Provides the short status plus additional information (long status)
for the following subsystems:
The lssrc -l command also provides long status for inetd subservers. The long status includes short status information and active connection information. Some subservers will provide additional information. The additional information by subserver includes:
The rwhod and timed subservers do not provide long status. |
traceson | Turns on socket-level debugging. Use the trpt command to format the output. The timed and iptraced subsystems do not support the traceson command. |
tracesoff | Turns off socket-level debugging. Use the trpt command to format the output. The timed and iptraced subsystems do not support the tracesoff command. |
For examples of how to use these commands, see the articles on the individual commands. For more information on the System Resource Controller, see System Resource Controller Overview in AIX 5L Version 5.2 System Management Concepts: Operating System and Devices.
To configure the inetd daemon:
Task | SMIT fast path | Command or file | Web-based System Manager Management Environment |
---|---|---|---|
Starting the inetd Daemon | smit mkinetd | startsrc -s inetd | Software --> Network --> TCPIP (IPv4 and IPv6) --> Subsystems. Right-click on an inactive subsystem, and select Activate. |
Changing Restart Characteristics of the inetd Daemon | smit chinetd or
smit lsinetd |
|
Software --> Network --> TCPIP (IPv4 and IPv6) --> Subsystems --> Selected --> Properties. |
Stopping the inetd Daemon | smit rminetd | stopsrc -s inetd | Software --> Network --> TCPIP (IPv4 and IPv6) --> Subsystems. Right-click on an active subsystem, and select --> Deactivate. |
Listing All inetd Subservers | smit inetdconf |
|
Software --> Network --> TCPIP (IPv4 and IPv6) --> Subsystems. |
Adding an inetd Subserver1 | smit mkinetdconf | edit /etc/inetd.conf then run refresh -s inetd
or kill -1 inetdPID2 |
Software --> Network --> TCPIP (IPv4 and IPv6) --> Subsystems --> Subsystems (drop-down menu) --> New inetd Subserver. |
Change/Show Characteristics of an inetd Subserver | smit inetdconf | edit /etc/inetd.conf then run refresh -s inetd
or kill -1 inetdPID2 |
Software --> Network --> TCPIP (IPv4 and IPv6) --> Subsystems --> Selected --> Properties. |
Removing an inetd Subserver | smit rminetd | edit /etc/inetd.conf then run refresh -s inetd
or kill -1 inetdPID2 |
Software --> Network --> TCPIP (IPv4 and IPv6) --> Subsystems --> Selected --> Deactivate. |
Notes:
Client Network Services (accessible using the Web-based System Manager wsm, or the SMIT fast path, smit clientnet) refers to the TCP/IP protocols available for use by this operating system. Each protocol (or service) is known by the port number that it uses on the network, hence the term well-known port. As a convenience to programmers, the port numbers can be referred to by names as well as numbers. For example, the TCP/IP mail protocol uses port 25 and is known by the name smtp. If a protocol is listed (uncommented) in the /etc/services file, then a host can use that protocol.
By default, all the TCP/IP protocols are defined in the /etc/services file. You do not have to configure this file. If you write your own client/server programs, you might want to add your service to the /etc/services file, and reserve a specific port number and name for your service. If you do decide to add your service to /etc/services, note that port numbers 0 through 1024 are reserved for system use.
Task | SMIT fast path | Command or file | Web-based System Manager Management Environment |
---|---|---|---|
Listing All Services | smit lsservices | view /etc/services | Software --> Network --> TCPIP (IPv4 and IPv6) --> Services. |
Adding a Service | smit mkservices | edit /etc/services | Software --> Network --> TCPIP (IPv4 and IPv6) --> Services --> New Service. |
Change/Show Characteristics of a Service | smit chservices | edit /etc/services | Software --> Network --> TCPIP (IPv4 and IPv6) --> Services. Select a service, then click Selected --> Properties. |
Removing a Service | smit rmservices | edit /etc/services | Software --> Network --> TCPIP (IPv4 and IPv6) --> Services. Select a service, then click Selected --> Delete. |
Server Network Services include controlling remote access, starting or stopping TCP/IP, and managing the pty device driver, as shown in the following table.
The pty device driver is installed automatically with the system. By default, it is configured to support 16 BSD-style symbolic links, and it is available for use by the system at boot time.
Task | SMIT fast path | Command or file | Web-based System Manager Management Environment |
---|---|---|---|
Controlling Remote Access | See "Remote Command Execution Access" and
"Restricted File Transfer Program Users". |
Software --> Network --> TCPIP (IPv4 and IPv6) --> Access Control. Right-click on Remote Access and select Properties. | |
Start, Restart, or Stop TCP/IP Subsystems | smit otherserv | See "System Resource Control". | Software --> Network --> TCPIP (IPv4 and IPv6) --> Subsystems. Right-click on a subsystem, and select Properties. |
Change/Show Characteristics of the pty Device Driver | smit chgpty | chdev -l pty0 -P -a num=X
where X ranges from 0 to 64 |
|
Make the pty Device Driver Unavailable for Use | smit pty then select
Remove the PTY; Keep Definition |
|
|
Make the pty Device Driver Available for Use | smit pty then select
Configure the Defined PTY |
|
|
Generate an Error Report | smit errpt |
|
|
Trace the pty | smit trace |
|
|