How to determine if you have an internet connection in R

The curl package has a function has_internet which tests by performing a nslookup:

curl::has_internet
## function(){
##    !is.null(nslookup("google.com", error = FALSE))
## }

Testing DNS is faster and may be more reliable than retrieving a URL because the latter might fail for unrelated reasons (e.g. firewall, server down, etc).

Leave a Comment