Skip to content

feat: listen on all interfaces, hotspot sharing for iOS/laptop#483

Merged
therealaleph merged 1 commit intotherealaleph:mainfrom
yyoyoian-pixel:feat/listen-all-interfaces
Apr 29, 2026
Merged

feat: listen on all interfaces, hotspot sharing for iOS/laptop#483
therealaleph merged 1 commit intotherealaleph:mainfrom
yyoyoian-pixel:feat/listen-all-interfaces

Conversation

@yyoyoian-pixel
Copy link
Copy Markdown
Contributor

@yyoyoian-pixel yyoyoian-pixel commented Apr 29, 2026

Closes #481

Summary

  • Change default listen_host from 127.0.0.1 to 0.0.0.0
  • Add "Sharing via hotspot" section to README

Why

Users often have one Android phone running the tunnel and want to share the connection with an iPhone, iPad, or laptop. With 127.0.0.1 the proxy only accepts local connections. With 0.0.0.0 any device on the hotspot can use it.

How it works

  1. Android phone: enable hotspot + start the app
  2. Other device: connect to hotspot WiFi
  3. Set proxy to 192.168.43.1:8080 (HTTP) or :1081 (SOCKS5)

For full device-wide coverage on iOS, use Shadowrocket or Potatso — they create a local VPN that routes all traffic through the SOCKS5 proxy on the Android phone.

Test plan

  • Existing VPN mode still works (tun2proxy binds to the proxy regardless of listen_host)
  • Proxy accessible from another device on the same network
  • Old configs with explicit "listen_host": "127.0.0.1" still honored (not overwritten)

🤖 Generated with Claude Code

Change default `listen_host` from `127.0.0.1` to `0.0.0.0` so the
proxy is reachable from other devices on the same network. This
enables hotspot sharing: run the app on Android with hotspot enabled,
and an iPhone/iPad/laptop on the same WiFi can use the proxy by
pointing at the Android's hotspot IP (192.168.43.1:8080 for HTTP,
:1081 for SOCKS5).

On iOS, apps like Shadowrocket or Potatso can create a local VPN
that routes all device traffic through the SOCKS5 proxy — giving
full tunnel coverage without installing the app on the iOS device.

Added a "Sharing via hotspot" section to README with setup steps
for iOS, macOS, and Windows.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@github-actions github-actions Bot added the type: feature feat: PR — auto-applied by release-drafter label Apr 29, 2026
@therealaleph therealaleph merged commit d959306 into therealaleph:main Apr 29, 2026
2 checks passed
therealaleph added a commit that referenced this pull request Apr 29, 2026
…p + hotspot sharing

Three substantive PRs landed for this release plus an Iran-safe DoH default:

- #488 by @dazzling-no-more (with credit to @patterniha): fronting_groups
  config field generalizes the Google-edge SNI-rewrite trick to any
  multi-tenant CDN edge (Vercel, Fastly, etc.). Renames `mode = "google_only"`
  → `mode = "direct"` with a deprecated alias keeping existing configs working.
  This is the v1.9.0 headline — new top-level config field + public mode-string
  rename are minor-bump territory. xmux moves to v1.10.0.

- #494 by @dazzling-no-more: edge-cache DNS at Apps Script (CodeFull.gs)
  using CacheService. udp_open / port=53 ops served from cache or DoH
  fallback chain (Cloudflare → Google → Quad9). Cache hits drop typical
  first-hop DNS latency from 600-1200ms to 200-400ms. Default-on, opt-out
  via ENABLE_EDGE_DNS_CACHE; every failure mode falls through to existing
  tunnel-node forward path (zero regression).

- #483 by @yyoyoian-pixel: default listen_host from 127.0.0.1 to 0.0.0.0
  so an Android phone running the tunnel + an iPhone/laptop on the same
  hotspot can use it as proxy. Old configs with explicit 127.0.0.1 are
  honored (not overwritten).

Plus: default `tunnel_doh: true` (flipped from false in v1.8.x) per #468
— Iran ISPs filter direct connections to dns.google, chrome.cloudflare-dns.com,
and other pinned DoH hosts. The bypass-on default silently broke DNS for
the dominant Iranian userbase. The safe default keeps DoH inside the
tunnel; non-Iran users can opt back into the bypass for the latency win.
Backwards-compatible — any config with explicit tunnel_doh keeps its setting.

169 mhrv-rs lib tests + 33 tunnel-node tests + 11 edge-DNS JS tests all
passing. Clean release + UI builds.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: feature feat: PR — auto-applied by release-drafter

Projects

None yet

Development

Successfully merging this pull request may close these issues.

اشتراک گذاری اینترنت این برنامه ار تریق وایفای یا پروکسی امکان دارد ؟

2 participants