The client-server model describes the communication process between two computers or programs.
The client system makes a service request to the server system, then the server system fulfills the request.
Although programs can use the client-server model internally in a single computer, the model is more widely used across a network.
The client-server model provides a way to distribute services efficiently across multiple locations on a network.
The client-server model describes network services and the client programs of those services.
Client Processes
The client is a host or a process that uses services from another host or program, known as a server.
Server Processes
The server is a host or a process that provides services to another program
known as a client.
Client-server computing is a key factor in supporting network computing
Starting Server Processes
Internet Service Daemon (inetd)
The inetd daemon is a special network process that runs on each system and starts server processes that do not automatically start at boot time
The inetd daemon is the server process for both the standard Internet services and Sun Remote Procedure Call (Sun RPC) services
Network services can be independently enabled or disabled using the inetadm command.
# inetadm ==> to list the current state of all network facilities
Note – When a network service is affected, any related services are also affected. By disabling one service, a number of other services may become unavailable.
# inetadm | grep telnet ==> to view if telnet is enabled or not
# inetadm -d telnet ==> to disable the telnet facility
# inetadm | grep telnet
# inetadm -e telnet ==> to enable the telnet facility
# inetadm | grep telnet
# inetadm -l telnet ==> to list the details about telnet
Network Ports
Network ports help transport protocols to distinguish between multiple service requests arriving at a given host computer
The TCP and UDP transport protocols identify ports using a positive integer between 1 and 65535, which is called a port number.
Network ports can be divided into two categories, well-known ports and ephemeral (short-lived) ports.
If a port number is not pre-assigned, the operating system allows an application to choose an unused port number.
A client often communicates with a server through a well-known port.
Well-known ports are stored in the /etc/inet/services file.
# grep telnet /etc/inet/services ==> to view the well-known port of a
specific service
# grep mail /etc/inet/services
Starting RPC Services
RPC services are assigned a unique program number by the programmer when they are written.
The RPC services are not typically assigned to well-known ports.
RPC services started at boot time with startup scripts run on available ports above 32768.
The rpcbind process associates RPC program numbers with port numbers.
# grep rpcbind /etc/services
Listing Registered RPC Services
syntax: rpcinfo -p [ host ]
# rpcinfo -p ==> to list all services registered with rpcbind process
program vers proto port service
100000 4 tcp 111 rpcbind
100000 3 tcp 111 rpcbind
100000 3 udp 111 rpcbind
100000 2 udp 111 rpcbind
100232 10 udp 32772 sadmind
100083 1 tcp 32771
Deleting RPC Service Registration
syntax: rpcinfo -d prognum versnum
# rpcinfo -d 100012 1 ==> This command unregisters the RPC service with program number 100012 and version number 1.
The deleted RPC service that uses program number
100012 is sprayd.
To register the sprayd service again, restart the inetd daemon as follows:
# svcadm disable svc:/network/rpp/spray:udp
# svcadm enable svc:/network/rpp/spray:udp
Note – When using the rpcinfo -d command to unregister an RPC service, the RPC service can be identified using either the service name or the program number.
The client system makes a service request to the server system, then the server system fulfills the request.
Although programs can use the client-server model internally in a single computer, the model is more widely used across a network.
The client-server model provides a way to distribute services efficiently across multiple locations on a network.
The client-server model describes network services and the client programs of those services.
Client Processes
The client is a host or a process that uses services from another host or program, known as a server.
Server Processes
The server is a host or a process that provides services to another program
known as a client.
Client-server computing is a key factor in supporting network computing
Starting Server Processes
Internet Service Daemon (inetd)
The inetd daemon is a special network process that runs on each system and starts server processes that do not automatically start at boot time
The inetd daemon is the server process for both the standard Internet services and Sun Remote Procedure Call (Sun RPC) services
Network services can be independently enabled or disabled using the inetadm command.
# inetadm ==> to list the current state of all network facilities
Note – When a network service is affected, any related services are also affected. By disabling one service, a number of other services may become unavailable.
# inetadm | grep telnet ==> to view if telnet is enabled or not
# inetadm -d telnet ==> to disable the telnet facility
# inetadm | grep telnet
# inetadm -e telnet ==> to enable the telnet facility
# inetadm | grep telnet
# inetadm -l telnet ==> to list the details about telnet
Network Ports
Network ports help transport protocols to distinguish between multiple service requests arriving at a given host computer
The TCP and UDP transport protocols identify ports using a positive integer between 1 and 65535, which is called a port number.
Network ports can be divided into two categories, well-known ports and ephemeral (short-lived) ports.
If a port number is not pre-assigned, the operating system allows an application to choose an unused port number.
A client often communicates with a server through a well-known port.
Well-known ports are stored in the /etc/inet/services file.
# grep telnet /etc/inet/services ==> to view the well-known port of a
specific service
# grep mail /etc/inet/services
Starting RPC Services
RPC services are assigned a unique program number by the programmer when they are written.
The RPC services are not typically assigned to well-known ports.
RPC services started at boot time with startup scripts run on available ports above 32768.
The rpcbind process associates RPC program numbers with port numbers.
# grep rpcbind /etc/services
Listing Registered RPC Services
syntax: rpcinfo -p [ host ]
# rpcinfo -p ==> to list all services registered with rpcbind process
program vers proto port service
100000 4 tcp 111 rpcbind
100000 3 tcp 111 rpcbind
100000 3 udp 111 rpcbind
100000 2 udp 111 rpcbind
100232 10 udp 32772 sadmind
100083 1 tcp 32771
Deleting RPC Service Registration
syntax: rpcinfo -d prognum versnum
# rpcinfo -d 100012 1 ==> This command unregisters the RPC service with program number 100012 and version number 1.
The deleted RPC service that uses program number
100012 is sprayd.
To register the sprayd service again, restart the inetd daemon as follows:
# svcadm disable svc:/network/rpp/spray:udp
# svcadm enable svc:/network/rpp/spray:udp
Note – When using the rpcinfo -d command to unregister an RPC service, the RPC service can be identified using either the service name or the program number.