Ping validator
Running Pinger allows the validator to share leader data transmission times with the network.
Why Use Pinger?
When an RPC receives a transaction message to be included in a block, it must forward the message to the leader. Fast data transmission to the leader is crucial for network efficiency and consensus speed.

Monitoring your validator's ping times ensures it meets leader schedule performance requirements.
Pinger Dashboard

Ping times measure how long it takes for your validator to communicate with the current leader. Since the leader changes every four slots (1.6s), ping time variance (typically 500–3000ms) depends on the distance to the constantly switching leader.
Installation
Configure Keypair
solana config set -k ~/.config/solana/id.json
Ensure the keypair has funds, as a transaction is sent with each ping.
Open Firewall Port (If Enabled)
Enable UFW if it is not already enabled:
sudo ufw enable
Allow traffic on port 3334:
sudo ufw allow 3334/tcp
Install and Run Pinger
# Update and install dependencies
sudo apt update
sudo apt install -y nodejs jq
# Clone the Pinger repository
git clone https://github.com/x1-labs/x1-pinger/
cd x1-pinger
npm install
# Set up the system service
cp system/x1-pinger.service /etc/systemd/system/x1-pinger.service
# If installed in a different directory, update the service file accordingly
# nano /etc/systemd/system/x1-pinger.service
# Enable and start the service
sudo systemctl enable --now x1-pinger
Verify Installation
Check the service status:
sudo systemctl status x1-pinger
View logs to ensure correct operation:
journalctl -u x1-pinger -f

Once running, your validator will continuously measure and share leader ping times.
Managing Pinger
Stop the Pinger
sudo systemctl stop x1-pinger
Retrieve Ping Metrics
curl http://localhost:3334/ping_times | jq

You can also check your ping times on x1val.online:
Last updated