Skip to content

Connection error on iPhone #50

Closed
Closed

Description

@uenz

Describe the Bug

When connecting trough LTE connection the pangolin client shows a popup with the following text when moving the slider away disconnected. Disconnected changes to Registering. After a while the following error appears:

Connection Error
Unable to coordinate client P2P connection. Please ensure your client can reach the server on UDP Port 21820 and try to registering again.

With WIFI connection the client connects as expected.

Environment

  • OS Type & Version: IOS26.5
  • Pangolin Version: 1.19.2
  • Edition (Community or Enterprise): Community
  • Gerbil Version: 1.4.2
  • Traefik Version: 3.4.0
  • Newt Version: 1.13.0
  • Client Version: Pangolin App 0.9.0 (23)

To Reproduce

Try to connect via mobile data and telekom.de as provider.

Expected Behavior

Connection is also possible via mobile data transfer.

Activity

  1. uenz commented on Jul 24, 2026

    @uenz
    Author

    Described error also appears with Pangolin App 0.9.0 (23) see here from the logs:

    default	20:35:01.792267+0200	nesessionmanager	NESMVPNSession[Primary Tunnel:Pangolin:D7908504-CF80-4C64-9250-5744DD947998:(null)] in state NESMVPNSessionStateStarting: plugin NEVPNTunnelPlugin(net.pangolin.Pangolin.PangoliniOS[packet-tunnel][inactive]) started with PID 41765 error (null)
    default	20:35:01.792350+0200	neagent	[Host net.pangolin.Pangolin.PangoliniOS.PacketTunneliOS]: Starting with options 0x660c407c0
    
    default	20:35:05.654776+0200	symptomsd	Data Usage for net.pangolin.Pangolin.PangoliniOS.PacketTunneliOS on flow 1693173 - WiFi in/out: 127220/93671, WiFi delta_in/delta_out: 0/0, Cell in/out: 37568/39876, Cell delta_in/delta_out: 0/813, RNF: 0, subscriber tag: 0, total duration: 3.476
    error	20:35:06.197196+0200	SpringBoard	[<_UIKeyboardArbiterClientHandle: 0x784664620; [app<net.pangolin.Pangolin.PangoliniOS(7145A0C5-A516-40F2-A852-9A399B60122E)>:41627] <<UIKBArbiterClientFocusContext: 0x7828253c0; contextID = 6307dfcf; sceneIdentity = com.apple.frontboard.systemappservices/FBSceneManager:sceneID%3Anet.pangolin.Pangolin.PangoliniOS-default >>; hosting PIDs {(
    )}; level 0.000000; active NO [wants NO]; suppression 0; iav 0.000000; on screen NO; isAcquiringFocus: YES>] Acquiring focus timer elapsed, clearing acquiring focus state
    
    default	20:35:34.522598+0200	SpringBoard	[0x784d9da40:(FBSceneManager):sceneID:net.pangolin.Pangolin.PangoliniOS-default] Sending scene action [Forward Event][0xc0f6] to process 0x791502580 (watchdog: 30.00s)
    error	20:35:34.553224+0200	SpringBoard	Advisor: No handle found for currently focused PID: 41627; sceneIdentity: com.apple.frontboard.systemappservices/FBSceneManager:sceneID%3Anet.pangolin.Pangolin.PangoliniOS-default
    
    default	20:35:35.835939+0200	SpringBoard	Verify background audio activity for net.pangolin.Pangolin.PangoliniOS, Recording: 0
    error	20:35:36.930293+0200	PacketTunneliOS	Olm error (code: HOLEPUNCH_MISSING): Unable to coordinate client P2P connection. Please ensure your client can reach the server on UDP port 21820 and try registering again.
    default	20:35:37.040163+0200	symptomsd	Data Usage for net.pangolin.Pangolin.PangoliniOS.PacketTunneliOS on flow 1693173 - WiFi in/out: 127220/93671, WiFi delta_in/delta_out: 0/0, Cell in/out: 37876/52884, 
    
    default	20:36:10.140561+0200	audiomxd	Received state update for 41627 (app<net.pangolin.Pangolin.PangoliniOS(7145A0C5-A516-40F2-A852-9A399B60122E)>, running-active-NotVisible
    error	20:36:10.149559+0200	PangoliniOS	Error received from socket before registration: HOLEPUNCH_MISSING - Unable to coordinate client P2P connection. Please ensure your client can reach the server on UDP port 21820 and try registering again.
    default	20:36:10.149739+0200	SpringBoard	[app<net.pangolin.Pangolin.PangoliniOS>:41627] Setting process task state to: Running
    
    default	20:36:13.634915+0200	SpringBoard	Front display did change: <SBApplication: 0x784f35d00; net.pangolin.Pangolin.PangoliniOS>
    error	20:36:15.566781+0200	neagent	__plugin endUsing for '311C3C13-3B16-4720-99E2-BEBA7E038827' returned error: [u CD357824-7550-48EE-9B03-805282A1E782:m 1A576BEC-413C-4CFE-A5C7-0AB0C2B22EB3] [net.pangolin.Pangolin.PangoliniOS.PacketTunneliOS(0.9.0)] endUsingRequest: called with unknown/expired request [F0B6FD47-C7D0-4B8D-9E9C-19B9A77A0A8F]
    default	20:36:16.360480+0200	PangoliniOS	sceneOfRecord: sceneID: sceneID:net.pangolin.Pangolin.PangoliniOS-default  persistentID: 3C7D1143-BED2-4F49-B562-B686BBA9311E
    
    
  2. miloschwartz commented on Sep 30, 2026

    @miloschwartz
    Member

    Make sure:

    1. udp/21820 and udp/51820 are both open and accessible on the Pangolin server.
    2. The network of the site has full outbound TCP and UDP.
    3. The network of the client has full outbound TCP and UDP.

    It's almost always one of these.

  3. uenz commented on Sep 30, 2026

    @uenz
    Author

    When you want to use pangolin, then option 3 is often not under your control. Wenn you have to use networks where these ports are blocked it would be great if these ports were configurable in the app/ in the server gui.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions