OPING(8) | liboping | OPING(8) |
oping - send ICMP ECHO_REQUEST to network hosts
oping [-4 | -6] [-c count] [-i interval] host [host [host ...]]
oping [-4 | -6] [-c count] [-i interval] -f filename
noping [-4 | -6] [-c count] [-i interval] host [host [host ...]]
noping [-4 | -6] [-c count] [-i interval] -f filename
oping uses ICMPv4 or ICMPv6 ECHO_REQUEST packets to measure a hosts reachability and the network latency. In contrast to the original ping(8) utility oping can send ICMP packets to multiple hosts in parallel and wait for all ECHO_RESPONSE packets to arrive. In contrast to the fping utility (URL is listed in "SEE ALSO") oping can use both, IPv4 and IPv6 transparently and side by side.
noping is an ncurses-based front-end to liboping which displays ping statistics online and highlights aberrant round-trip times if the terminal supports colors.
If oping is installed with the SetUID-bit, it will set the effective UID to the real UID before opening the file. In the special (but common) case that oping is owned by the super-user (UID 0), this means that privileges are temporarily dropped before opening the file, in order to prevent users from reading arbitrary files on the system.
If your system doesn't provide saved set-user IDs (this was an optional feature before POSIX 2001), the behavior is different because it is not possible to temporarily drop privileges. The alternative behavior is: If the real user ID (as returned by getuid(2)) and the effective user ID (as returned by geteuid(2)) differ, the only argument allowed for this option is "-" (i.e. standard input).
The currently recommended method is Differentiated Services which is used in IPv6 headers as well. There are shortcuts for various predefined per-hop behaviors (PHBs):
The old definition of the same bits in the IPv4 header was as Type of Service (ToS) field, specified in RFC 1349. It defined four possible values which have appropriate aliases. Please note that this use of the bits is deprecated and the meaning is limited to IPv4!
Alternatively, you can also specify the byte manually. You can use either a decimal number (0-255), a hexadecimal number (0x00-0xff) or an octal number (00-0377) using the usual "0x" and "0" prefixes for hexadecimal and octal respectively.
The printed lines will contain information about the QoS field of received packets if either a non-standard QoS setting was used on outgoing packets or if the QoS byte of incoming packets is not zero. In other words, the QoS information is omitted if both, the outgoing and the incoming QoS bytes are zero. The received byte is always interpreted as Differentiated Services Code Point (DSCP) and Explicit Congestion Notification (ECN), even if the deprecated Type of Service (ToS) aliases were used to specify the bits of outgoing packets.
If your terminal supports unicode and colors, they are used to improve the precision of the data shown: a green box is drawn for round-trip times up to one third of the configured timeout, the height representing the RTT. Longer RTTs will start to fill the box yellow (with a green background) and then red (with a yellow background). Lost packages are drawn as a bold red explamation mark.
The box is sized so it contains 50% of the replies. The vertical line shows the median. The whiskers are sized to contain 95% of the replies -- 2.5% below the whiskers and 2.5% above.
|----------[#####|##########]--------------------------------------------| ^ ^ ^ ^ ^ 2.5% 25% 50% 75% 97.5%
The height of the graph is scaled so that the most-used buckets vertically fills the line. The buckets are colored green up to and including the 80th percentile, yellow up to and including the 95th percentile and red for the remainder.
This relies on the terminal bell to be functional. To enable the terminal bell, use the following instructions.
XTerm*visualBell: false
modprobe pcspkr
xset b on; xset b 100
load-sample-lazy x11-bell /usr/share/sounds/freedesktop/stereo/complete.oga load-module module-x11-bell sample=x11-bell
The exit status will indicate the number of hosts with more than percent packets lost, up to a number of 255 failing hosts.
If supported by the terminal, noping will highlight the round-trip times (RTT) using the colors green, yellow and red. Green signals RTTs that are in the "expected" range, yellow marks moderately unusual times and times that differ a lot from the expected value are printed in red.
The information used to categorize round-trip times is the percentile. RTTs in the 80th percentile are considered to be "normal" and are printed in green. RTTs within the 95th percentile are considered "moderately unusual" and are printed in yellow. RTTs above that are considered to be "unusual" and are printed in red.
When running noping, the type of graph being displayed can be changed by using the g key. The height of the graph boxes can also be increased and decreased with + and - keys. A new host can be added at any time with the a key.
ping(8), <http://fping.org/>, liboping(3)
oping and noping are licensed under the GPL 2. No other version of the license is applicable.
liboping is written by Florian "octo" Forster <ff at octo.it>. Its homepage can be found at <http://noping.cc/>.
Copyright (c) 2006-2017 by Florian "octo" Forster.
2022-10-20 | 1.10.0 |