Skip to main content

Testing Connectivity and Performance

After setting up your HyperPath network, it's important to verify everything is working correctly and measure your network performance. This guide covers various testing methods.

Basic Connectivity Tests

Start with these simple tests to ensure your nodes can communicate:

Test Node-to-Node Connectivity

# From any node, ping another node using its HyperNet IP
ping <NODE_IP_ADDRESS>

# Example
ping 10.0.0.2

Test Gateway Connectivity

If you've configured a gateway:

# Test connection to your gateway
ping <GATEWAY_IP>

# Test internet access through gateway
ping 8.8.8.8

# Verify DNS resolution
nslookup google.com

Check Your Public IP

To verify traffic is routing through your gateway:

# Check your public IP address
curl ifconfig.me

# Or use
wget -qO- https://ipinfo.io/ip

This should show the gateway's public IP, not your local IP.

Performance Testing

Internet Speed Testing

Using speedtest-cli:

# Install speedtest
sudo apt install speedtest-cli # Debian/Ubuntu
sudo yum install speedtest-cli # CentOS/RHEL
# or
pip install speedtest-cli

# Run basic speed test
speedtest

# Test to a specific server
speedtest --server <SERVER_ID>

# Simple output (just the numbers)
speedtest --simple

Using fast.com (Netflix speed test):

# Install fast-cli
npm install -g fast-cli

# Run test
fast

# Show upload speed too
fast -u

Node-to-Node Performance Testing

Using iperf3:

iperf3 is ideal for testing raw throughput between HyperPath nodes.

# Install iperf3
sudo apt install iperf3 # Debian/Ubuntu

Basic throughput test:

# On the receiving node (server mode)
iperf3 -s

# On the sending node (client mode)
iperf3 -c <SERVER_NODE_IP> -t 30

# Example output:
# [ ID] Interval Transfer Bitrate
# [ 5] 0.00-30.00 sec 2.80 GBytes 801 Mbits/sec

UDP testing (for latency-sensitive applications):

# UDP test at 100 Mbps
iperf3 -c <SERVER_NODE_IP> -u -b 100M -l 1200
danger

When running iPerf UDP tests, ensure your MTU (Maximum Transmission Unit) is set to 1250 or lower, as otherwise it will not work properly.

If performance is lower than expected:

  1. Check all interfaces are active:

    hyperpath status
  2. Verify bonding is enabled:

    • Check "Enable Bonding Support" in token configuration
    • Ensure useable interfaces are correctly configured
  3. Test each interface separately:

    # Temporarily disable other interfaces and test one at a time
  4. Check for network congestion:

    # Monitor interface statistics
    iftop -i <INTERFACE>
    # or
    nethogs

Congratulations on completing the HyperPath quick start guide! 🎉