Check if a remote computer is up. It can either just call the system ping command, or check a specified TCP port.
The pingr package is a simple utility that can be used to check
if a remote machine is running, by sending network packets to it.
It is similar to the command line ping
program, in fact for ICMP
packages it just calls ping
.
The ping()
function does ICMP ping, via the system's ping
utility:
library(pingr)ping("127.0.0.1")
#> [1] 0.055 0.061 0.123
By default it sends three packets and measures the time it receives and answer. It waits between sending out the packets, so if you want a really quick check, you can just send a single packet:
ping("127.0.0.1", count = 1)
#> [1] 0.046
If a machine is down (or it does not exist), then NA
is returned instead
of the roundtrip time:
ping("192.0.2.1", count = 1)
#> [1] NA
With TCP ping we can check if a machine is listeing on a TCP port, e.g. if google's search web server is up and running:
ping_port("www.google.com", port = 80, count = 1)
#> [1] 78.884