Crate ping

Source
Expand description

Helpers to ping an IPv4 or IPv6 address by sending ICMP echo requests and waiting for ICMP echo replies.

Functionality in this crate relies on ICMP sockets, a kind of socket where each payload read/written contains ICMP headers.

As a starting point, see new_unicast_sink_and_stream, which is built on top of the other facilities in the crate and models pinging as sending an ICMP echo request whenever a value is sent to the sink, and a stream which yields an item for every echo reply received.

Structs§

PingData
Parameters of a ping request/reply.
PingSink
Sink for sending ping requests.
PingStream
Stream of received ping replies.

Enums§

PingError
Ping error.

Constants§

ICMP_HEADER_LEN
The number of bytes of an ICMP (v4 or v6) header.

Traits§

FuchsiaIpExt
Extension trait on crate::IpExt for Fuchsia-specific functionality.
IcmpSocket
Async ICMP socket.
IpExt
Trait for IP protocol versions.
TryFromSockAddr
Addresses which can be converted from socket2::SockAddr.

Functions§

new_icmp_socket
Create a new ICMP socket.
new_unicast_sink_and_stream
Create a ping sink and stream for pinging a unicast destination with the same body for every packet.