Skip to content

[Issue][Podman] ICMP ping connectivity check fails in rootless Podman containers (pasta networking) #2638

@jollySleeper

Description

@jollySleeper

Description

Starting from v1.13.0, speedtest-tracker uses ICMP ping for internet connectivity checks before running speedtests. However, this fails in rootless Podman containers using pasta/slirp4netns networking, which blocks ICMP traffic even with NET_RAW capability.

Root Cause

Rootless Podman uses userspace networking (pasta/slirp4netns) which does not forward ICMP ping packets. While NET_RAW capability allows raw socket creation, the pasta network layer blocks ICMP traffic for security reasons.

Verified that:

  • Host can ping successfully
  • Container has NET_RAW capability
  • Container can make HTTP requests (curl works)
  • Container ping fails with 100% packet loss

Steps to Reproduce

  1. Run speedtest-tracker v1.13.0+ in rootless Podman container
  2. Wait for scheduled speedtest or trigger manual test
  3. Check logs - ping check fails with "unknownError" and 100% packet loss

Environment

  • Container Runtime: Podman (rootless)
  • Networking: pasta/slirp4netns (default for rootless)
  • Speedtest-Tracker: v1.13.0+
  • OS: Linux (tested on Debian/Ubuntu)

Current Workaround

Downgrade to v1.12.4 which uses HTTP-based connectivity checks instead of ICMP ping:

IMAGE_SOURCE="lscr.io/linuxserver/speedtest-tracker:1.12.4"

Expected Behavior

Speedtest-tracker should either:

  1. Detect ICMP unavailability and fallback to HTTP checks
  2. Document that v1.13.0+ requires host networking for rootless environments
  3. Provide configuration to disable ping checks

Logs

[2026-01-08 06:52:29] production.INFO: Pinged hostname {"host":"icanhazip.com","data":{"success":false,"error":"unknownError","host":"icanhazip.com","packet_loss_percentage":100,"packets_transmitted":null,"packets_received":null,"options":{"timeout_in_seconds":5,"interval":1.0,"packet_size_in_bytes":56,"ttl":64},"timings":{"minimum_time_in_ms":null,"maximum_time_in_ms":null,"average_time_in_ms":null,"standard_deviation_time_in_ms":null},"raw_output":"PING icanhazip.com (104.16.185.241) 56(84) bytes of data.\n\n--- icanhazip.com ping statistics ---\n1 packets transmitted, 0 received, 100% packet loss, time 0ms\n"}}

Related Issues

This affects users running speedtest-tracker in rootless Podman environments (Docker users with privileged containers are unaffected).

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions