#ping #icmp #echo #icmpv6 #icmpv4

ekko

Ekko is a simple and light utility for sending echo requests

8 releases (4 breaking)

0.7.3 May 14, 2023
0.7.2 Jan 22, 2022
0.7.1 Dec 6, 2021
0.7.0 Jun 10, 2021
0.2.0 Oct 9, 2020

#1214 in Network programming

MIT license

49KB
1K SLoC

Ekko - Echo Request Utility

Echo Request Utility

dependency status Documentation License


Ekko aims to be a light utility for sending echo requests; currently in its early stages.

Usage

To use ekko, add this to your Cargo.toml:

[dependencies]
ekko = "0.7.3"

Example

The following example will trace the route to the specified destination.

use ekko::{ 

    EkkoResponse,
    EkkoError,
    Ekko,
};

fn main() -> Result<(), EkkoError> {
    let sender = Ekko::with_target([8, 8, 8, 8])?;

    for hops in 0..32 {
        let responses = sender.send_range(0..hops)?;
        for ekko in responses.iter() {
            match ekko {

                EkkoResponse::Destination(_) => {
                    for ekko in responses.iter() {
                        println!("{ekko:?}")
                    }
    
                    return Ok(()) 
                }

                _ => continue
            }
        }
    }

    Ok(())
}

Contributing

All contributions are welcome, don't hesitate to open an issue if something is missing!

License

MIT

Dependencies

~0.8–8MB
~63K SLoC