Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

zappem.net/pub/net/fastping

Package Overview
Dependencies
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

zappem.net/pub/net/fastping

Go Modules
Version
v0.5.2
Version published
Created
Source

fastping

fastping is a Go language ICMP ping library, inspired by the AnyEvent::FastPing Perl module, for quickly sending ICMP ECHO REQUEST packets. Original Perl module is available at http://search.cpan.org/~mlehmann/AnyEvent-FastPing-2.01/

All original functions haven't been implemented yet.

Go Reference

Installation

Install and update with go get zappem.net/pub/net/fastping.

Examples

Import this package and write

p := fastping.NewPinger()
ra, err := net.ResolveIPAddr("ip4:icmp", os.Args[1])
if err != nil {
	fmt.Println(err)
	os.Exit(1)
}
p.AddIPAddr(ra)
p.OnRecv = func(addr *net.IPAddr, rtt time.Duration) {
	fmt.Printf("IP Addr: %s receive, RTT: %v\n", addr.String(), rtt)
}
p.OnIdle = func() {
	fmt.Println("finish")
}
err = p.Run()
if err != nil {
	fmt.Println(err)
}

The example sends an ICMP packet and waits for a response. If it receives a response, it calls the "receive" callback. After that, once MaxRTT time has passed, it calls the "idle" callback. For more details, refer to the godoc, and if you need more examples, please see "cmd/ping/ping.go".

Caution This package implements ICMP ping using both raw socket and UDP. If your program needs to use this package in raw socket mode, it needs to be privileged. Either run it as a root user or, under Linux, with the CAP_NET_RAW capability enabled. For that latter case, try the following:

$ go build cmd/ping/ping.go
$ sudo setcap cap_net_raw=ep ./ping
$ ./ping localhost

License

fastping is under MIT License. See the LICENSE file for details.

History

This package was originally (2024) cloned from https://github.com/tatsushid/go-fastping.

FAQs

Package last updated on 17 Jan 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts