Initial commit: combine nas_tool, nas_webdav, sync-utils

This commit is contained in:
Gan, Jimmy
2026-02-18 22:59:43 +08:00
commit 526c6a5521
77 changed files with 7898 additions and 0 deletions
+153
View File
@@ -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!