APing
Ping sweep utility
For Windows 2000 - 2022, XP - 11 and Linux x64 platforms
APing is a command line ICMP echo (ping) utility optimized for reliable high performance monitoring of large numbers of systems. The
software accepts IP Address, DNS names and address ranges in a variety of common formats thru command line and
external ping file.
Use instructions
APing is a command line application. To use the software follow
download link below and save the application to a folder.
Windows users: From Windows command prompt switch to download folder and run aping followed by a DNS name or CIDR range of
destination host or network. Example: 'aping www.iea-software.com'. When executed with elevated privileges our scalable raw socket implementation
is automatically utilized for best performance. When unavailable unprivileged system calls are used to send and receive ICMP echo packets.
Linux users: type 'tar -zxf aping.tar.gz' to unarchive aping utility. When running aping normally as an unprivileged user raw socket access must first be granted to this software by
executing 'setcap cap_net_raw=ep ./aping' as root.
Finally to use run aping followed by a DNS name or CIDR range of a destination host or network. Example: './aping www.iea-software.com'.
c:\>aping 10.0.0.0/24 www.iea-software.com demo.iea-software.com
aping version 1.0.3 - Copyright (c) 2020 IEA Software, Inc.
Sending 260 requests to 260 hosts @ 1000/sec in 1 batch (ETA 1 secs)
10.0.0.0/24 - 10.0.0.1 (1 ms)
10.0.0.0/24 - 10.0.0.2 (1 ms)
10.0.0.0/24 - 10.0.0.3 (1 ms)
10.0.0.0/24 - 10.0.0.4 (1 ms)
10.0.0.0/24 - 10.0.0.254 (1 ms)
www.iea-software.com - 70.89.142.193 (30 ms)
www.iea-software.com - 2603:3023:901:43EA::7 (30 ms)
demo.iea-software.com - 70.89.142.195 (28 ms)
demo.iea-software.com - 2603:3023:901:43EA::5 (31 ms)
c:\>
For basic summary of available command line options run 'aping' by itself with no parameters. Detailed descriptions of each command line option below:
Parameter | Default | Description |
** Accepted range formats | N/A |
The following range formats are accepted. Any numbers of ranges are accepted when entered from the command line or ping file.
Ranges can be positioned anywhere before and after other ranges and parameters of command line.
- x.x.x.x (Single IPv4 address)
- x.x.x.x/y (IPv4 CIDR range)
- x.x.x.* (IPv4 wildcard octet address range)
- x.x.x.x-y.y.y.y (IPv4 address range)
- www.iea-software.com (IPv4 and IPv6 name resolution)
- 2001:db8::1 (Single IPv6 address)
- 2001:db8::/118 (IPv6 CIDR range)
- 2001:db8::1-2001:db8::f (IPv6 address range)
|
-rate | 1000 | Pace of outgoing ICMP requests in packets per second. For accurate reliable outcomes we recommend rate be limited as low as reasonable never to exceed capability of the host computer and network to transmit and forward ICMP packets. This software is not congestion aware and does not adjust transmission rate to network conditions. |
-4 | N/A | Force IPv4 only resolution of DNS names |
-6 | N/A | Force IPv6 only resolution of DNS names |
-requests or -n | 1 | Number of times an ICMP request is to be repeatedly transmitted to the same host. Sending multiple requests can be useful to better understand packet loss and jitter. When operating in '-show delta' mode increasing requests can be useful in reducing instances of false detection of status change due to packet loss. |
-interval or -i | 100 | When '-requests' above is 2 or more this setting controls minimum wait time in milliseconds between successive transmissions to the same host. This is a guaranteed lower limit; actual timing can be significantly higher. |
-format | text |
When 'text' output is in human readable form.
While 'xml' or 'sql' results are output to respective machine readable formats.
When 'csv' or 'tsv' output is standard comma separated value (CSV) or tab separated value (TSV) flat file formatted.
When either flat format is selected first row of response contains column labels output as follows:
Column | Description |
Date | Timestamp corresponding with date and time results are output to display. In large batches this may vary significantly from time response data for host is recorded.
| ID | Identifies sourcing of host queried. If hosts are derived by DNS name this represents DNS name host was resolved from.
If by address range the range is shown. Finally if a pingfile is used and ID field is explicitly filled in for a host, range or DNS name then the ID field from
pingfile is transmitted in response taking precedence over range and DNS name.
| Address | Specific single numeric IPv4 or IPv6 address queried
| Sent | Count of ICMP requests transmitted to this host
| Received | Count of ICMP responses received from this host within the timeout window
| MinMS | Minimum response time in milliseconds of all responses from this host. If no responses are received the value is 0
| AvgMS | Average response time in milliseconds of all responses from this host. If no responses are received the value is 0
| MaxMS | Maximum response time in milliseconds of all responses from this host. If no responses are received the value is 0
| Reply | When one or more response is received from the host this field displays 'OK' otherwise a message indicating reason for failure is shown.
If an intermediate router transmits a failure response on the hosts behalf it is displayed here. Otherwise if no response arrives within timeout
window 'Request timed out' is displayed.
| ReplyAddress | Displays host response was transmitted from. Normally this is the same address the original ICMP request was transmitted to however in certain
circumstances such as a host replying to a request transmitted to broadcast address or an intermediate router responding on behalf of host reply address may differ.
|
|
-timeout or -w | 1000 | Upper limit in milliseconds to await response packet to a transmitted request packet. If no response is received or received late after timeout period then a request is considered timed out. |
-show | good |
Filtering options controlling hosts to be included in output based on response status.
Value | Description |
good | Only hosts from which one or more good responses have been received are to be included in output.
This setting applies only to hosts sourced from IP address ranges.
When pinging DNS names or individual addresses and no response is received hosts are still included in output when this setting is chosen |
bad | Only hosts from which no good responses have been received are to be included in output |
all | All hosts for which an ICMP request was transmitted are to be displayed regardless of whether any responses are received |
delta | Delta mode continuously monitors hosts for changes to a hosts status and outputs status changes as detected.
Initially a list of hosts for which at least one response has been received is output identical to '-show good'.
Subsequently after a 60 second delay ('sleep' parameter below) ICMP requests are resent to all hosts. If there is a change of status
from earlier attempt host is output to display. Finally after another 60 second delay the process starts over again.
This mode of operation is limited to 10 batches of 1,000,000 hosts for a maximum of 10,000,000 hosts monitored for change.
When using delta mode it's recommended '-requests' setting be increased from default to minimize possibility of false status changes triggered by normal packet loss.
|
list | Outputs list of IP addresses to be scanned and exits without scanning hosts |
|
-sleep | 60 | When in delta mode seconds to wait between successive scans for host status changes.
In cases where scans execute in less time than the sleep duration actual sleep time is reduced by scan execution time.
For example if sleep duration is 1 and a scan takes 400ms to complete actual sleep duration will be 600ms.
When scan time exceeds sleep duration then a delay of the full sleep duration is honored between scans.
If sleep parameter is specified in conjunction with modes other than 'delta' scans are executed indefinitely until
execution is canceled.
|
-stagger | off |
Stagger when enabled evenly balances requests across two or more ranges.
For example a ping file containing 100 class C networks is scanned at a rate of 10000/sec (-rate 10000). Instead of
10000 requests/sec transmitted to each network sequentially when stagger is off enabling the option transmits at a rate
of 100/sec to each of the 100 networks simultaneously.
Value | Description |
on | Range staggering enabled |
off | Range staggering disabled |
|
-file | N/A | File containing a list of ranges in addition to any ranges entered via command line.
File is formatted as one range per line. Lines starting '#' are assumed to be comments and ignored.
Optional 'ID' field may be added prior to a range separated by comma or tab. ID field is subsequently returned in output.
# File formatted as ID,range
# Access Networks
Seattle,10.0.9.0/24
New York,10.1.18.0/24
# Corp
Internal HQ,10.5.0.0/16
Internal V6,2001:db8::1 - 2001:db8::f
www.myserver1.example
www.myserver2.example
www.myserver3.example
# External
IEA Website,www.iea-software.com
|
-key | Random | Overrides default key used to provide unique sequencing of outgoing ICMP packets. By default a key is selected from operating systems random source. If random is unavailable current time and process identifier is used. |
APing version 1 features
- Supports IPv4 and IPv6 networks
- Selectable human and machine readable output formats: text, XML, CSV, TSV, SQL
- Variety of range input formats: IP address, CIDR, address range and DNS sourced from CLI and flat file
- Plan precomputation offers predictable transmission rate and execution time while minimizing latency
- Stagger setting reduces effective request rate per network when pinging multiple network ranges
- Delta mode continuously monitors network ranges for change in host status
- Available at no charge for Windows 2000 - 2022, XP - 11 and Linux x64 platforms
Downloading instructions
Choose your platform to begin downloading APing.