Initial commit: combine nas_tool, nas_webdav, sync-utils
This commit is contained in:
@@ -0,0 +1,153 @@
|
||||
# Shadowrocket Correct Setup - Working with Tailscale
|
||||
|
||||
## Understanding Shadowrocket Architecture
|
||||
|
||||
Shadowrocket works as a **local proxy server** on your iPhone:
|
||||
- Apps connect to Shadowrocket's local proxy (127.0.0.1:80)
|
||||
- Shadowrocket forwards traffic to your configured server (server2)
|
||||
- This way it doesn't need VPN mode!
|
||||
|
||||
## Step-by-Step Setup
|
||||
|
||||
### Step 1: Add Server2 as a Server (NOT in Proxy Settings)
|
||||
|
||||
1. Open Shadowrocket app
|
||||
2. Go to the **"Home"** tab (house icon at bottom)
|
||||
3. Tap the **"+"** button in the top right corner
|
||||
4. Select **"HTTP"** or **"HTTPS"**
|
||||
5. Fill in:
|
||||
- **Remark:** `server2-proxy`
|
||||
- **Address:** `100.70.115.1` (your Tailscale IP)
|
||||
- **Port:** `7890` (HTTP) or `7892` (Mixed)
|
||||
- **Username:** (leave empty)
|
||||
- **Password:** (leave empty)
|
||||
6. Tap **"Done"**
|
||||
|
||||
### Step 2: Enable the Server
|
||||
|
||||
1. Go back to **"Home"** tab
|
||||
2. You should see `server2-proxy` in the server list
|
||||
3. Tap on it to select it
|
||||
4. Toggle the switch at the top to **ON**
|
||||
|
||||
### Step 3: Configure Proxy Settings (What You Saw)
|
||||
|
||||
The "Proxy Settings" you saw (127.0.0.1:80) is Shadowrocket's **local proxy** that apps connect to. You can configure it:
|
||||
|
||||
1. Go to **"Settings"** tab (gear icon)
|
||||
2. Tap **"Proxy"**
|
||||
3. In **"Proxy Settings"** section:
|
||||
- **Proxy Type:** HTTP (or leave as is)
|
||||
- **Proxy Port:** `80` (or any port, this is local)
|
||||
- **Proxy Address:** `127.0.0.1` (localhost - this is correct)
|
||||
|
||||
**Important:** These settings are for Shadowrocket's LOCAL proxy. Your apps will connect to this, and Shadowrocket will forward to server2.
|
||||
|
||||
### Step 4: Configure Apps to Use Shadowrocket's Local Proxy
|
||||
|
||||
Now you need to tell your apps to use Shadowrocket's local proxy:
|
||||
|
||||
**Option A: System-Wide (Limited)**
|
||||
1. Settings → Wi-Fi
|
||||
2. Tap ⓘ next to your Wi-Fi
|
||||
3. Scroll to **HTTP Proxy**
|
||||
4. Select **Manual**
|
||||
5. Enter:
|
||||
- **Server:** `127.0.0.1` (or `localhost`)
|
||||
- **Port:** `80` (or whatever you set in Proxy Settings)
|
||||
6. Save
|
||||
|
||||
**Option B: Use Shadowrocket's VPN Mode (But Configured Correctly)**
|
||||
|
||||
Actually, Shadowrocket's "VPN mode" is how it intercepts traffic. Here's the trick:
|
||||
|
||||
1. In Shadowrocket **"Home"** tab
|
||||
2. Make sure your `server2-proxy` is selected
|
||||
3. Toggle the switch ON
|
||||
4. **This will create a VPN connection** BUT it's Shadowrocket's VPN, not a conflict
|
||||
5. Shadowrocket's VPN intercepts traffic and routes it through server2
|
||||
|
||||
**The key:** Shadowrocket's VPN mode is fine - it's a different VPN than Tailscale. However, iOS only allows ONE VPN at a time, so:
|
||||
|
||||
### Solution: Use Shadowrocket's VPN Mode (Disable Tailscale VPN)
|
||||
|
||||
Since iOS only allows one VPN:
|
||||
1. **Disable Tailscale's VPN mode** (but keep Tailscale app running for network access)
|
||||
2. **Enable Shadowrocket's VPN mode**
|
||||
3. Shadowrocket will route through Tailscale's network to reach server2
|
||||
|
||||
Wait - that won't work because Tailscale needs VPN mode to provide network access...
|
||||
|
||||
### Better Solution: Use Proxy Chain Feature
|
||||
|
||||
Looking at your screenshot, I see **"Proxy Chain"** option! This might be the solution:
|
||||
|
||||
1. Go to **Settings** → **Proxy Chain**
|
||||
2. Enable **"Enable Chain"** toggle
|
||||
3. Configure:
|
||||
- **Type:** HTTP
|
||||
- **Address:** `100.70.115.1`
|
||||
- **Port:** `7890`
|
||||
4. This might allow Shadowrocket to use Tailscale's network without VPN conflict
|
||||
|
||||
## Recommended Approach
|
||||
|
||||
Based on your screenshots, here's what to do:
|
||||
|
||||
### Method 1: Use Proxy Chain (Try This First)
|
||||
|
||||
1. **Keep Tailscale VPN ON**
|
||||
2. In Shadowrocket:
|
||||
- Go to **Settings** → **Proxy Chain**
|
||||
- Enable **"Enable Chain"**
|
||||
- Set Type: HTTP, Address: `100.70.115.1`, Port: `7890`
|
||||
3. In Shadowrocket **Home** tab:
|
||||
- Add a "Direct" or "Reject" server (or use existing)
|
||||
- Enable Shadowrocket
|
||||
4. Configure apps to use Shadowrocket's local proxy (127.0.0.1:80)
|
||||
|
||||
### Method 2: Use Shadowrocket VPN Mode (Disable Tailscale)
|
||||
|
||||
1. **Disable Tailscale VPN** (but app can stay installed)
|
||||
2. In Shadowrocket **Home** tab:
|
||||
- Add server2: `100.70.115.1:7890`
|
||||
- Enable Shadowrocket VPN mode
|
||||
3. Shadowrocket will handle routing
|
||||
|
||||
**Problem:** You'll lose direct Tailscale network access, but proxy will work.
|
||||
|
||||
### Method 3: Use System Proxy Settings
|
||||
|
||||
1. Keep Tailscale ON
|
||||
2. Don't use Shadowrocket VPN mode
|
||||
3. Configure system proxy:
|
||||
- Settings → Wi-Fi → ⓘ → HTTP Proxy → Manual
|
||||
- Server: `100.70.115.1`
|
||||
- Port: `7890`
|
||||
4. This works for some apps but not all
|
||||
|
||||
## Testing
|
||||
|
||||
After setup:
|
||||
1. Open Safari
|
||||
2. Visit: https://api.ipify.org
|
||||
3. Should show: `158.101.140.85` (server2's IP)
|
||||
|
||||
## Which Method Should You Use?
|
||||
|
||||
**Try Proxy Chain first** - it might allow both Tailscale and Shadowrocket to work together!
|
||||
|
||||
If that doesn't work, you'll need to choose:
|
||||
- **Tailscale VPN** = Direct network access, but no proxy
|
||||
- **Shadowrocket VPN** = Proxy works, but no direct Tailscale network
|
||||
|
||||
Let me know which method works for you!
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user