Hole punch process failing - prevents tunnel establishment and all connectivity #870

Closed
opened 2026-04-05 17:54:06 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @devarmada on 9/23/2025

Problem

Newt client connects via WebSocket but tunnel never establishes because hole punch process fails, leaving site.endpoint null and blocking WireGuard configuration delivery.

Environment

Pangolin Server: 1.10.2 in Podman on Debian VPS
Gerbil: 1.2.1 in Podman on Debian VPS
Newt Client: 1.5.0 on Raspberry Pi 4, Raspbian Bullseye (ARM64)
Network: Newt on local network 172.19.1.0/24, Pangolin on public VPS

Root Cause

Hole punch process fails → site.endpoint remains null → WireGuard config blocked → no tunnel

Flow:

  1. Newt connects via WebSocket
  2. Newt requests newt/wg/get-config
  3. Pangolin checks site.endpoint - it's null
  4. Returns early, no WireGuard config sent
  5. No tunnel established

Evidence

Pangolin logs - can't find endpoint

2025-09-23T10:05:32.524Z [warn]: Site 2 has no endpoint, skipping

Newt logs - can't get WireGuard config

Sep 23 12:05:50 dente newt[408]: INFO: SendMessageInterval timed out after 10 attempts for message type: newt/wg/get-config

Impact

• HTTP resources: 504 Gateway Timeout
• TCP resources: Non-functional
• All tunnel-dependent features broken
• Core Pangolin functionality unusable

Versions Tested

• Pangolin 1.10.2 + gerbil 1.2.1 + newt 1.5.0

The hole punch endpoint /api/v1/gerbil/update-hole-punch is never successfully called, preventing the site.endpoint field from being set, which blocks all tunnel functionality.

*Originally created by @devarmada on 9/23/2025* ## Problem Newt client connects via WebSocket but tunnel never establishes because hole punch process fails, leaving site.endpoint null and blocking WireGuard configuration delivery. ## Environment • **Pangolin Server:** 1.10.2 in Podman on Debian VPS • **Gerbil:** 1.2.1 in Podman on Debian VPS • **Newt Client:** 1.5.0 on Raspberry Pi 4, Raspbian Bullseye (ARM64) • **Network:** Newt on local network 172.19.1.0/24, Pangolin on public VPS ## Root Cause Hole punch process fails → site.endpoint remains null → WireGuard config blocked → no tunnel Flow: 1. Newt connects via WebSocket 2. Newt requests newt/wg/get-config 3. Pangolin checks site.endpoint - it's null 4. Returns early, no WireGuard config sent 5. No tunnel established ## Evidence # Pangolin logs - can't find endpoint `2025-09-23T10:05:32.524Z [warn]: Site 2 has no endpoint, skipping` # Newt logs - can't get WireGuard config `Sep 23 12:05:50 dente newt[408]: INFO: SendMessageInterval timed out after 10 attempts for message type: newt/wg/get-config` ## Impact • HTTP resources: 504 Gateway Timeout • TCP resources: Non-functional • All tunnel-dependent features broken • Core Pangolin functionality unusable ## Versions Tested • Pangolin 1.10.2 + gerbil 1.2.1 + newt 1.5.0 The hole punch endpoint `/api/v1/gerbil/update-hole-punch` is never successfully called, preventing the site.endpoint field from being set, which blocks all tunnel functionality.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/pangolin#870