Section: XScreenSaver manual (6)
Updated: 5.40 (12-Aug-2018)
sonar - display a sonar scope
This draws a sonar screen that pings (get it?) the hosts on
your local network, and plots their distance (response time) from you.
The three rings represent ping times of approximately 2.5, 70 and 2,000
Alternately, it can run a simulation that doesn't involve hosts.
understands the following options:
- -ping hosts-or-subnets
The list of things to ping, separated by commas or spaces.
Elements of this list may be:
Run in simulation mode instead of pinging real hosts.
Ping the given host.
Ping the given IPv4 address.
Ping the local subnet. On systems where we can determine the local
network mask, we use that; otherwise, we assume Class C (254 hosts).
Ping a different-sized local subnet: e.g., subnet/28 would ping
a 4-bit subnet (the nearest 14 addresses). On systems where we can
determine the local network mask, we always use that.
Ping an arbitrary other IPv4 subnet. The address specifies
the base address, and the part after the slash is how wide the
subnet is. Typical values are /24 (for 254 addresses) and /28 (for
Ping the hosts listed in the given file. This file can be in the
format used by /etc/hosts, or it can be any file that has host
names as the first or second element on each line. If you use ssh,
sonar -ping $HOME/.ssh/known_hosts
- -ping-timeout int
The amount of time in milliseconds the program will wait for an answer
to a ping.
- -delay int
Delay between frames, in microseconds. Default 20000.
- -speed ratio
Less than 1 for slower, greater than 1 for faster. Default 1.
- -sweep-size ratio
How big the glowing sweep area should be. Default 0.3.
- -font-size points
How large the text should be. Default 10 points.
Keep the display stationary instead of very slowly wobbling back and forth.
Do not attempt to resolve IP addresses to hostnames.
Do not display ping times beneath the host names.
- -team-a-name string
In simulation mode, the name of team A.
- -team-b-name string
In simulation mode, the name of team B.
- -team-a-count int
In simulation mode, the number of bogies on team A.
- -team-b-count int
In simulation mode, the number of bogies on team B.
Display the current frame rate, polygon count, and CPU load.
On most Unix systems, this program must be installed as setuid root
in order to ping hosts. This is because root privileges are needed
to create an ICMP RAW socket. Privileges are disavowed shortly after
startup (just after connecting to the X server) so this is believed
to be safe:
chown root:root sonar
chmod u+s sonar
It is not necessary to make it setuid on MacOS systems, because on
MacOS, unprivileged programs can ping by using ICMP DGRAM sockets
instead of ICMP RAW.
In ping-mode, the display is a logarithmic scale, calibrated so that the
three rings represent ping times of approximately 2.5, 70 and 2,000
This means that if any the hosts you are pinging take longer than 2
seconds to respond, they won't show up; and if you are pinging several
hosts with very fast response times, they will all appear close to the
center of the screen (making their names hard to read.)
Does not support IPv6.
Copyright © 2000-2012 by Jamie Zawinski <email@example.com
Copyright © 1998 by Stephen Martin. <firstname.lastname@example.org
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation. No representations are made about the suitability of this
software for any purpose. It is provided "as is" without express or
Stephen Martin <email@example.com
Subnet support, etc. added by Jamie Zawinski, 17-Jul-2000.
Rewritten using OpenGL instead of X11 by Jamie Zawinski, 12-Aug-2008.