fix(companion): mesh VPN no longer blocks IPv4 + off-LAN connect via mesh ULA #108

Merged
lfg2025 merged 1 commits from fix/mesh-vpn-and-offlan-connect into main 2026-07-23 21:00:40 +00:00
Owner

Fixes both field failures from the 5G test: IPv6-only TUN blocked all IPv4 (missing allowFamily), and connect hard-failed on the scanned LAN IP instead of probing the mesh ULA. Served APK bumped to 0.5.2/vc22.

🤖 Generated with Claude Code

Fixes both field failures from the 5G test: IPv6-only TUN blocked all IPv4 (missing allowFamily), and connect hard-failed on the scanned LAN IP instead of probing the mesh ULA. Served APK bumped to 0.5.2/vc22. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
lfg2025 added 1 commit 2026-07-23 21:00:33 +00:00
Field test on 5G (Framework PT): pairing scanned fine but connect
hard-failed on the scanned LAN IP, and enabling the mesh VPN killed the
phone's internet.

- ArchyVpnService: the TUN is IPv6-only, and Android blocks every
  address family the VPN holds no address for — allowFamily(AF_INET)
  (+ allowBypass) so normal traffic flows while only fd00::/8 is routed.
- ServerConnectScreen.connect(): when the LAN address doesn't answer and
  the entry carries a mesh ULA, bring the tunnel up (autoStartIfReady)
  and probe the ULA with retries before reporting failure — the scanned
  IP is a dial hint, the npub/ULA is the identity (npub-first contract).
- Served companion APK refreshed as 0.5.2 (vc22); handoff doc updated.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
lfg2025 merged commit a865306488 into main 2026-07-23 21:00:40 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: lfg2025/archy#108
No description provided.