VPN Stuck at connecting

Hello,

I’ve run into some strange behavior with the macOS System Extension using a Packet Tunnel. The issue showed up after the device went to sleep while the VPN was running. When I woke the computer, the VPN tried to reconnect but never succeeded — it just stayed stuck in the “connecting” state.

I was able to turn the VPN off, but every attempt to turn it back on failed and got stuck at “connecting” again. Even removing the VPN configuration from Settings didn’t help. The only thing that worked was disabling the system extension completely.

While checking the logs, I noticed thousands of identical log messages appearing within just a few seconds:

nesessionmanager(562) deny(1) system-fsctl (_IO "h" 47)
17:11:52.481498+0200	NESMVPNSession[Primary Tunnel:Secure DNS: got On Demand start message from pid 5454	com.apple.networkextension
17:11:52.481568+0200	NESMVPNSession[Primary Tunnel:Secure DNS: got On Demand start message from pid 5454	com.apple.networkextension
17:11:52.481580+0200	NESMVPNSession[Primary Tunnel:Secure DNS: got On Demand start message from pid 5454	com.apple.networkextension
17:11:52.481587+0200	NESMVPNSession[Primary Tunnel:Secure DNS: got On Demand start message from pid 5454	com.apple.networkextension
17:11:52.481646+0200	NESMVPNSession[Primary Tunnel:Secure DNS: got On Demand start message from pid 5446	com.apple.networkextension
17:11:52.481664+0200	NESMVPNSession[Primary Tunnel:Secure DNS: got On Demand start message from pid 5446	com.apple.networkextension
17:11:52.481671+0200	NESMVPNSession[Primary Tunnel:Secure DNS: got On Demand start message from pid 5446	com.apple.networkextension
17:11:52.481676+0200	NESMVPNSession[Primary Tunnel:Secure DNS: got On Demand start message from pid 5446	com.apple.networkextension
17:11:52.481682+0200	NESMVPNSession[Primary Tunnel:Secure DNS: got On Demand start message from pid 5446	com.apple.networkextension
17:11:52.481687+0200	NESMVPNSession[Primary Tunnel:Secure DNS: got On Demand start message from pid 5446	com.apple.networkextension

After the burst of these repeated messages, I started seeing logs like the following:

17:11:52.481759+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Received a start command from Spotify Helper[69038]	com.apple.networkextension

17:11:52.481790+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Skip a start command from Spotify Helper[69038]: session in state connecting	com.apple.networkextension

17:11:52.481949+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Received a start command from Spotify Helper[69038]	com.apple.networkextension

17:11:52.481966+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Skip a start command from Spotify Helper[69038]: session in state connecting	com.apple.networkextension

17:11:52.481986+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Received a start command from Spotify Helper[69038]	com.apple.networkextension

17:11:52.481992+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Skip a start command from Spotify Helper[69038]: session in state connecting	com.apple.networkextension

17:11:52.482003+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Received a start command from Spotify Helper[69038]	com.apple.networkextension

17:11:52.482011+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Skip a start command from Spotify Helper[69038]: session in state connecting	com.apple.networkextension

17:11:52.482022+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Received a start command from Spotify Helper[69038]	com.apple.networkextension

17:11:52.482028+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Skip a start command from Spotify Helper[69038]: session in state connecting	com.apple.networkextension

17:11:52.482039+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Received a start command from Spotify Helper[69038]	com.apple.networkextension

17:11:52.482049+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Skip a start command from Spotify Helper[69038]: session in state connecting	com.apple.networkextension

17:11:52.482060+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Received a start command from Slack Helper[84828]	com.apple.networkextension

17:11:52.482069+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Skip a start command from Slack Helper[84828]: session in state connecting	com.apple.networkextension

17:11:52.482079+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Received a start command from sharingd[764]	com.apple.networkextension

17:11:52.482086+0200	NESMVPNSession[Primary Tunnel:Secure DNS: Skip a start command from sharingd[764]: session in state connecting	com.apple.networkextension

It is clear that the connection is in a loop of submitting request to start and then failing. This problem occured only after sleep on macOS 26.0 and 15.6.

This issue only occured after the system woke up from sleep. macOS 15.6 and 26.0.

Is this a known problem, and how should I go about troubleshooting or resolving it?

How reproducible is this? Does it happen every time you sleep with the VPN connection?

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Unfortunately, I’ve experienced this issue approximately only once a week over the past three weeks. I have not yet found what causes this, but only occured on sleep, where the macbook was off the power untouched for atleast 6 hours. I have not yet found repro steps.

I’ve experienced this issue approximately only once a week over the past three weeks.

Yeah, that makes it hard.

I recommend that you enable additional NE logging via the VPN (Network Extension) instructions on our Bug Reporting > Profiles and Logs page. Then, the next time you see this, run get-mobility-info and that should gather a bunch of relevant logging.

Are you seeing any crash reports generated when this happens?

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

VPN Stuck at connecting
 
 
Q