Skip to content

Instantly share code, notes, and snippets.

@spddl
Created July 28, 2020 20:08
Show Gist options
  • Save spddl/ba2151fa518d1775532310ad110297aa to your computer and use it in GitHub Desktop.
Save spddl/ba2151fa518d1775532310ad110297aa to your computer and use it in GitHub Desktop.
use std::net::IpAddr;
// use winping::{Buffer, Pinger};
use winping::{Buffer, AsyncPinger};
// https://docs.rs/winping/0.10.0/winping/
fn main() {
let array: [String; 4] = [
String::from("8.8.8.8"),
String::from("185.199.111.153"),
String::from("192.168.178.25"),
String::from("44.226.36.141"),
];
// let mut pinger = Pinger::new().unwrap();
// pinger.set_timeout(2000);
// let mut buffer = Buffer::new();
// for x in &array {
// let addr = x.parse::<IpAddr>().expect("Could not parse IP Address");
// match pinger.send(addr, &mut buffer) {
// Ok(rtt) => println!("{}\tResponse time\t{} ms.", addr, rtt),
// Err(err) => println!("{}.", err),
// }
// }
let mut pinger = AsyncPinger::new();
pinger.set_timeout(2000);
let mut buffer = Buffer::new();
for x in &array {
let addr = x.parse::<IpAddr>().expect("Could not parse IP Address");
match pinger.send(addr, &mut buffer) {
Ok(rtt) => println!("{}\tResponse time\t{} ms.", addr, rtt),
Err(err) => println!("{}.", err),
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment