gping
Ping with a graph visualization.
Official WebsiteFeatures
Graph VisualizationMultiple HostsColor OutputWatch Mode
Replaces
pingInstallation
Homebrew
brew install gpingPacman (Arch)
pacman -S gpingCargo (Rust)
cargo install gpingWhy Use gping?
gping is a modern alternative to the traditional ping command that visualizes network latency in real-time graphs. It makes it easy to spot network issues and latency spikes at a glance.
Visual Graphs
Real-time graph visualization shows latency trends and spikes instantly without data tables.
Multiple Hosts
Monitor multiple hosts simultaneously in a single view for easy comparison.
Real-time Updates
Smooth animations show network conditions as they happen without lag.
Easy Pattern Detection
Spot periodic spikes, connection issues, and performance degradation patterns easily.
Installation
macOS
macOS Installation
# Using Homebrew
brew install gpingLinux
Linux Installation
# Using Cargo
cargo install gping
# On Arch Linux
pacman -S gpingWindows
Windows Installation
# Using Cargo
cargo install gping
# Or with Scoop
scoop install gpingVerify Installation
Verification
# Check version and confirm installation
gping --version
# Get help
gping --helpBasic Usage
Ping a Single Host
Single Host Ping
# Ping a website
gping google.com
# Ping a specific IP address
gping 8.8.8.8
# Ping localhost
gping localhost
# Ping with domain
gping example.comMonitor Multiple Hosts
Multiple Hosts
# Ping multiple hosts simultaneously
gping google.com cloudflare.com github.com
# Monitor local services
gping localhost 192.168.1.1 example.com
# Compare different CDNs
gping cdn1.example.com cdn2.example.com cdn3.example.comExpected Output
╔════════════════════════════════════════════════════════╗
║ google.com ║
╠════════════════════════════════════════════════════════╣
│ █ │
│ ███ │
│ █████ │
│ ███████ 35.2ms │
╚════════════════════════════════════════════════════════╝
The graph shows latency over time with real-time updates.
Common Options
| Option | Description | Example |
|---|---|---|
-c, --count | Number of pings to send before exiting | gping -c 10 google.com |
-i, --interval | Interval between pings in milliseconds | gping -i 200 google.com |
-w, --timeout | Timeout for each ping in seconds | gping -w 2 slow.server.com |
-b, --buffer | Buffer size for ICMP packets (bytes) | gping -b 56 google.com |
--simple-graphics | Use simple ASCII graphics | gping --simple-graphics google.com |
-h, --help | Show help message | gping --help |
Practical Examples
Network Diagnostics
Network Monitoring
# Monitor internet stability
gping 1.1.1.1 8.8.8.8 cloudflare.com
# Check local network
gping 192.168.1.1 192.168.1.254
# Compare latency to different regions
gping us.example.com eu.example.com asia.example.com
# Test VPN connection quality
gping vpn.server.com google.comPerformance Testing
Performance Tests
# Limited number of pings
gping -c 5 api.example.com
# Faster ping interval (200ms)
gping -i 200 database.server.com
# Slower ping with longer timeout
gping -i 1000 -w 5 slow-server.com
# Large packet size (affects latency)
gping -b 1000 heavy-server.comContinuous Monitoring
Continuous Monitoring
# Run indefinitely (Ctrl+C to stop)
gping google.com
# Monitor service availability
gping -i 5000 production-api.example.com
# Track DNS resolution time
gping mydomain.com
# Compare response times
gping api1.example.com api2.example.com api3.example.comTroubleshooting
Network Troubleshooting
# Investigate connection issues
gping -w 3 problematic-host.com
# Monitor gateway connectivity
gping 192.168.1.1
# Test DNS server responsiveness
gping 8.8.8.8 1.1.1.1
# Check ISP latency
gping 8.8.8.8Tips and Best Practices
Keyboard Controls
Interactive Controls
# Interactive controls while running:
q - Quit gping
Up/Down - Navigate between hosts (multiple hosts mode)
Ctrl+C - Stop immediately
# Monitor a host and navigate between pings
gping google.com cloudflare.com github.com
# Then use Up/Down arrows to switch focusShell Aliases
Useful Aliases
# ~/.bashrc or ~/.zshrc
# Quick network status check
alias netcheck='gping 8.8.8.8 1.1.1.1'
# Monitor API
alias apiping='gping api.example.com'
# Check multiple services
alias servping='gping google.com github.com cloudflare.com'
# Quick internet test
alias itest='gping google.com'Advanced Usage
Advanced Techniques
# Capture to file (limited pings)
gping -c 100 example.com > ping_results.txt 2>&1
# Use in scripts
for host in server1.com server2.com server3.com; do
gping -c 5 "$host"
echo "---"
done
# Monitor with custom interval
gping -i 500 critical-api.example.com
# ASCII-only graphics for remote terminals
gping --simple-graphics slow-connection.comgping vs Traditional Ping
| Feature | ping | gping |
|---|---|---|
| Visual Graph | - | Real-time graph |
| Multiple Hosts | One at a time | Simultaneous |
| Trend Detection | Manual inspection | Visual spikes |
| Latency Pattern | Text output | Graphical |
| Installation | Built-in | One-time install |
| Learning Curve | Familiar | Very easy |
Tips
- •Monitoring multiple hosts simultaneously makes it easy to compare latency differences
- •Use
-cflag to stop after a certain number of pings instead of running forever - •Graph visualization makes periodic issues and network instability obvious
- •Lower
-ivalues (interval) update the graph more frequently for responsive monitoring - •Use
--simple-graphicswhen working over SSH or slow terminals - •Perfect for DevOps monitoring - visualize service health and network conditions quickly