guardianproject / orbot-apple

Orbot VPN app for iOS
MIT License
186 stars 34 forks source link

Orbot stops itself after 60s when connecting #77

Closed golfvoyager1 closed 10 months ago

golfvoyager1 commented 10 months ago

iPhone 13 IOS 16.6. Orbot IOS version 1.6.3. Snowflake original is used.

After clearing TOR cache, Orbots can rarely establish a connection because it stops itself 60 seconds after Start button is clicked. When it stops, [notice] {GENERAL} Interrupt: exiting cleanly. appears in the log (and I certainly did not touch the Stop button). Usually bootstrap stuck at 50%. But I think if given more time, it can establish a connection because snowflake works. Sometimes retrying many many times works.

Also, I googled. There's a "new 60s timer when instantiating PacketTunnelProvider" in IOS 16 [1]. I guess it may be relevant because the description in the thread matches this behavior.

Please let me know if more info is needed.

[1] https://developer.apple.com/forums/thread/731820

tladesignz commented 10 months ago

Uuuuh, nice! Thank you very much for that link!

Unfortunately, a perfect storm gathered around Orbot, it seems:

So unfortunately, there's no good quick fix for you, besides these measures:

:-/

I'll do something about the timer, though. That doesn't buy us much, but the code should definitely handle that situation. Next week!

tladesignz commented 10 months ago

I could add some workarounds and improvements thanks to your hint.

A Snowflake connection should be way more easier to achieve again. Version 1.6.4 containing the fixes is underway.

I'll want to give this some more time in TestFlight (public beta) again compared to the recent emergency releases, so please join here, if you don't want to wait: https://orbot.app/en/download/

Unfortunately, Snowflake is a little more brittle then other methods, due to its design with a pool of voluntary helpers. It is also still under constant development as the network of helpers grows bigger and it is getting heavier usage.

Sorry. Harder enemies make the more difficult approaches necessary. :-/