Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
RWHOD(8)		    System Manager's Manual		      RWHOD(8)

NAME
       rwhod --	system status server

SYNOPSIS
       rwhod [-i] [-p] [-l] [-m	[ttl]]

DESCRIPTION
       The  rwhod  utility  is the server which	maintains the database used by
       the rwho(1) and ruptime(1) programs.  Its operation  is	predicated  on
       the ability to broadcast	or multicast messages on a network.

       The  rwhod  utility  operates as	both a producer	and consumer of	status
       information, unless the -l (listen mode)	option is specified, in	 which
       case it acts as a consumer only.	 As a producer of information it peri-
       odically	queries	the state of the system	and constructs status messages
       which  are  broadcasted	or multicasted on a network.  As a consumer of
       information, it listens for other rwhod servers'	status messages, vali-
       dating them, then recording them	in a collection	of  files  located  in
       the directory /var/rwho.

       The following options are available:

       -i      Enable  insecure	 mode, which causes rwhod to ignore the	source
	       port on incoming	packets.

       -p      Ignore all POINTOPOINT interfaces.  This	is useful  if  you  do
	       not wish	to keep	dial on	demand interfaces permanently active.

       -l      Enable listen mode, which causes	rwhod to not broadcast any in-
	       formation.   This  allows  you to monitor other machines' rwhod
	       information, without broadcasting your own.

       -m [ttl]
	       Cause rwhod to use IP multicast (instead	of broadcast)  on  all
	       interfaces  that	 have  the  IFF_MULTICAST  flag	 set  in their
	       "ifnet" structs (excluding the loopback interface).  The	multi-
	       cast reports are	sent with a time-to-live of 1, to prevent for-
	       warding beyond the directly-connected subnet(s).

	       If the optional ttl argument is	supplied  with	the  -m	 flag,
	       rwhod  will  send IP multicast datagrams	with a time-to-live of
	       ttl, via	a SINGLE interface rather than	all  interfaces.   ttl
	       must  be	 between 0 and 32 (or MAX_MULTICAST_SCOPE).  Note that
	       -m 1 is different from -m, in that -m 1 specifies  transmission
	       on one interface	only.

	       When  -m	 is  used  without a ttl argument, the program accepts
	       multicast rwhod reports from all	multicast-capable  interfaces.
	       If  a  ttl argument is given, it	accepts	multicast reports from
	       only one	interface, the one on which reports  are  sent	(which
	       may be controlled via the host's	routing	table).	 Regardless of
	       the -m option, the program accepts broadcast or unicast reports
	       from  all interfaces.  Thus, this program will hear the reports
	       of old, non-multicasting	rwhods,	but, if	multicasting is	 used,
	       those  old  rwhods  will	not hear the reports generated by this
	       program.

       The server transmits and	receives messages at the port indicated	in the
       ``who'' service specification; see services(5).	The messages sent  and
       received, are of	the form:

	     struct  outmp {
		     char    out_line[8];	     /*	tty name */
		     char    out_name[8];	     /*	user id	*/
		     long    out_time;		     /*	time on	*/
	     };

	     struct  whod {
		     char    wd_vers;
		     char    wd_type;
		     char    wd_fill[2];
		     int     wd_sendtime;
		     int     wd_recvtime;
		     char    wd_hostname[32];
		     int     wd_loadav[3];
		     int     wd_boottime;
		     struct  whoent {
			     struct  outmp we_utmp;
			     int     we_idle;
		     } wd_we[1024 / sizeof (struct whoent)];
	     };

       All  fields  are	converted to network byte order	prior to transmission.
       The load	averages are as	calculated by the w(1) program,	and  represent
       load  averages  over  the  5,  10,  and	15 minute intervals prior to a
       server's	transmission; they are multiplied by 100 for representation in
       an  integer.   The  host	 name  included	 is  that  returned   by   the
       gethostname(3) system call, with	any trailing domain name omitted.  The
       array  at  the  end of the message contains information about the users
       logged in to the	sending	machine.  This information includes  the  con-
       tents  of the entry from	the user accounting database for each non-idle
       terminal	line and a value indicating the	time in	seconds	since a	 char-
       acter was last received on the terminal line.

       Messages	 received  by the rwho server are discarded unless they	origi-
       nated at	an rwho	server's port or the -i	option was specified.  In  ad-
       dition,	if  the	host's name, as	specified in the message, contains any
       unprintable ASCII characters, the message is discarded.	Valid messages
       received	by rwhod are placed in files named whod.hostname in the	direc-
       tory /var/rwho.	These files contain only the most recent  message,  in
       the format described above.

       Status messages are generated approximately once	every 3	minutes.

SEE ALSO
       ruptime(1), rwho(1)

HISTORY
       The rwhod utility appeared in 4.2BSD.

BUGS
       Status information should be sent only upon request rather than contin-
       uously.	 People	often interpret	the server dying or network communica-
       tion failures as	a machine going	down.

FreeBSD	14.3			August 8, 2017			      RWHOD(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=rwhod&sektion=8&manpath=FreeBSD+14.3-RELEASE+and+Ports>

home | help