Files
local_machine/docs/hotspot/ANDROID_VPN_TETHERING_ROUTING.md
2026-03-14 20:03:57 +03:00

193 lines
6.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🔧 Решение: Маршрутизация tethering трафика через VPN на Android
## ⚠️ Проблема
**Android по умолчанию НЕ маршрутизирует трафик tethering через VPN!**
Когда вы:
1. Включаете VPN на Android
2. Включаете USB модем/Wi-Fi hotspot
Трафик с подключенных устройств идет **напрямую через сотовую сеть**, минуя VPN туннель.
**Результат:** Оператор видит реальный трафик и может определить tethering.
---
## ✅ Решения
### Решение 1: Использование VPN на подключенном устройстве (РЕКОМЕНДУЕТСЯ)
**Вместо VPN на телефоне, используйте VPN на компьютере:**
1. **На телефоне:**
- Включите USB модем (БЕЗ VPN на телефоне)
- Или включите Wi-Fi hotspot
2. **На компьютере (Mac):**
- Подключитесь к USB модему
- Установите TTL = 65 (уже сделано)
- Включите VPN на компьютере (WireGuard)
**Преимущества:**
- ✅ Работает без root
- ✅ Весь трафик идет через VPN
- ✅ TTL модификация работает
- ✅ Оператор видит только VPN трафик
**Настройка WireGuard на Mac:**
```bash
# Установить WireGuard
brew install wireguard-tools
# Скопировать конфигурацию
sudo cp docs/hotspot/wg-ru.conf /etc/wireguard/wg0.conf
# Запустить VPN
sudo wg-quick up wg0
# Проверить IP
curl https://api.ipify.org
# Должен показать: 83.136.235.230
```
---
### Решение 2: Root + модификация системных настроек (для Android)
**Требует root доступ на Android:**
1. Установите **Magisk** (root)
2. Установите модуль **"VPN Hotspot"** или **"Tethering VPN"**
3. Эти модули форсируют маршрутизацию tethering через VPN
**Риски:**
- ⚠️ Требует root (риск безопасности)
- ⚠️ Может нарушить гарантию
- ⚠️ Не работает на всех устройствах
---
### Решение 3: Использование прокси на телефоне
**Настройка локального прокси на телефоне:**
1. Установите **Shadowsocks** или **V2Ray** на телефон
2. Настройте прокси на компьютере
3. Весь трафик пойдет через прокси (который использует VPN)
**Ограничения:**
- ⚠️ Работает только для приложений, поддерживающих прокси
- ⚠️ Не все приложения используют системный прокси
---
### Решение 4: Использование специализированных приложений
**Android приложения (требуют root или специальные настройки):**
1. **InviZible Pro** — может маршрутизировать tethering через VPN
2. **NetGuard** — firewall с VPN поддержкой
3. **Tasker** — автоматизация с root
---
## 🎯 РЕКОМЕНДУЕМОЕ РЕШЕНИЕ
### Вариант A: VPN на компьютере (БЕЗ ROOT)
**Архитектура:**
```
Телефон (USB модем) → Компьютер → VPN (WireGuard) → Интернет
TTL = 65 (уже настроено)
```
**Шаги:**
1. **На телефоне:**
- Включите USB модем (БЕЗ VPN на телефоне)
- Или включите Wi-Fi hotspot
2. **На компьютере:**
```bash
# TTL уже установлен (65)
# Теперь установите WireGuard на Mac
brew install wireguard-tools
# Скопировать конфигурацию
sudo cp docs/hotspot/wg-ru.conf /etc/wireguard/wg0.conf
# Запустить VPN
sudo wg-quick up wg0
# Проверить
curl https://api.ipify.org
# Должен показать: 83.136.235.230
```
3. **Проверка TTL:**
```bash
ping -c 1 8.8.8.8 | grep "ttl="
# Должно показать ttl=64 (правильно!)
```
**Результат:**
- ✅ Весь трафик идет через VPN
- ✅ TTL модифицирован (оператор не видит tethering)
- ✅ Не требует root на телефоне
---
### Вариант B: VPN на телефоне + Root (для продвинутых)
Если у вас есть root на Android:
1. Установите **Magisk**
2. Установите модуль **"VPN Hotspot"** или **"Tethering VPN"**
3. Включите VPN на телефоне
4. Включите USB модем
5. Трафик пойдет через VPN автоматически
---
## 📊 Сравнение решений
| Решение | Требует Root | Эффективность | Сложность |
|---------|--------------|---------------|-----------|
| VPN на компьютере | ❌ Нет | ✅✅✅ 95% | Низкая |
| VPN на телефоне + Root | ✅ Да | ✅✅✅ 98% | Высокая |
| Прокси на телефоне | ❌ Нет | ✅✅ 80% | Средняя |
| Спец. приложения | ⚠️ Иногда | ✅✅ 85% | Средняя |
---
## 🔍 Проверка работы
После настройки проверьте:
```bash
# 1. IP должен быть VPN сервера
curl https://api.ipify.org
# Должен показать: 83.136.235.230
# 2. TTL должен быть 64
ping -c 1 8.8.8.8 | grep "ttl="
# Должно показать: ttl=64
# 3. DNS должен быть от VPN
curl https://dnsleaktest.com/
# DNS серверы должны быть от VPN, не от оператора
```
---
## ⚠️ Важно
**Проблема:** Android не маршрутизирует tethering через VPN по умолчанию.
**Решение:** Используйте VPN на компьютере вместо VPN на телефоне, или используйте root для форсирования маршрутизации.
**Рекомендация:** Вариант A (VPN на компьютере) — самое простое и эффективное решение без root.