- Tumbleweed 20251020-1.1
- Leap-16.0
- Leap-15.6
| SC_PINGER(1) | General Commands Manual | SC_PINGER(1) |
NAME¶
sc_pinger —
scamper driver to run ping with different probe methods on
a list of addresses.
SYNOPSIS¶
sc_pinger |
[-?Dv]
[-a infile]
[-b batch-size]
[-B bad-spec]
[-c probe-count]
[-l limit]
[-m method]
[-M move-dir]
[-o outfile]
[-p port]
[-R unix-remote]
[-t logfile]
[-U unix-local]
[-Z zombie-time] |
DESCRIPTION¶
The sc_pinger utility provides the ability
to connect to a running scamper(1) instance and run ping
on a set of IPv4 and IPv6 addresses. For each address in the file,
sc_pinger will try ICMP, UDP, and TCP-ack probe
methods to solicit responses from the address.
sc_pinger will not try all methods if one method
obtains responses. The output of sc_pinger is
written to a warts(5) file, which can then be processed to
extract details of responses. The options are as follows:
-?- prints a list of command line options and a synopsis of each.
-v- prints the version of
sc_pingerand exits. -D- causes
sc_pingerto detach and become a daemon. -ainfile- specifies the name of the input file which consists of a sequence of IPv4 and IPv6 addresses, one per line.
-bbatch-count- specifies the number of addresses sent to scamper(1) in
each batch. This is useful when using a remote scamper instance, as the
delay between where
sc_pingeris run, and where the remote scamper(1) instance is, can restrict throughput. By default,sc_pingersends a single address at a time. -Bbad-spec- specifies that
sc_pingershould detect and remove bad probe methods at run time. A probe method is bad ifsc_pingerreceives an unlikely run of a single reply TTL value for a given probe method, suggesting that a middlebox close to scamper(1) synthesized responses. The available specifications are:- rxttl-thresh=value: specifies the threshold that must be reached before declaring a run of single reply TTL values indicates a bad probe method.
- rxttl-window=value:
specifies the size of the window
sc_pingershould use to order probe responses. This parameter is necessary because probe responses can come back from scamper(1) out of order depending on how scamper(1) multiplexes workload. You should size this window large enough so thatsc_pingeris likely to consider all responses in order.
-cprobe-count- specifies the number of probes to send for each method.
sc_pingeraccepts two formats: a single integer that specifies the number of probes (and responses) desired; or, two integers, separated by /, that specify the number of responses desired and maximum number of probes to send. By default,sc_pingerseeks three responses from up to five probes. -llimit- specifies the number of objects to write to an output file, before closing
it and opening the next file. The output file must contain a %u format
specifier, which
sc_pingeruses to embed a counter value that increments with each new output file. If the user uses the move option,sc_pingermoves the file when it closes the file. -mmethod- specifies a single probe method to try. The available probe methods are
the same as scamper's ping implementation, listed in
scamper(1) manual page. By default,
sc_pingeruses ICMP-echo, UDP-dport, and TCP-ack-sport to destination port 80. -Mmove-dir- specifies the name of the directory to move completed files to. By
default,
sc_pingerleaves completed files in place. -ooutfile- specifies the name of the output file to be written. The output file will use the warts(5) format.
-pport- specifies the port on the local host where scamper(1) is accepting control socket connections.
-Runix-remote- specifies the name of a unix domain socket on the local host where a remote scamper(1) instance is accepting commands. The unix-remote parameter can either be a unix domain socket for a single remote scamper(1) instance, or be a sc_remoted(1) mux socket with the name of the remote VP encoded after a trailing slash.
-tlogfile- specifies the name of a file to log output from
sc_pingergenerated at run time. -Uunix-local- specifies the name of a unix domain socket on the local host where a local scamper(1) instance is accepting commands.
-Zzombie-time- specifies the length of time, in seconds, before deciding
scamper(1) has gone unresponsive and exiting. The
minimum length of time is ten seconds. By default,
sc_pingerwill wait indefinitely. This option is useful when usingsc_pingerwith a remote scamper process.
EXAMPLES¶
Given a set of IPv4 and IPv6 address sets in a file named infile.txt:
192.0.2.1 192.0.32.10 192.0.31.60 2001:db8::1
and a scamper(1) daemon listening on port 31337, then these addresses can be probed using:
sc_pinger -a infile.txt -o
outfile.warts -p 31337To send 4 probes, and stop after receiving two responses:
sc_pinger -a infile.txt -o
outfile.warts -p 31337 -c 2/4To use ICMP-echo and TCP-syn probes to destination port 443:
sc_pinger -a infile.txt -o
outfile.warts -p 31337 -m icmp-echo -m 'tcp-syn -d 443'The following command writes a series of gzip-compressed warts(5) files, each of which have up to 1000 objects in them, with names such as outfile_0000.warts.gz, outfile_0001.warts.gz, moving them to the finished directory:
sc_pinger -a infile.txt -o
outfile_%04u.warts.gz -p 31337 -l 1000 -m finishedA user can concatenate these files into a final bzip2-compressed warts(5) file with sc_wartscat(1):
sc_wartscat -o
outfile_final.warts.bz2 outfile_0000.warts.gz
outfile_0001.warts.gzGiven a sc_remoted(1) process listening on a unix domain socket named /path/to/socket, and a remote vantage point named 'foo' connected to the controller, probe the addresses with the remote vantage point using:
sc_pinger -a infile.txt -o
outfile.warts -R /path/to/socket/fooSEE ALSO¶
scamper(1), sc_minrtt(1), sc_remoted(1), sc_wartscat(1), sc_wartsdump(1), sc_warts2json(1), sc_warts2text(1)
AUTHORS¶
sc_pinger was written by Matthew Luckie
<mjl@luckie.org.nz>.
| June 27, 2025 | Linux 6.4.0-150700.53.19-default |